- Nothing changed yet.
- Drop support for Python 2.7, 3.3, 3.4, 3.5, 3.6.
- Add support for Python 3.7, 3.8, 3.9, 3.10, 3.11.
- Drop support for PyPy implementation. The
crypt
module is currently not working with PyPy3.
- Fix
phone()
so it does not break if the input is only one character long. (https://bitbucket.org/gocept/gocept.pseudonymize/issues/1)
- A value pseudonymized by
text()
no longer contains full stops, they are converted to spaces. Thus the pseudonymized values may change since version 1.1. (string()
now has the former behavior oftext()
, see below.) email()
now returns its result in all lower case.
- Add
string()
pseudonymizer returning a string containing numbers, digits and full stops. (This is whattext()
formerly did.)
- Fix all pseudonymizers: if called with a value which evaluates to False the
value is returned. But
integer()
still pseudonymizes 0. - Fix
email()
so it does not break on an input value which does not contain an @ symbol.
- Add
street()
pseudonymizer. - Add
bic()
(business identifier code) pseudonymizer.
- Add
name()
pseudonymizer.
- Claim support for PyPy.
- Officially support Python 3.4, 3.5 and 3.6.
- Bring test coverage to 100 % even for code branches and enforce it for the future.
- Re-license from ZPL to MIT.
- Fix handling of usage of glibc2 supported additional encryption algorithms (
signalled using
$<id>$ <salt>$ as salt).
- Bugfix:
text()
pseudonymizer now works as expected for texts longer than 11 bytes. Previously it returned an 11 byte result for longer texts ignoring the part after the 11th byte (default behavior of the usedcrypt
implementation). (#1296) - Fixed handling of Extended crypt (signalled by starting the salt with an underscore): Salt is now correctly stripped from result. Caution: This leads to different pseudonymization results when using a secret starting with underscore than in version 0.3.
- Fix tests in documentation + testing documentation now.
- Add new pseudonymizers:
datestring()
day()
month()
year()
- Caution: Due to changed implementation of the
date()
function it returns different values than in version 0.2.
date()
does not return pseudonymized years smaller than 1900 anymore asdatetime.date
can not handle years smaller that 1900.
- Initial release.