| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: python313-pamqp | Distribution: openSUSE Tumbleweed |
| Version: 4.0.0 | Vendor: openSUSE |
| Release: 1.1 | Build date: Fri Apr 10 20:33:23 2026 |
| Group: Development/Languages/Python | Build host: reproducible |
| Size: 366773 | Source RPM: python-pamqp-4.0.0-1.1.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://github.com/gmr/pamqp | |
| Summary: Pure-python AMQP 0-9-1 frame encoder and decoder | |
pamqp is a pure-python AMQP 0-9-1 frame encoder and decoder. pamqp is not a end-user client library for talking to RabbitMQ but rather is used by client libraries for marshaling and unmarshaling AMQP frames. AMQP class/method command class mappings can be found in the pamqp.specification module while actual frame encoding and encoding should be run through the pamqp.frame module.
BSD-3-Clause
* Fri Apr 10 2026 Dirk Müller <dmueller@suse.com>
- update to 4.0.0:
* **Python 3.11+ required** (previously 3.7+)
* Removed explicit `__annotations__` class variable from all
command classes and base classes. Python manages
`__annotations__` automatically; the explicit declarations
conflicted with `object.__annotations__`. Code that
introspected `MyCommand.__annotations__` directly may need
updating.
* **Fix `Basic.Reject(requeue=False)` being coerced to `True`**
— The codegen emitted `self.requeue = requeue or True` which
made it impossible to reject without requeuing. Now uses a
proper ternary to preserve explicit `False`.
* **Fix `Exchange.Declare(internal=True)` raising
`ValueError`** — The `internal` flag was incorrectly treated
as a deprecated field. It is a legitimate AMQP flag used for
internal exchanges and RabbitMQ tracing.
* **Fix encoding of negative byte-range integers in field
tables** (#45) — `table_integer` routed values in `-128..127`
to `octet()` which uses unsigned byte format (`struct 'B'`),
causing `struct.error` for negative values like `-1`. Now
uses signed byte format (`struct '>b'`). This affected
`x-priority`, `x-delivery-limit`, and any other table
argument using small negative integers.
* **Fix codegen domain regex for exchange/queue names** — The
codegen now extends the AMQP spec regex to include characters
RabbitMQ allows in practice (`@`, `#`, `,`, `/`, `+`, space),
and fixes a bug where the trailing-comma replacement
corrupted regex patterns containing commas.
* **Full type checking with mypy and basedpyright** — Both type
checkers now pass cleanly and are enforced in pre-commit
hooks and CI.
* **`typing.ClassVar` annotations** on all class-level
attributes across base classes, command classes, body,
header, and heartbeat modules. Codegen updated to emit these
correctly.
* **Explicit submodule imports in `__init__.py`** to satisfy
basedpyright's `reportUnsupportedDunderAll` check.
* **Boolean default assignment fix in codegen** — Boolean
fields with defaults now use ternary expressions (`x if x is
not None else default`) instead of `x or default`, which
correctly preserves `False` values.
* **Modernized project tooling** — hatchling build backend, uv
for dependency management, ruff for linting/formatting, pre-
commit hooks
* **Migrated documentation from Sphinx/RST to MkDocs/Markdown**
with mkdocs-material theme and mkdocstrings for API reference
* **Converted README from RST to Markdown** with updated
badges, features, and "Used By" section
* **Updated CI** — GitHub Actions with Python 3.11-3.14 matrix,
uv-based workflow, mypy and basedpyright checks
* **Updated CONTRIBUTING.md** with current uv/ruff/pre-commit
workflow
* Mon Jun 02 2025 Markéta Machová <mmachova@suse.com>
- Convert to pip-based build
* Sat Jan 20 2024 Dirk Müller <dmueller@suse.com>
- update to 3.3.0:
* Allow space character in exchange and queue names
* Convert AMQP timestamp property to handle milliseconds
* Fri Oct 28 2022 Yogalakshmi Arunachalam <yarunachalam@suse.com>
- Update to 3.2.1
Fix line length issue in comment
* Tue Oct 04 2022 Yogalakshmi Arunachalam <yarunachalam@suse.com>
- Update to 3.2.0 (2022-06-27)
* Allow long-str to fall back to bytes in case of UnicodeDecodeError (AMQP 1.0 interop) (#40 - dmaone)
* DOMAIN_REGEX enhanced to fulfill tag uri scheme for exchange and queue names. (#42 - deschmih)
- Update to 3.1.0 (2022-01-10)
* Add implicit UTC timezone behavior to the AMQP Basic.Properties timestamp value. (#37 - RemiCardona)
* Add support for short-short-int and short-short-uint. (#33 - michal800106)
* Tue Feb 23 2021 John Vandenberg <jayvdb@gmail.com>
- Disabled Python 2 builds
- Update to v3.0.1
* See https://github.com/gmr/pamqp/blob/master/docs/changelog.rst
* Tue Jun 09 2020 Marketa Calabkova <mcalabkova@suse.com>
- replace nose with pytest
* Thu Apr 23 2020 Tomáš Chvátal <tchvatal@suse.com>
- Fix build without python2
* Fri Apr 26 2019 pgajdos@suse.com
- do not require unittest2 for testing with python3
* Fri Apr 26 2019 pgajdos@suse.com
- version update to 2.3.0
- Add :py:func:`pamqp.encode.support_deprecated_rabbitmq` function
to limit data types available when encoding field-tables for older
RabbitMQ versions.
- Change :py:meth:`pamqp.encode.timestamp` to allow for numeric/epoch
timestamps (#14 - `mosquito <https://github.com/mosquito>`_)
- Change :py:meth:`pamqp.frame.frame_parts` to a public method
(#15 - `mosquito <https://github.com/mosquito>`_)
- Cleanup of code to pass configured flake8 tests
- Add support for 8-bit unsigned integer values in
:py:meth:`pamqp.encode.table_integer`
/usr/lib/python3.13/site-packages/pamqp /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/INSTALLER /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/METADATA /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/RECORD /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/REQUESTED /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/WHEEL /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/licenses /usr/lib/python3.13/site-packages/pamqp-4.0.0.dist-info/licenses/LICENSE /usr/lib/python3.13/site-packages/pamqp/__init__.py /usr/lib/python3.13/site-packages/pamqp/__pycache__ /usr/lib/python3.13/site-packages/pamqp/__pycache__/__init__.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/base.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/base.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/body.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/body.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/commands.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/commands.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/common.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/common.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/constants.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/constants.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/decode.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/decode.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/encode.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/encode.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/exceptions.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/exceptions.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/frame.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/frame.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/header.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/header.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/heartbeat.cpython-313.opt-1.pyc /usr/lib/python3.13/site-packages/pamqp/__pycache__/heartbeat.cpython-313.pyc /usr/lib/python3.13/site-packages/pamqp/base.py /usr/lib/python3.13/site-packages/pamqp/body.py /usr/lib/python3.13/site-packages/pamqp/commands.py /usr/lib/python3.13/site-packages/pamqp/common.py /usr/lib/python3.13/site-packages/pamqp/constants.py /usr/lib/python3.13/site-packages/pamqp/decode.py /usr/lib/python3.13/site-packages/pamqp/encode.py /usr/lib/python3.13/site-packages/pamqp/exceptions.py /usr/lib/python3.13/site-packages/pamqp/frame.py /usr/lib/python3.13/site-packages/pamqp/header.py /usr/lib/python3.13/site-packages/pamqp/heartbeat.py /usr/lib/python3.13/site-packages/pamqp/py.typed /usr/share/doc/packages/python313-pamqp /usr/share/doc/packages/python313-pamqp/README.md /usr/share/licenses/python313-pamqp /usr/share/licenses/python313-pamqp/LICENSE
Generated by rpm2html 1.8.1
Fabrice Bellet, Tue Apr 14 23:06:30 2026