amqp 2.0.0

Communicate with any AMQP compliant server


This extension can communicate with any AMQP spec 0-9-1 compatible server, such as RabbitMQ, OpenAMQP and Qpid, giving you the ability to create and delete exchanges and queues, as well as publish to any exchange and consume from any queue.

License: PHP License

Changes

Notable changes:

- Fix various API oddities, see https://github.com/php-amqp/php-amqp/tree/v2.0.0/UPGRADING.md for details
- Remove support for PHP 5
- Various bug fixes

💡Most use-cases should not require much changes from 1.x but check out
https://github.com/php-amqp/php-amqp/tree/v2.0.0/UPGRADING.md for a detailed upgrade guide


All changes (chronologically):

- CentOS development environment (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/467)
- Ubuntu development containers (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/466)
- Test against upcoming PHP 8.3 (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/465)
- Make test host configurable (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/464)
- Cosmetics on type functions (Lars Strojny ) (https://github.com/php-amqp/php-amqp/commit/350202f)
- Configurable serialization/deserialization depth (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/463)
- Allow bitmask flags arguments to be nullable where previously AMQP_NOPARAM/zero was required (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/462)
- Fix generated commit URLs in changelogs (Lars Strojny ) (https://github.com/php-amqp/php-amqp/commit/4ee6159)
- Handle nested AMQP value serialization/deserialization (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/461)
- Document lack of reliability of AMQPConnection::isConnected (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/306)
- Prevent reuse of channel ID of broken channels (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/460)
- Gracefully handle zero as a heartbeat value (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/459)
- Build with the clang compiler on CI (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/457)
- Include stdint.h for PHP >= 8.0 on Windows (Jan Ehrhardt) (https://github.com/php-amqp/php-amqp/issues/456)
- Fix segfault in setPort (Remi Collet ) (https://github.com/php-amqp/php-amqp/issues/455)
- Document BC changes (Lars Strojny )
- Document pseudo-bool method changes (Lars Strojny )
- Fix mangled header on MacOS (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/60)
- Validate argument parsing, add AMQPExchange::removeArgument() and AMQPQueue::removeArgument() (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/452)
- Skip SSL tests if certificates are missing (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/450)
- Check coding style and formatting of stub files (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/447)
- Parallelize test execution (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/444)
- Deterministic configuration for PHP CLI (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/443)
- Fix tag creation during release management (Lars Strojny )
- Move test-report.sh into infra (Lars Strojny )
- The big fat API renovation (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/437)
- Handle alpha/beta stability correctly (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/5546436)
- Expose better version information (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/438)
- Auto-format the codebase (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/436)
- More consistent return types for AMQPEnvelope (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/435)
- Update stubs (Lars Strojny )
- Fix parameter error handling in AMQPConnection and AMQPChannel (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/434)
- Increase credentials and identifier limits (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/433)
- Reliably clear consumer tag on AMQPQueue::cancel (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/432)
- Ignore failures on experimental builds (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/25)
- Update branch name (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/7)
- Bump shivammathur/setup-php from 2.25.3 to 2.25.4 (dependabot[bot]) (https://github.com/php-amqp/php-amqp/issues/431)
- PHP 8.2 refactorings (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/430)
- Fix php version check for static building (Misha Kulakovsky ) (https://github.com/php-amqp/php-amqp/issues/425)
- Fix stub exception class (closes #427) (Lars Strojny )
- Document custom connection name in stubs (Lars Strojny ) (https://github.com/php-amqp/php-amqp/issues/700000)
- Expose Delivery Mode through constants (Flávio Heleno ) (https://github.com/php-amqp/php-amqp/issues/420)
- Fix deprecation issue in PHP 8.1 for $consumerTag argument to AMQPQueue::consume() method (Liviu-Ionut Iosif) (https://github.com/php-amqp/php-amqp/issues/421)
- Fix: Deprecated: Creation of dynamic property (8.2) (Remi Collet ) (https://github.com/php-amqp/php-amqp/issues/418)
- Fix AMQPEnvelope::getDeliveryTag() return type (Flávio Heleno ) (https://github.com/php-amqp/php-amqp/issues/415)
- Fix ack/nack/reject param documentation (Flávio Heleno ) (https://github.com/php-amqp/php-amqp/issues/414)
- Mention time units in all timeout-related methods (Andrii Dembitskyi ) (https://github.com/php-amqp/php-amqp/issues/410)

For a complete list of changes see:
https://github.com/php-amqp/php-amqp/compare/v1.11.0...v2.0.0