]> Cypherpunks.ru repositories - pyderasn.git/commitdiff
README update and CER/BER mentioning 7.1
authorSergey Matveev <stargrave@stargrave.org>
Sun, 16 Feb 2020 18:41:01 +0000 (21:41 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Sun, 16 Feb 2020 18:42:09 +0000 (21:42 +0300)
README
VERSION
doc/index.rst
doc/install.rst
doc/news.rst
pyderasn.py
setup.py
tests/test_cms.py
tests/test_crl.py
tests/test_crts.py
tests/test_pyderasn.py

diff --git a/README b/README
index a8e2cc970ccce479fd08ae2318e90d42e330feae..150779fd3bad1099ccdd8a944d44d2a354b9718d 100644 (file)
--- a/README
+++ b/README
@@ -1,23 +1,35 @@
-PyDERASN -- strict and fast ASN.1 DER/BER library for Python
+PyDERASN -- strict and fast ASN.1 DER/CER/BER library for Python
 
     I'm going to build my own ASN.1 library with slots and blobs!
     (C) PyDERASN's author
 
 
     I'm going to build my own ASN.1 library with slots and blobs!
     (C) PyDERASN's author
 
-* BER/CER/DER decoding, DER encoding
+* BER/CER/DER decoding, strict DER validation, DER/CER encoding
 * Basic ASN.1 data types (X.208): BOOLEAN, INTEGER, BIT STRING, OCTET
   STRING, NULL, OBJECT IDENTIFIER, ENUMERATED, all strings, UTCTime,
   GeneralizedTime, CHOICE, ANY, SEQUENCE (OF), SET (OF)
 * Size constraints checking
 * Working with sequences as high level data objects with ability to
   (un)marshall them
 * Basic ASN.1 data types (X.208): BOOLEAN, INTEGER, BIT STRING, OCTET
   STRING, NULL, OBJECT IDENTIFIER, ENUMERATED, all strings, UTCTime,
   GeneralizedTime, CHOICE, ANY, SEQUENCE (OF), SET (OF)
 * Size constraints checking
 * Working with sequences as high level data objects with ability to
   (un)marshall them
+* Aimed to be complaint with X.690-201508
+* Streaming decoding and encoding capabilities, allowing working with
+  very small memory footprint
 * Python 2.7/3.5/3.6 compatibility
 * Automatic decoding of DEFINED BY fields
 * Ability to know exact decoded objects offset and lengths in the binary
 * Python 2.7/3.5/3.6 compatibility
 * Automatic decoding of DEFINED BY fields
 * Ability to know exact decoded objects offset and lengths in the binary
-* Pretty printer and command-line decoder, that could conveniently
-  replace utilities like either dumpasn1 or openssl asn1parse
+* Ability to allow BER-encoded data with knowing if any of specified
+  field has either DER or BER encoding (or possibly indefinite-length
+  encoding)
+* Ability to use mmap-ed files, memoryviews, iterators and CER encoder
+  dealing with the writer, giving ability to create huge ASN.1 encoded
+  files without storing all the data in the memory first
+* Ability to decode files in event generation mode, without the need to
+  keep all the data and decoded structures in the memory
 * __slots__, copy.copy() friendliness
 * Workability with pickle
 * Cython compatibility
 * __slots__, copy.copy() friendliness
 * Workability with pickle
 * Cython compatibility
+* Descriptive errors, with decode paths
+* Pretty printer and command-line decoder, that could conveniently
+  replace utilities like either dumpasn1 or openssl asn1parse
 
 pyderasn is free software: see the file COPYING.LESSER for copying conditions.
 
 
 pyderasn is free software: see the file COPYING.LESSER for copying conditions.
 
diff --git a/VERSION b/VERSION
index 4fedf1d20e15761409d6e4e3bf99c0beb499fdfe..0f0fefae5ac96803e7227191df7a6974709eb45d 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-7.0
+7.1
index 2aaa14419e2dc48f49f22c3b17bdd1f6a6c06a90..17dcef038636848f9b6deaf23102fa03c508d43e 100644 (file)
@@ -1,6 +1,6 @@
-============================================================
-PyDERASN -- strict and fast ASN.1 DER/BER library for Python
-============================================================
+================================================================
+PyDERASN -- strict and fast ASN.1 DER/CER/BER library for Python
+================================================================
 
 ..
 
 
 ..
 
index a14ebc590b23fbc88d727720b21cc2d3ad6e3ff4..54e7dfa83b3fde78d0411fcc89ea536f90e41aa0 100644 (file)
@@ -4,11 +4,11 @@ Install
 Preferable way is to :ref:`download <download>` tarball with the
 signature from `official website <http://pyderasn.cypherpunks.ru/>`__::
 
 Preferable way is to :ref:`download <download>` tarball with the
 signature from `official website <http://pyderasn.cypherpunks.ru/>`__::
 
-    $ [fetch|wget] http://pyderasn.cypherpunks.ru/pyderasn-7.0.tar.xz
-    $ [fetch|wget] http://pyderasn.cypherpunks.ru/pyderasn-7.0.tar.xz.sig
-    $ gpg --verify pyderasn-7.0.tar.xz.sig pyderasn-7.0.tar.xz
-    $ xz --decompress --stdout pyderasn-7.0.tar.xz | tar xf -
-    $ cd pyderasn-7.0
+    $ [fetch|wget] http://pyderasn.cypherpunks.ru/pyderasn-7.1.tar.xz
+    $ [fetch|wget] http://pyderasn.cypherpunks.ru/pyderasn-7.1.tar.xz.sig
+    $ gpg --verify pyderasn-7.1.tar.xz.sig pyderasn-7.1.tar.xz
+    $ xz --decompress --stdout pyderasn-7.1.tar.xz | tar xf -
+    $ cd pyderasn-7.1
     $ python setup.py install
     # or copy pyderasn.py (+six.py, possibly termcolor.py) to your PYTHONPATH
 
     $ python setup.py install
     # or copy pyderasn.py (+six.py, possibly termcolor.py) to your PYTHONPATH
 
@@ -19,7 +19,7 @@ You can also find it mirrored on :ref:`download <download>` page.
 You could use pip (**no** OpenPGP authentication is performed!) with PyPI::
 
     $ cat > requirements.txt <<EOF
 You could use pip (**no** OpenPGP authentication is performed!) with PyPI::
 
     $ cat > requirements.txt <<EOF
-    pyderasn==7.0 --hash=sha256:TO-BE-FILLED
+    pyderasn==7.1 --hash=sha256:TO-BE-FILLED
     six==1.14.0 --hash=sha256:236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a
     EOF
     $ pip install --requirement requirements.txt
     six==1.14.0 --hash=sha256:236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a
     EOF
     $ pip install --requirement requirements.txt
index cdc961d1a85b553876b8632112541b93a801933c..ec93f52a4413ea275a87f97f433afd1ce39c97d5 100644 (file)
@@ -1,6 +1,13 @@
 News
 ====
 
 News
 ====
 
+.. _release7.1:
+
+7.1
+---
+
+* README updating
+
 .. _release7.0:
 
 7.0
 .. _release7.0:
 
 7.0
index 7bb1799863c454bb22bdbdc70c75411c47635f04..abb08e89dce06565635402782039f40c210a5d2d 100755 (executable)
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 # coding: utf-8
 # cython: language_level=3
 #!/usr/bin/env python
 # coding: utf-8
 # cython: language_level=3
-# PyDERASN -- Python ASN.1 DER/BER codec with abstract structures
+# PyDERASN -- Python ASN.1 DER/CER/BER codec with abstract structures
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
@@ -1124,7 +1124,7 @@ except ImportError:  # pragma: no cover
     def colored(what, *args, **kwargs):
         return what
 
     def colored(what, *args, **kwargs):
         return what
 
-__version__ = "7.0"
+__version__ = "7.1"
 
 __all__ = (
     "agg_octet_string",
 
 __all__ = (
     "agg_octet_string",
@@ -7104,7 +7104,7 @@ def generic_decoder():  # pragma: no cover
 
 def main():  # pragma: no cover
     import argparse
 
 def main():  # pragma: no cover
     import argparse
-    parser = argparse.ArgumentParser(description="PyDERASN ASN.1 BER/DER decoder")
+    parser = argparse.ArgumentParser(description="PyDERASN ASN.1 BER/CER/DER decoder")
     parser.add_argument(
         "--skip",
         type=int,
     parser.add_argument(
         "--skip",
         type=int,
index 54b056c9ae5f644f66c24a3cd92ebafcb90d3885..b2d641d3e6d85fb8e3dcd97b0d7ada535e8974b7 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -8,7 +8,7 @@ version = open("VERSION", "rb").read().strip().decode("ascii")
 setup(
     name="pyderasn",
     version=version,
 setup(
     name="pyderasn",
     version=version,
-    description="Python ASN.1 DER/BER codec with abstract structures",
+    description="Python ASN.1 DER/CER/BER codec with abstract structures",
     long_description=open("README", "rb").read().decode("utf-8"),
     author="Sergey Matveev",
     author_email="stargrave@stargrave.org",
     long_description=open("README", "rb").read().decode("utf-8"),
     author="Sergey Matveev",
     author_email="stargrave@stargrave.org",
index 86756f49924d41f01f4b1d9e3b053c57e7947ed7..ac9726fa6127a17952583a67741e9dc96d7ab018 100644 (file)
@@ -1,5 +1,5 @@
 # coding: utf-8
 # coding: utf-8
-# PyDERASN -- Python ASN.1 DER codec with abstract structures
+# PyDERASN -- Python ASN.1 DER/CER/BER codec with abstract structures
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
index a5c7183ee48f3536d808cb93984f25f6d2be3776..fcfcb9e379ab92d001dad67ceacc235e5735b0aa 100644 (file)
@@ -1,5 +1,5 @@
 # coding: utf-8
 # coding: utf-8
-# PyDERASN -- Python ASN.1 DER codec with abstract structures
+# PyDERASN -- Python ASN.1 DER/CER/BER codec with abstract structures
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
index 3f753e059013eabadeaa1c77fd67aed25d3a7133..e31470f6c2f42fddee8d0d97ae575b2168bfb118 100644 (file)
@@ -1,5 +1,5 @@
 # coding: utf-8
 # coding: utf-8
-# PyDERASN -- Python ASN.1 DER codec with abstract structures
+# PyDERASN -- Python ASN.1 DER/CER/BER codec with abstract structures
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
index 3a9e3036f0d1490fe930870d950b2bdf5d50a4e4..9fae13ea1eae16653d587bea0d038d472b6ba719 100644 (file)
@@ -1,5 +1,5 @@
 # coding: utf-8
 # coding: utf-8
-# PyDERASN -- Python ASN.1 DER/BER codec with abstract structures
+# PyDERASN -- Python ASN.1 DER/CER/BER codec with abstract structures
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify
 # Copyright (C) 2017-2020 Sergey Matveev <stargrave@stargrave.org>
 #
 # This program is free software: you can redistribute it and/or modify