X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=doc%2Fnews.rst;h=997b3cbafef450fb3f1bc22a1025bd4d5008568d;hb=a8f8eb8f0bf0395b8fc94a1cad063def57729a90;hp=3fbddd0325b56aa6c2c7fb8fcaa3f8d605fa6d6e;hpb=ac86b0fe801de06f9b861579e5d566d3cdb3236b;p=pyderasn.git
diff --git a/doc/news.rst b/doc/news.rst
index 3fbddd0..997b3cb 100644
--- a/doc/news.rst
+++ b/doc/news.rst
@@ -1,11 +1,127 @@
News
====
+.. _release7.4:
+
+7.4
+---
+
+* Fix DEFINED BY pprinting when invoking as __main__ module
+* Integer has ``tohex()`` for getting hexadecimal representation of its value
+* ``hexdump()`` (``hexdump -C`` like output) and ``ascii_visualize``
+ (visualize ASCII printable characters, like in ``hexdump -C``) pretty
+ printing functions appeared
+* Experimental ASN.1 interactive terminal browser.
+ You will need `urwid package `__ to use it
+
+.. _release7.3:
+
+7.3
+---
+
+* SEQUENCE/SET fully performs default value existence validation in
+ evgen mode, by the cost of DEFAULTed value full decoding. That should
+ not be the problem, as DEFAULTs are relatively small in practice. Now
+ evgen mode has the same DER validation strictness as an ordinary one
+
+.. _release7.2:
+
+7.2
+---
+
+* Restored workability of some command line options
+* 2-pass DER encoding mode with very little memory footprint
+
+.. _release7.1:
+
+7.1
+---
+
+* README updating
+
+.. _release7.0:
+
+7.0
+---
+* Fixed invalid behaviour where SET OF allowed multiple objects with the
+ same tag to be successfully decoded
+* Fixed possibly invalid SET DER encoding where objects were not sorted
+ by tag, but by encoded representation
+* ``Any`` does not allow empty data value now. Now it checks if it has
+ valid ASN.1 tag
+* ``SetOf`` is not treated as ready, if no value was set and minimum
+ bounds are greater than zero
+* ``Any`` allows an ordinary ``Obj`` storing, without its forceful
+ encoded representation storage. That is required for CER encoding
+ mode, where we do not know in advance what encoding will be used
+* ``ObjectIdentifier`` stores values as C unsigned long integer,
+ forbidding storage of huge integers, that must not be a problem in
+ practice
+* Initial support for so called ``evgen_mode``: event generation mode,
+ where no in-memory objects storing happens, giving ability to process
+ ASN.1 data without fully parsing it first. ``python -m pyderasn`` has
+ ``--evgen`` mode switcher
+* Useful ``agg_octet_string`` that is able to streamingly decode string
+ from events of ``evgen_mode``, allowing strings retrieving without
+ copying them to memory first
+* Initial experimental CER encoding mode, allowing streaming encoding of
+ the data directly to some writeable object
+* Ability to use mmap-ed memoryviews to skip files loading to memory
+* Ability to use memoryview as an input for \*Strings. If they are
+ mmap-ed, then you can encode any quantities of data streamingly
+ without copying to memory
+
+.. _release6.3:
+
+6.3
+---
+* Fixed workability under Python 3.5. Previously only 2.7 and 3.6
+ versions were tested
+
+.. _release6.2:
+
+6.2
+---
+* Python ``int()``'s accepts even more various non-decimal characters
+ than expected. Make validation fully strict in UTCTime and
+ GeneralizedTime, without relying on ``int()``
+
+.. _release6.1:
+
+6.1
+---
+* UTCTime and GeneralizedTime allowed values to have plus sign in them,
+ passing int() check successfully. Prohibit that incorrect behaviour
+* UTCTime and GeneralizedTime BER decoding support
+* Faster UTCTime and GeneralizedTime decoding, and slightly better
+ overall performance
+* Workability under Cython
+* Explicitly Check that all ObjectIdentifier arcs are non-negative
+
+.. _release6.0:
+
+6.0
+---
+* ``.copy()`` method removed: ``copy.copy()`` is preferred way to copy
+ objects now
+* Copies made previously with ``.copy()`` lacked ``.defined`` field,
+ now they are not
+* All objects are friendly to ``pickle`` libraries
+* PrintableString has ``allow_asterisk`` and ``allow_ampersand``
+ properties
+* ``.hexencode()``, ``.hexdecode()`` and ``.hexdecod()`` methods
+ appeared, working with hexadecimal encoded data
+
.. _release5.6:
5.6
---
* Convenient ``.decod()`` method, that raises if tail is not empty
+* Control characters (like newlines) of text fields in pprinted output
+ are escaped
+* Ability to allow asterisk and ampersand characters
+ (``allow_asterisk``, ``allow_ampersand`` kwargs) in PrintableString,
+ that unfortunately could be met in X.509 certificates
.. _release5.5:
@@ -17,7 +133,7 @@ News
5.4
---
-* Do not shadow underlying ``DecodeError`` during decoding of optional
+* Do not shadow underlying DecodeError during decoding of optional
sequence's field
.. _release5.3:
@@ -295,7 +411,7 @@ utility.
1.5
---
-* Generic decoder's scheme and pretty printer
+* Generic decoder's schema and pretty printer
(:py:func:`pyderasn.generic_decoder`) can be used in libraries
* Ability to specify :ref:`defines_by_path `
during command line invocation