Changelog
oser-1.1.11:
oser-1.3.0:
- add support for rich_comparison
- add types for modbus (see modbus)
- add
format
parameter to all integer types and CRCs
- default format for CRCs is
"hex"
- add
oser.BitMap
oser.ByteStruct
and oser.BitStruct
can be converted to dict
using
oser.ByteStruct.to_dict()
and oser.BitStruct.to_dict()
oser.ByteStruct
and oser.BitStruct
can be loaded from dict
using
oser.ByteStruct.from_dict()
and oser.BitStruct.from_dict()
root()
now calls up()
and thus traversing a hierarchy can be stopped if needed by overwriting
up()
somewhere returning None
- a
KeyError
in oser.Switch()
now leads to a oser.DecodeException
oser.Flag
and oser.PaddingFlag
cast all values to bool
- add support for bytes and strings for
oser.Padding
, oser.String
, oser.Data
and
oser.RegularExpressionMatch
- improve output of introspection
- improve some docstrings
- update to
hlm-1.0.2
oser-1.2.5:
- KeyError in
oser.Switch
leads to a readable DecodeException
oser-1.2.4:
- fix deletion of members in structs
oser-1.2.3:
- fix arithmetics with struct members
oser-1.2.1:
- fix
copy.deepcopy(object)
to work on unencodable objects
oser-1.2.0:
- add support for Python 3.7
- improve bit-type encoding and decoding performance
by orders of magnitude
- using acceleration allows to easily improve
encoding and decoding performance
- oser nodes can be pickled (used with
pickle
)
- add
EncodeException
and DecodeException
to make exceptions
more obvious
oser.String
and oser.Data
check parameters and raise exceptions
- improve oser version output
- improve internal build process with Docker
- update to hlm-0.17.0
oser-1.1.10:
- build wheels for Python 3.7
oser-1.1.9:
- fix arithmetics with struct members
oser-1.1.5:
- add missing wrapper for the Fuzzing feature
- update to hlm-0.12.0 to fix the bug that some usb-sticks changed the host id
- update to protobuf-3.6.0
- wheels for Linux are delivered as manylinux-wheels and can be run on most linux distributions
- add
hst
(HILSTER Support Tool) as a dependency
oser-1.1.4:
- fixed context data generation
oser-1.1.3:
- fixed comparison of oser instances for equality
- improve exceptions in conditional elements
oser-1.1.2:
- fixed a bug in
oser.Switch
when using oser.Nothing
as
the default value
- AttributeErrors in conditional elements are more obvious
oser-1.1.1:
- fixed bugs concerning size calculation when using conditional elements
and bit-types
oser-1.0.6:
- fixed context data generation
oser-1.0.5:
- fixed comparison of oser instances for equality
- improve exceptions in conditional elements
oser-1.0.3:
- fixed bugs concerning size calculation when using conditional elements
and bit-types
oser-1.0.2:
- fixed a bug with conditional fields within an
oser.BitStruct
oser.Padding.get()
returns the value and not a string
- fixed a bug in
oser.Switch._items()
, oser.IfElse._items()
and oser.If._items()
oser.Nothing
returns None
instead of an empty string
oser-1.0.1:
oser.ByteStruct.size()
calculation was wrong for embedded
oser.BitStruct
members.
- when overwriting internal methods with fields an exception is raised
- fixed the context data in
oser.Array
and
oser.RepeatUntil
- added
oser.Switch._items()
,
oser.IfElse._items()
,
oser.If._items()
,
oser.Array._items()
and
oser.RepeatUntil._items()
that generates name-item tuples
- added
oser.Enum.get_value()
to get the current raw value
- fixed some docstrings
- updated to
protobuf~=3.1.0
- updated to
hlm~=0.10.3
oser-1.0.0:
- added
oser.If
- added
oser.Nothing
- added
oser.RepeatUntil
- added
oser.Data
- added Python 3.5 support
- support for Python 2.7 and Python 3.5 using the same code base
- docs are included in wheel (run
oser docs
from commandline)
- updated hlm to use the new license version (enabling features, banners, etc.)
- simplified import strings
- improved continuous integration for oser
- implemented continuous delivery for oser updates
- added pure python wrappers where needed
- better pep8 compatibility
oser.Switch.get()
and oser.IfElse.get()
return the result of
.get()
applied on the currently selected object
oser.Switch.get_current()
and oser.IfElse.get_current()
can be used
to retrieve the currently selected object
- added
oser.__version_info__
(tuple) to compare the version against a required one
- improved docs
- using hilster_theme-0.9 in docs