summaryrefslogtreecommitdiff
path: root/security/py-asn1
diff options
context:
space:
mode:
authoradam <adam@pkgsrc.org>2017-07-27 18:36:10 +0000
committeradam <adam@pkgsrc.org>2017-07-27 18:36:10 +0000
commitc6c788ea26c7e8423e82f91cbba82ce98fb7b449 (patch)
tree0fddc85a52d354ab52e420eb3569aa0d51c1f89b /security/py-asn1
parent87dc3f80e3515ee0f8de9b852bc9498e269eaeb9 (diff)
downloadpkgsrc-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/Makefile4
-rw-r--r--security/py-asn1/PLIST11
-rw-r--r--security/py-asn1/distinfo10
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