# What changed in pika

> 7 changes in pika 1 from its official release notes, upgrade guides and advisories: 2 breaking, 1 new APIs and options. Each one cited. Sources checked 2026-10-27. HTML: https://unstale.sh/pypi/pika/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## pika 1

### Breaking changes

- The compatibility helper pika.compat.dictkeys() was removed. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)
- The code now supports Python 3.7 and later. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)

### New APIs and options

- BlockingChannel.consume() lets callers specify their own consumer_tag. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)

### Fixes and other changes

- Fixed BlockingIOError raised by _read_interrupt on Windows. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)
- Pika now advertises the exchange_exchange_bindings capability. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)
- Field table type decoding now matches the RabbitMQ wire format. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)
- Fixed a TypeError in select_connection. (1.4.0) — [release notes](https://github.com/pika/pika/releases/tag/1.4.0)
