Intervaltree

Latest version: v3.1.0

Safety actively analyzes 628989 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

2.0.3

- Fix: README showed using + operator for setlike union instead of the correct | operator
- Removed tests from release package to speed up installation; to get the tests, download from GitHub

2.0.2

- Fix: Issue 20: performance enhancement for large trees. `IntervalTree.search()` made a copy of the entire `boundary_table` resulting in linear search time. The `sortedcollections` package is now the sole install dependency

2.0.1

- Fix: Issue 26: failed to prune empty `Node` after a rotation promoted contents of `s_center`

2.0.0

- `IntervalTree` now supports the full `collections.MutableSet` API
- Added:
- `__delitem__` to `IntervalTree`
- `Interval` comparison methods `lt()`, `gt()`, `le()` and `ge()` to `Interval`, as an alternative to the comparison operators, which are designed for sorting
- `IntervalTree.from_tuples(iterable)`
- `IntervalTree.clear()`
- `IntervalTree.difference(iterable)`
- `IntervalTree.difference_update(iterable)`
- `IntervalTree.union(iterable)`
- `IntervalTree.intersection(iterable)`
- `IntervalTree.intersection_update(iterable)`
- `IntervalTree.symmetric_difference(iterable)`
- `IntervalTree.symmetric_difference_update(iterable)`
- `IntervalTree.chop(a, b)`
- `IntervalTree.slice(point)`
- Deprecated `IntervalTree.extend()` -- use `update()` instead
- Internal improvements:
- More verbose tests with progress bars
- More tests for comparison and sorting behavior
- Code in the README is included in the unit tests
- Fixes
- BACKWARD INCOMPATIBLE: On ranged queries where `begin >= end`, the query operated on the overlaps of `begin`. This behavior was documented as expected in 1.x; it is now changed to be more consistent with the definition of `Interval`s, which are half-open.
- Issue 25: pruning empty Nodes with staggered descendants could result in invalid trees
- Sorting `Interval`s and numbers in the same list gathered all the numbers at the beginning and the `Interval`s at the end
- `IntervalTree.overlaps()` and friends returned `None` instead of `False`
- Maintainers: `make install-testpypi` failed because the `pip` was missing a `--pre` flag

1.1.1

- Removed requirement for pyandoc in order to run functionality tests.

1.1.0

- Added ability to use `Interval.distance_to()` with points, not just `Intervals`
- Added documentation on return types to `IntervalTree` and `Interval`
- `Interval.__cmp__()` works with points too
- Fix: `IntervalTree.score()` returned maximum score of 0.5 instead of 1.0. Now returns max of subscores instead of avg
- Internal improvements:
- Development version numbering scheme, based on `git describe` the "building towards" release is appended after a hyphen, eg. 1.0.2-37-g2da2ef0-1.10. The previous tagged release is 1.0.2, and there have been 37 commits since then, current tag is g2da2ef0, and we are getting ready for a 1.1.0 release
- Optimality tests added
- `Interval` overlap tests for ranges, `Interval`s and points added

Page 2 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.