- updated the bundled C library to version 0.2.9;
- implemented
Trie.__len__
in terms oftrie_enumerate
; - rebuilt Cython wrapper with Cython 0.23.4;
- changed
Trie
to implementcollections.abc.MutableMapping
; - fixed
Trie
pickling, which segfaulted on Python2.X.
- bundled libdatrie C library is updated to version 0.2.8;
- new .suffixes() method (thanks Ahmed T. Youssef);
- wrapper is rebuilt with Cython 0.20.1.
- fixed build for Visual Studio (thanks Gabi Davar).
- datrie is rebuilt with Cython 0.19.1;
iter_prefix_values
,prefix_values
andlongest_prefix_value
methods fordatrie.BaseTrie
anddatrie.Trie
(thanks Jared Suttles).
- Recently introduced memory leak in
longest_prefix
andlongest_prefix_item
is fixed.
longest_prefix
andlongest_prefix_item
methods are fixed;- datrie is rebuilt with Cython 0.18;
- misleading benchmark results in README are fixed;
- State._walk is renamed to State.walk_char.
- Update to latest libdatrie; this makes
.keys()
method a bit slower but removes a keys length limitation.
- cPickle is used for saving/loading
datrie.Trie
if it is available.
libdatrie
improvements and bugfixes, including C iterator API support;- custom iteration support using
datrie.State
anddatrie.Iterator
. - speed improvements:
__length__
,keys
,values
anditems
methods should be up to 2x faster. - keys longer than 32768 are not supported in this release.
There are no new features or speed improvements in this release.
datrie.new
is deprecated; usedatrie.Trie
with the same arguments;- small test & benchmark improvements.
datrie.Trie
items can have any Python object as a value (Trie
from 0.1.x becomesdatrie.BaseTrie
);longest_prefix
andlongest_prefix_items
are fixed;save
&load
are rewritten;setdefault
method.
- Windows support (upstream libdatrie changes are merged);
- license is changed from LGPL v3 to LGPL v2.1 to match the libdatrie license.
Initial release.