- Support for Python 3.2+ and 2.6+
- Changed license from LGPL to more permissive Apache license
- Merged changes from https://github.com/konstantint/PyIntervalTree to
https://github.com/chaimleib/PyIntervalTree
- Interval now inherits from a namedtuple. Benefits: should be faster.
Drawbacks: slight behavioural change (Intervals not mutable anymore).
- Added float tests
- Use setup.py for tests
- Automatic testing via travis-ci
- Removed dependency on six
- Interval improvements:
- Intervals without data have a cleaner string representation
- Intervals without data are pickled more compactly
- Better hashing
- Intervals are ordered by begin, then end, then by data. If data is not
orderable, sorts by type(data)
- Bug fixes:
- Fixed crash when querying empty tree
- Fixed missing close parenthesis in examples
- Made IntervalTree crash earlier if a null Interval is added
- Internals:
- New test directory
- Nicer display of data structures for debugging, using custom
test/pprint.py (Python 2.6, 2.7)
- More sensitive exception handling
- Local script to test in all supported versions of Python
- Added IntervalTree.score() to measure how optimally a tree is structured