
User-Visible Changes in python-ed25519

* Release 0.8 (19-Nov-2011)

This release probably adds Windows compatibility. To enable this, the
upstream C code which calls sleep() was removed: crypto_sign_keypair() was
removed from ed25519.c, and randombytes.c and randombytes.h were deleted
entirely. The Python code (in ed25519.create_keypair) wasn't using
crypto_sign_keypair() anyways: it switched to using os.urandom() and
crypto_sign_publickey() in 0.5 .


* Release 0.7 (17-Nov-2011)

The SigningKey.to_ascii() method was modified to return an encoded seed (32
bytes) rather than the full private key (64 bytes). The SigningKey()
constructor will accept either.

Unit tests, known-answer tests, and speed benchmarks can now be run through
setup.py (after building):

 python setup.py build
 python setup.py test
 python setup.py test_kat
 python setup.py speed

A power-on self test (which takes about 10ms) was added, to throw an
AssertionError during import if any of the basic keygen/sign/verify
operations are broken.


* Release 0.6 (16-Nov-2011)

This release fixes execution of unit tests and import errors when run from
inside the source tree: the 0.5 release was quite broken (having a directory
named 'ed25519' in the source tree's root interfered with imports from the
expected build/... subdirectory), and manual testing failed to catch the
problem (because import found a locally-installed copy in /usr/local). The
source tree has been rearranged to keep this from happening. 

The (small) unit tests are now installed along with the code. The large
Known-Answer-Tests (about 2.5MB) are not, to keep the installed size low
(about 600kB, most of which is the binary .so).

The 0.6 release also improves the version-string generation code, using
python-versioneer-0.1 .


* Release 0.5 (12-Nov-2011)

In this release, the .to_string() method was renamed to .to_bytes(), since
the output is a non-printable binary bytestring.

It also adds prefix= and encoding= arguments to most data-handling methods
(key-object constructors, key-serialization, sign, and verify). These can
help with version-checking and JSON encoding.

The create_keypair() function now takes an entropy= argument, which is called
just like os.urandom, and can be used to deterministically generate keys.
This is most useful for unit tests.



* org-mode configuration follows
#+STARTUP: showall

# Local Variables:
# mode:org
# End:
