Releases: etingof/pyasn1
Release 0.3.5
This is mostly a bug fix release. Most important fixes include:
- Explicit tag encoding optimized to avoid unnecessary copying
- End-of-octets sentinel encoding optimized
- Refactored ASN.1 codecs properties to silently enforce proper length and chunk size encoding modes
- Fixed DER encoder to always produce primitive encoding
- Fixed crash at SequenceOf native decoder
- Fixed a couple of crashes when debug mode is enabled
More changes noted in the CHANGELOG.
Release 0.3.4
This is mostly a bug fix release. Most important fixes include:
- Added missing component-less SEQUENCE/SET objects dict duck-typing support
- Fixed crash at SEQUENCE and SEQUENCE OF CER encoder when running in schemaless mode
- Fixed Character types instantiation from OctetString type -- double unicode decoding may have scrambled the data
More changes noted in the CHANGELOG.
Release 0.3.3
This is a bugfix release addressing a handful of regressions introduced in 0.3.2.
Most importantly:
- Fixed exponential index size growth bug when building ambiguous NamedTypes tree
- Fixed constructed types decoding failure at BER codec if running in unguided mode
- Fixed SetOf ordering at CER/DER encoder
More changes noted in the CHANGELOG.
Release 0.3.2
This is a bugfix release addressing a handful of regressions introduced in 0.3.1.
Most importantly:
- Fixed SequenceOf/SetOf types initialization syntax to remain backward compatible with pyasn1 0.2.*
- Rectified thread safety issues by moving lazy, run-time computation into object initializer.
- Fixed GeneralizedTime/UTCTime CER/DER codecs to actually get invoked
- Fixed DER/CER encoders handling optional SEQUENCE/SET fields containing nested SEQUENCE/SET with optional fields.
More changes noted in the CHANGELOG.
Release 0.3.1
The main theme for this release is API and performance improvements.
Be aware that by way of usability improvements, a some backward compatibilities were introduced. For the details please refer to the CHANGELOG.
The highlights:
- ASN.1 types
__init__()
, .clone()
and.subtype()
signatures refactored to expect keyword arguments - Many "getters" of ASN.1 types refactored into Python properties
SetOf
/SequenceOf
ASN.1 types better mimic Pythonlist
- The
NamedValues
implementation refactored to mimic Pythondict
- The
GeneralizedTime
andUTCTime
types now support to/from Pythondatetime
object conversion - Many minor performance improvements and bug fixes
More changes noted in the CHANGELOG.
Release 0.2.3
This is a performance improvement release:
BitString
type implementation rebased onto Pythonint
to behave like an integer and improve serialization performance (100x times!).Integer
codecs reimplemented to base on Python's built-in integer serialization codecs to improve serialization performance (~40%).- Decoding performance of
Set
andChoice
types improved by caching once computed tags maps. - ASN.1 character types refactored to duck-type unicode strings thus making them more convenient in text processing context.
- Documentation updated at many places.
More changes noted in the CHANGELOG.
Release 0.2.2
This release fixes a regression in Enumerated ASN.1 type subtyping procedure.
Besides that, canonical decoders were hardened to reject non-canonical serialization on input.
More details can be learned from the change log
Release 0.2.1
This is a bug fix and usability improvement release:
- Conversion between Python built-in types and pyasn1 objects implemented
- Python types emulation improved to make pyasn1 types look more like their Python counterparts
- BitString type usability improved in many ways
- Sphinx documentation added
More changes noted in the CHANGELOG.
The upcoming release is to be focused on codecs performance improvement.