Aiocoap

Latest version: v0.4.7

Safety actively analyzes 621854 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.4.7

-------------

Compatibility
~~~~~~~~~~~~~

* Group OSCORE updated to -17.

The setup of group contexts requires altered parameters, as the descriptions
of these contexts changed in the underlying specification.

Minor fixes
~~~~~~~~~~~

* Several minor documentation fixes.

0.4.6alpha3

--------------------

Bug fixes
~~~~~~~~~

* Include vendored modules in sdist and wheels.

0.4.6alpha2

--------------------

Bug fixes
~~~~~~~~~

* ``request.get_request_uri()`` in a server handler now reports the URI with
the correct path.
* Broken links fixed in documentation.

Meta
~~~~

* Copyright statements updated, now complying with reuse.software specs.
* LinkHeader dependency moved from unmaintained PyPI package into vendored copy
to avoid trouble with missing .whl (wheel) files.

0.4.6alpha1

--------------------

CLI changes
~~~~~~~~~~~

* aiocoap-client now uses CBOR Diagnostic Notation both for pretty-printed
output and when adjusting a ``--payload`` argument to a CBOR
``--content-format``. This should be a compatible change for users who
previously used JSON for input, but needs adjustments for users who used
Python literals.

* CBOR sequences are now recognized for pretty-printing, and accepted (wrapped
in an array) for ``--payload`` format adjustment.

New features
~~~~~~~~~~~~

* Initial support for pyodide (eg. in Jupyter):

* The websockets client transport is made available through the browser's
APIs.
* Messages and other elements are available for HTML pretty-printing.

* Messages now have a ``.transport_tuning`` property, which may be overwritten
to influence transmission characteristics.

Bug fixes
~~~~~~~~~

* BERT blocks are now extracted correctly.
* oscore: Constant with typo renamed (``COSE_COUNTERSI(NG→GN)ATURE0``).

Deprecations
~~~~~~~~~~~~

* numbers.constants: Transport related parameters are deprecated, use
``.transport_tuning`` (see above).

0.4.5

-------------

Behavioral changes
~~~~~~~~~~~~~~~~~~

* RSTs are not sent on unrecognized responses any more unless the received
message was a CON; the previous behavior was violating the specification.

Deprecations
~~~~~~~~~~~~

* UNSUPPORTED_MEDIA_TYPE is now formally deprecated, use
UNSUPPORTED_CONTENT_FORMAT instead.

Minor enhancements
~~~~~~~~~~~~~~~~~~

* Fix tests for Python 3.11.
* Lower log level of "but could not match it to a running exchange" from warning to info.
* Shorten the string representation of message types (to "CON", "ACK" etc.)

0.4.4

-------------

New features
~~~~~~~~~~~~

* Content-Format / Accept option now use a dedicated ContentFormat type.

Applications should be unaffected as the type is still derived from int.

* Non-traditional responses are now experimentally supported by implementing
``.render_to_pipe()`` on a resource.

Deprecations
~~~~~~~~~~~~

* Building custom resources by inheriting from ``interfaces.Resource`` /
``interfaces.ObservableResource`` and implementing ``.render()`` etc. is
deprecated. Instead, inherit from ``resource.Resource`` (recommended), or
implement ``.render_to_pipe()`` (eg. when implementing a proxy).

* numbers.media_type and media_type_rev: Use the ContentFormat type's
constructor and accessors instead.

Tools
~~~~~

* aiocoap-fileserver now has optiojnal write support, and ETag and If-* option
handling.

* aiocoap-client now assembles and displays the Location-* options of
responses.

* aiocoap-rd now has dedicated logging independent of aiocoap's.

* Various small fixes to aiocoap-rd.

* Help and error texts were improved.

Minor enhancements
~~~~~~~~~~~~~~~~~~

* Documentation now uses ``await`` idiom, as it is available even inside the
asyncio REPL.

* The default cut-off for block-wise fragmentation was increased from 1024 to
1124 bytes. This allows OSCORE to use the full inner block-wise size without
inadvertently causing outer fragmentation, while still fitting within the
IPv6 minimum MTU.

* Connection shutdown for TCP and WebSockets has been implemented, they now
send Release messages and wait for the peer to close the connection.

* Type annotations are now used more widely.

* Library shutdown works more cleanly by not relying on the presence of the
async loop.

* OSCORE contexts now only access the disk when necessary.

* OSCORE now supports inner block-wise transfer and observations.

* WebSocket servers can now pick an ephemeral port (when binding to port 0).

* Tasks created by the library are now named for easier debugging.

* Bugs fixed around handling of IP literals in proxies.

Internal refactoring
~~~~~~~~~~~~~~~~~~~~

* Pipes (channels for asynchronously producing resposnes, previously called
PlumbingResponse) are now used also for resource rendering. Block-wise and
observation handling could thus be moved away from the core protocol and into
the resource implementations.

* Exception chaining was started to be reworked into explicit re-raises.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.