diff options
author | adam <adam@pkgsrc.org> | 2017-07-27 18:36:10 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2017-07-27 18:36:10 +0000 |
commit | c6c788ea26c7e8423e82f91cbba82ce98fb7b449 (patch) | |
tree | 0fddc85a52d354ab52e420eb3569aa0d51c1f89b /security/py-asn1 | |
parent | 87dc3f80e3515ee0f8de9b852bc9498e269eaeb9 (diff) | |
download | pkgsrc-c6c788ea26c7e8423e82f91cbba82ce98fb7b449.tar.gz |
Revision 0.3.1:
- ASN.1 types __init__(), .clone() and .subtype() signatures
refactored into keyword arguments to simplify their signatures.
- ASN.1 types initialization refactored to minimize the use of
relatively expensive isNoValue() call
- Lazily pre-populate list of values of Sequence/Set/Choice types
- NamedTypes comparison made more efficient
- More efficient constraints computation and code clean up
- The __getitem__() implementation of some ASN.1 types & tag object
refactored for better performance
- BER/CER/DER value encoders refactored to produce either tuple of
bytes or octet-stream depending on what is more optimal
- Reduced the frequency of expensive isinstance() calls
- Tag-related classes optimized, refactored into properties and
documented.
- The NamedValues implementation refactored to mimic Python dict, its use
in ASN.1 types refactored into properties and better documented.
WARNING: this change introduces a deviation from original API.
- NamedType family of classes overhauled, optimized and documented.
- The `componentType` attribute of constructed ASN.1 types turned
read-only on instances.
- Sequence/Set DER/CER/DER decoder optimized to skip the case of
reordered components handling when not necessary.
- Tags and constraints-related getter methods refactored into read-only
instance attributes.
- The .hasValue() method refactored into .isValue property. All ASN.1
objects now support them, not just scalars.
- The Real.{isInfinity, isPlusInfinity, isMinusInfinity} methods
refactored into properties and renamed into IsInf, IsPlusInf and isMinusInf
- The end-of-octets type refactored to ensure it is a singleton. Codecs
changed to rely on that for better performance.
- Codecs lookup made more efficient at BER/CER/DER decoder main loop by
assigning `typeId` to every ASN.1 type, not just ambiguous ones.
- The .getComponent*() methods of constructed ASN.1 types changed
to lazily instantiate underlying type rather than return `None`.
This should simplify its API as initialization like `X[0][1] = 2` becomes
possible.
WARNING: this change introduces a deviation from the original API.
- The .setComponent*() methods of SetOf/SequenceOf types changed not
to allow uninitialized "holes" inside the sequences of their components.
They now behave similarly to Python lists.
WARNING: this change introduces a deviation from the original API.
- Default and optional components en/decoding of Constructed type
refactored towards better efficiency and more control.
- OctetsString and Any decoder optimized to avoid creating ASN.1
objects for chunks of substrate. Instead they now join substrate
chunks together and create ASN.1 object from it just once.
- The GeneralizedTime and UTCTime types now support to/from Python
datetime object conversion.
- Unit tests added for the `compat` sub-package.
- Fixed BitString named bits initialization bug.
- Fixed non-functional tag cache (when running Python 2) at DER decoder.
- Fixed chunked encoding restriction on DER encoder.
- Fixed SET components ordering at DER encoder.
- Fixed BIT STRING & OCTET STRING encoding to be always non-chunked (e.g.
primitive) at DER encoder
- Fixed `compat.integer.from_bytes()` behaviour on empty input.
Diffstat (limited to 'security/py-asn1')
-rw-r--r-- | security/py-asn1/Makefile | 4 | ||||
-rw-r--r-- | security/py-asn1/PLIST | 11 | ||||
-rw-r--r-- | security/py-asn1/distinfo | 10 |
3 files changed, 17 insertions, 8 deletions
diff --git a/security/py-asn1/Makefile b/security/py-asn1/Makefile index d6256327ed5..f35d99aa5ba 100644 --- a/security/py-asn1/Makefile +++ b/security/py-asn1/Makefile @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.10 2017/04/19 11:24:38 jperkin Exp $ +# $NetBSD: Makefile,v 1.11 2017/07/27 18:36:10 adam Exp $ -DISTNAME= pyasn1-0.2.3 +DISTNAME= pyasn1-0.3.1 PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/^py//} CATEGORIES= security MASTER_SITES= ${MASTER_SITE_PYPI:=p/pyasn1/} diff --git a/security/py-asn1/PLIST b/security/py-asn1/PLIST index 6fe0085fea8..3113dfe9735 100644 --- a/security/py-asn1/PLIST +++ b/security/py-asn1/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.8 2017/04/08 11:25:11 adam Exp $ +@comment $NetBSD: PLIST,v 1.9 2017/07/27 18:36:10 adam Exp $ ${PYSITELIB}/${EGG_INFODIR}/PKG-INFO ${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt ${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt @@ -55,12 +55,21 @@ ${PYSITELIB}/pyasn1/compat/__init__.pyo ${PYSITELIB}/pyasn1/compat/binary.py ${PYSITELIB}/pyasn1/compat/binary.pyc ${PYSITELIB}/pyasn1/compat/binary.pyo +${PYSITELIB}/pyasn1/compat/calling.py +${PYSITELIB}/pyasn1/compat/calling.pyc +${PYSITELIB}/pyasn1/compat/calling.pyo +${PYSITELIB}/pyasn1/compat/dateandtime.py +${PYSITELIB}/pyasn1/compat/dateandtime.pyc +${PYSITELIB}/pyasn1/compat/dateandtime.pyo ${PYSITELIB}/pyasn1/compat/integer.py ${PYSITELIB}/pyasn1/compat/integer.pyc ${PYSITELIB}/pyasn1/compat/integer.pyo ${PYSITELIB}/pyasn1/compat/octets.py ${PYSITELIB}/pyasn1/compat/octets.pyc ${PYSITELIB}/pyasn1/compat/octets.pyo +${PYSITELIB}/pyasn1/compat/string.py +${PYSITELIB}/pyasn1/compat/string.pyc +${PYSITELIB}/pyasn1/compat/string.pyo ${PYSITELIB}/pyasn1/debug.py ${PYSITELIB}/pyasn1/debug.pyc ${PYSITELIB}/pyasn1/debug.pyo diff --git a/security/py-asn1/distinfo b/security/py-asn1/distinfo index 954babc1590..2efad01d91b 100644 --- a/security/py-asn1/distinfo +++ b/security/py-asn1/distinfo @@ -1,6 +1,6 @@ -$NetBSD: distinfo,v 1.7 2017/04/08 11:25:11 adam Exp $ +$NetBSD: distinfo,v 1.8 2017/07/27 18:36:10 adam Exp $ -SHA1 (pyasn1-0.2.3.tar.gz) = e30253a024d1388a96be8e84245a0d38f47467ff -RMD160 (pyasn1-0.2.3.tar.gz) = f83df6b353bd9d194f60c875263216716815a955 -SHA512 (pyasn1-0.2.3.tar.gz) = b268dd458bca41f879389412570b4ce72585ac0c671275e0f4edec2ede5cf44d2473b08349f7d8b827cb21d14561c0209a5bf3698596a01ea770c2166eaa7fbf -Size (pyasn1-0.2.3.tar.gz) = 94862 bytes +SHA1 (pyasn1-0.3.1.tar.gz) = 41c50f49fa343ee119e2a00f1ced7281dba2760f +RMD160 (pyasn1-0.3.1.tar.gz) = 2ccf0d96e131ae98fb87f32d184d2dff8915a36f +SHA512 (pyasn1-0.3.1.tar.gz) = 608c6bb32b2077d3ff21b3c789c451e75e31e9cba514800bcb3d987da91b8331cae5dc855c469d8acf299c550be24adcdaeaae2b2c46f9878597bd6576984868 +Size (pyasn1-0.3.1.tar.gz) = 108718 bytes |