Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python.announce > #3358 > unrolled thread
| Started by | Dan Gass <dan.gass@gmail.com> |
|---|---|
| First post | 2020-03-31 19:47 -0500 |
| Last post | 2020-03-31 19:47 -0500 |
| Articles | 1 — 1 participant |
Back to article view | Back to comp.lang.python.announce
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[plum-py 0.3.0] Pack/Unpack Memory Dan Gass <dan.gass@gmail.com> - 2020-03-31 19:47 -0500
| From | Dan Gass <dan.gass@gmail.com> |
|---|---|
| Date | 2020-03-31 19:47 -0500 |
| Subject | [plum-py 0.3.0] Pack/Unpack Memory |
| Message-ID | <158570234086.8281.python-announce-list@python.org> |
I am please to announce the availability of beta release 0.3.0 of the
"plum-py" package.
This package provides classes and utility functions to efficiently pack and
unpack bytes similar to what the standard library `struct` module offers.
This package expands significantly on that capability with much more
powerful and convenient access and control of bytes within a buffer
(including handling variable size/type relationships within the buffer
data).
The package provides a large number of fundamental types (e.g.
numbers, structures, arrays, etc.) for specifying buffer data structure.
Each type conforms to a "plug-and-play" architecture facilitating the
ability to be combined in any way, including deeply nested structures of
arbitrary type. You may also write your own custom types that conform to
the "plug-and-play" architecture API and use them in combination with any
of the fundamental types provided.
Docs: https://plum-py.readthedocs.io/en/latest/index.html
PyPi: https://pypi.org/project/plum-py/
Repo: https://gitlab.com/dangass/plum
License: MIT
With Regards,
Dan Gass
(dan.gass at gmail)
Change List
=========
- Add ``plum.items`` module for collections of typed items for data
packing applications where the item structure is not predefined.
- Add support to ``ByteArray`` to restrict instances to a specific size
during unpacking (add ``nbytes`` parameter to ``__unpack__``).
- Change ``plum.structure.Structure`` behaviors as follows:
- Remove support for accepting typed items (use ``plum.items``
instead).
- Block subclasses from redefining members when inheriting from a
class with members already defined.
- Generate ``__init__`` method only when not overridden (previously
it generated ``__init__`` only if an override was not present in the new
structure class, now it also checks the base classes).
- Facilitate subclassing structure base class without defining
members as well as subclassing a structure that has defined members.
- Eliminate restrictions on mutating structures (e.g. ``append()``,
``extend()``, etc.)
- Simplifications:
- Remove ``cls`` argument in ``getbytes()`` function (backward
incompatible change).
- Eliminate need to set ``dump.cls`` in ``__pack__`` and
``__unpack__`` methods (it is now the responsibility of those calling
``add_record()`` dump method).
Back to top | Article view | comp.lang.python.announce
csiph-web