Update dependency pyasn1 to v0.5.0
This MR contains the following updates:
Package | Update | Change |
---|---|---|
pyasn1 (changelog) | minor |
==0.4.4 -> ==0.5.0
|
⚠ Dependency Lookup Warnings ⚠
Warnings were logged while processing this repo. Please check the logs for more information.
Release Notes
pyasn1/pyasn1
v0.5.0
-
Change
RealEncoder.supportIndefLenMode
type to a boolean pr #21 -
Fix CI for py39 test environment pr #25
-
Replace all snmplabs.com links issue #4
-
Use correct SPDX identifier for the license pr #16
-
Re-add
tagMap
andtypeMap
module level attributes to all encoder and decoder modules. They are aliases forTAG_MAP
andTYPE_MAP
, issue #9. -
Restore API for passing for
tagMap
andtypeMap
arguments toEncoder
andDecoder
classes by name and position, issue #12. -
Re-add
tagMap
andtypeMap
module level attributes to all encoder and decoder modules. They are aliases forTAG_MAP
andTYPE_MAP
, issue #9. -
Restore API for passing for
tagMap
andtypeMap
arguments toEncoder
andDecoder
classes by name and position, -
Make BER/CER/DER decoders streaming and suspendible
The goal of this change is to make the decoder yielding on input data starvation and resuming from where it stopped whenever the caller decides to try again (hopefully making sure that some more input becomes available).
This change makes it possible for the decoder to operate on streams of data (meaning that the entire DER blob might not be immediately available on input).
On top of that, the decoder yields partially reconstructed ASN.1 object on input starvation making it possible for the caller to inspect what has been decoded so far and possibly consume partial ASN.1 data.
All these new feature are natively available through
StreamingDecoder
class. Previously published API is implemented as a thin wrapper on top of that ensuring backward compatibility. -
Added support for Python 3.8, 3.9, 3.10, 3.11
-
Removed support for EOL Pythons 2.4, 2.5, 2.6, 3.2, 3.3, 3.4, 3.5
-
Added support for PyPy 3.7, 3.8, 3.9
-
Modernized packaging and testing. pyasn1 now uses
setup.cfg
,pyproject.toml
, build, and GitHub Actions. -
PyPI package ownership for
pyasn1
andpyasn1-module
has been transfered to Christian Heimes and Simon Pichugin in PyPI support ticket #2090. -
The upstream repositories for
pyasn1
andpyasn1-modules
are now in the GitHub organization https://github.com/pyasn1/.
v0.4.8
- Added ability of combining
SingleValueConstraint
andPermittedAlphabetConstraint
objects into one for proper modelingFROM ... EXCEPT ...
ASN.1 clause.
v0.4.7
- Added
isInconsistent
property to all constructed types. This property conceptually replacesverifySizeSpec
method to serve a more general purpose e.g. ensuring all required fields are in a good shape. By default this check invokes subtype constraints verification and is run by codecs on value de/serialisation. - Deprecate
subtypeSpec
attributes and keyword argument. It is now recommended to passValueSizeConstraint
, as well as all other constraints, tosubtypeSpec
. - Fixed a design bug in a way of how the items assigned to constructed
types are verified. Now if
Asn1Type
-based object is assigned, its compatibility is verified based on having all tags and constraint objects as the type in field definition. When a bare Python value is assigned, then field type object is cloned and initialized with the bare value (constraints verificaton would run at this moment). - Added
WithComponentsConstraint
along with relatedComponentPresentConstraint
andComponentAbsentConstraint
classes to be used withSequence
/Set
types representingSET ... WITH COMPONENTS ...
like ASN.1 constructs.
v0.4.6
- Added previously missing
SET OF ANY
construct encoding/decoding support. - Added
omitEmptyOptionals
option which is respected bySequence
andSet
encoders. WhenomitEmptyOptionals
is set toTrue
, empty initialized optional components are not encoded. Default isFalse
. - New elements to
SequenceOf
/SetOf
objects can now be added at any position - the requirement for the new elements to reside at the end of the existing ones (i.e. s[len(s)] = 123) is removed. - List-like slicing support added to
SequenceOf
/SetOf
objects. - Removed default initializer from
SequenceOf
/SetOf
types to ensure consistent behaviour with the rest of ASN.1 types. Before this change,SequenceOf
/SetOf
instances immediately become value objects behaving like an empty list. With this change,SequenceOf
/SetOf
objects remain schema objects unless a component is added or.clear()
is called. This change can potentially cause incompatibilities with existing pyasn1 objects which assumeSequenceOf
/SetOf
instances are value objects right upon instantiation. The behaviour ofSequence
/Set
types depends on thecomponentType
initializer: if oncomponentType
is given, the behaviour is the same asSequenceOf
/SetOf
have. IFcomponentType
is given, but neither optional nor defaulted components are present, the created instance remains schema object, If, however, either optional or defaulted component isi present, the created instance immediately becomes a value object. - Added
.reset()
method to all constructed types to turn value object into a schema object. - Added
PyAsn1UnicodeDecodeError
/PyAsn1UnicodeDecodeError
exceptions to help the caller treating unicode errors happening internally to pyasn1 at the upper layers. - Added support for subseconds CER/DER encoding edge cases in
GeneralizedTime
codec. - Fixed 3-digit fractional seconds value CER/DER encoding of
GeneralizedTime
. - Fixed
AnyDecoder
to accept possibleTagMap
asasn1Spec
to make dumping raw value operational
v0.4.5
- Debug logging refactored for more efficiency when disabled and for more functionality when in use. Specifically, the global LOG object can easily be used from any function/method, not just from codec main loop as it used to be.
- More debug logging added to BER family of codecs to ease encoding problems troubleshooting.
- Copyright notice extended to the year 2019
- Fixed defaulted constructed SEQUENCE component initialization.
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.