Tantivy

Latest version: v0.22.0

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

Scan your dependencies

Page 6 of 8

0.9.0

=====================

*0.9.0 index format is not compatible with the
previous index format.*

- MAJOR BUGFIX :
Some `Mmap` objects were being leaked, and would never get released. (fulmicoton)
- Removed most unsafe (fulmicoton)
- Indexer memory footprint improved. (VInt comp, inlining the first block. (fulmicoton)
- Stemming in other language possible (pentlander)
- Segments with no docs are deleted earlier (barrotsteindev)
- Added grouped add and delete operations.
They are guaranteed to happen together (i.e. they cannot be split by a commit).
In addition, adds are guaranteed to happen on the same segment. (elbow-jason)
- Removed `INT_STORED` and `INT_INDEXED`. It is now possible to use `STORED` and `INDEXED`
for int fields. (fulmicoton)
- Added DateTime field (barrotsteindev)
- Added IndexReader. By default, index is reloaded automatically upon new commits (fulmicoton)
- SIMD linear search within blocks (fulmicoton)

How to update ?

tantivy 0.9 brought some API breaking change.
To update from tantivy 0.8, you will need to go through the following steps.

- `schema::INT_INDEXED` and `schema::INT_STORED` should be replaced by `schema::INDEXED` and `schema::INT_STORED`.
- The index now does not hold the pool of searcher anymore. You are required to create an intermediary object called
`IndexReader` for this.

rust
// create the reader. You typically need to create 1 reader for the entire
// lifetime of you program.
let reader = index.reader()?;

// Acquire a searcher (previously `index.searcher()`) is now written:
let searcher = reader.searcher();

// With the default setting of the reader, you are not required to
// call `index.load_searchers()` anymore.
//
// The IndexReader will pick up that change automatically, regardless
// of whether the update was done in a different process or not.
// If this behavior is not wanted, you can create your reader with
// the `ReloadPolicy::Manual`, and manually decide when to reload the index
// by calling `reader.reload()?`.

0.8.2

=====================

Fixing build for x86_64 platforms. (496)
No need to update from 0.8.1 if tantivy
is building on your platform.

0.8.1

=====================

Hotfix of 476.

Merge was reflecting deletes before commit was passed.
Thanks barrotsteindev for reporting the bug.

0.8.0

=====================

*No change in the index format*

- API Breaking change in the collector API. (jwolfe, fulmicoton)
- Multithreaded search (jwolfe, fulmicoton)

0.7.1

=====================

*No change in the index format*

- Bugfix: NGramTokenizer panics on non ascii chars
- Added a space usage API

0.7

=====================

- Skip data for doc ids and positions (fulmicoton),
greatly improving performance
- Tantivy error now rely on the failure crate (drusellers)
- Added support for `AND`, `OR`, `NOT` syntax in addition to the `+`,`-` syntax
- Added a snippet generator with highlight (vigneshsarma, fulmicoton)
- Added a `TopFieldCollector` (pentlander)

Page 6 of 8

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.