Version history¶
Releases¶
v0.2.0 (2019-03-23)¶
This release adds more field types and further improves on existing code. It also extends the documentation significantly.
- Added Destructify GUI, contributed by mvdnes.
- Added
StructureOptions.encoding
- Added
StructureOptions.alignment
,Field.offset
andField.skip
, implemented byField.seek_start
- Added
Field.lazy
- Added
Field.decoder
,Field.encoder
andStructure.initialize()
- Added
BytesField.terminator_handler
- Added
ConditionalField.fallback
- Added
ArrayField.until
- New field
BytesField
, merging the features ofFixedLengthField
andTerminatedField
. These fields will remain as subclasses. - New field:
ConstantField
- New field:
SwitchField
- New field:
VariableLengthIntegerField
- Merged
FixedLengthStringField
andTerminatedStringField
intoStringField
- Removed hook functions
Field.from_bytes()
andField.to_bytes()
- Removed all byte-order specific subclasses from
StructField
. - Add option to
ParsingContext
to capture the raw bytes, available inParsingContext.fields
- Add
ParsingContext.fields
for information about the parsing structure. - Added
ParsingContext.f
for raw attribute access; this is now passed to lambdas. - Added
this
for quick construction of lambdas Substream
is now a wrapper instead of a full-fetched BufferedReader- Numerous bugfixes for consistent building of fields.
v0.1.0 (2019-02-17)¶
This release features several new field types, and bugfixes from the previous release. Also some backwards-incompatible changes were made.
- Added
StructureOptions.byte_order
- Added
Structure.as_cstruct()
- Added
Structure.__len__()
- Added
Structure.full_name()
FieldContext
is nowParsingContext
- New field:
ConditionalField
- New field:
EnumField
- New field:
BitField
- New field:
IntegerField
, renamed struct-based field toIntField
- New field:
FixedLengthStringField
- New field:
TerminatedStringField
- Support strict, negative lengths and padding in
structify.fields.FixedLengthField
- Support length in
structify.fields.ArrayField
, renamedArrayField.size
toArrayField.count
- Support step
structify.fields.TerminatedField
- Fixed
structify.fields.StructureField
to usestructify.Substream
- Fixed double-closing a
structify.Substream
v0.0.1 (2018-04-07)¶
Initial release.