Sonic Versions Save

🦔 Fast, lightweight & schema-less search backend. An alternative to Elasticsearch that runs on a few MBs of RAM.

v1.3.4

1 year ago
  • Dependencies have been bumped to latest versions (namely: rocksdb, clap, regex) [@valeriansaliou].

v1.3.3

1 year ago
  • Dependencies have been bumped to latest versions (namely: hashbrown, whatlang, regex) [@valeriansaliou].
  • Moved the release pipeline to GitHub Actions [@valeriansaliou].
  • The language detection system is now about 2x faster (due to the upgrade of whatlang past v0.14.0) [@valeriansaliou].
  • Added Armenian stopwords [@valeriansaliou].
  • Added Georgian stopwords [@valeriansaliou].
  • Added Gujarati stopwords [@valeriansaliou].
  • Added Tagalog stopwords [@valeriansaliou].

v1.3.2

2 years ago
  • Fixed Norwegian stopwords [@valeriansaliou, #239].
  • Code has been formatted according to clippy recommendations. This does not change the way Sonic behaves [@pleshevskiy, #233].
  • Added support for Chinese word segmentation in tokenizer (note that as this adds quite some size overhead to the final binary size, the feature tokenizer-chinese can be disabled when building Sonic) [@vincascm, #209].

v1.3.1

2 years ago
  • Apple Silicon is now supported [@valeriansaliou].
  • Added Norwegian stopwords [@mikalv, #236].
  • Added Catalan stopwords [@coopanio, #227].
  • Dependencies have been bumped to latest versions (namely: rocksdb, fst-levenshtein, fst-regex, hashbrown, whatlang, byteorder, rand) [@valeriansaliou].
  • A few rarely-used languages have been removed, following whatlang v0.12.0 release, see the notes here [@valeriansaliou, 940d3c3].

v1.3.0

3 years ago
  • Added support for Slovak, which is now auto-detected from terms [@valeriansaliou, 19412ce].
  • Added Slovak stopwords [@valeriansaliou, 19412ce].
  • Dependencies have been bumped to latest versions (namely: whatlang) [@valeriansaliou, 19412ce].

v1.2.4

3 years ago
  • Fixed multiple deadlocks, which where not noticed in practice by running Sonic at scale, but that are still theoretically possible [@BurtonQin, #213, #211].
  • Added support for Latin, which is now auto-detected from terms [@valeriansaliou, e6c5621].
  • Added Latin stopwords [@valeriansaliou, e6c5621].
  • Dependencies have been bumped to latest versions (namely: rocksdb, radix, hashbrown, whatlang) [@valeriansaliou].
  • Added a release script, with cross-compilation capabilities (currently for the x86_64 architecture, dynamically linked against GNU libraries) [@valeriansaliou, 961bab9].

v1.2.3

4 years ago
  • RocksDB compression algorithm has been changed from LZ4 to Zstandard, for a slightly better compression ratio, and much better read/write performance; this will be used for new SST files only [@valeriansaliou, cd4cdfb].
  • Dependencies have been bumped to latest versions (namely: rocksdb) [@valeriansaliou, cd4cdfb].

v1.2.2

4 years ago
  • Fixed a regression on optional configuration values not working anymore, due to an issue in the environment variable reading system introduced in v1.2.1 [@valeriansaliou, #155].
  • Optimized some aspects of FST consolidation and pending operations management [@valeriansaliou, #156].

v1.2.1

4 years ago
  • FST graph consolidation is now able to ignore new words when the graph is over configured limits, which are set with the new store.fst.graph.max_size and store.fst.graph.max_words configuration variables [@valeriansaliou, 53db9c1].
  • An integration testing infrastructure has been added to the Sonic automated test suite [@vilunov, #154].
  • Configuration values can now be sourced from environment variables, using the ${env.VARIABLE} syntax in config.cfg [@perzanko, #148].
  • Dependencies have been bumped to latest versions (namely: rand, radix and hashbrown) [@valeriansaliou, c1b1f54].

v1.2.0

5 years ago
  • Fixed a rare deadlock occuring when 3 concurrent operations get executed on different threads for the same collection, in the following timely order: PUSH then FLUSHB then PUSH [@valeriansaliou, d96546bd9d8b79332df1106766377e4a4acebd50].
  • Reworked the KV store manager to perform periodic memory flushes to disk, thus reducing startup time [@valeriansaliou, 6713488af3543bca33be6e772936f9668430ba86].
  • Stop accepting Sonic Channel commands when shutting down Sonic [@valeriansaliou, #131].
  • Introduced a server statistics INFO command to Sonic Channel [@valeriansaliou, #70].
  • Added the ability to disable the lexer for a command with the command modifier LANG(none) [@valeriansaliou, #108].
  • Added a backup and restore system for both KV and FST stores, which can be triggered over Sonic Channel with TRIGGER backup and TRIGGER restore [@valeriansaliou, #5].
  • Added the ability to disable KV store WAL (Write-Ahead Log) with the write_ahead_log option, which helps limit write wear on heavily loaded SSD-backed servers [@valeriansaliou, #130].