Skip to content

Latest commit

 

History

History
128 lines (75 loc) · 7.02 KB

CHANGELOG.md

File metadata and controls

128 lines (75 loc) · 7.02 KB

📜 Changelog

All notable changes to this project will be documented in this file.

0.7.0 - 2023-12-23

⚙️ Miscellaneous Tasks

  • Update changelog - (6c5b144)
  • Fix benchmark in workflow - (4761c49)
  • Improve benchmark workflow - (63324e2)
  • Improve benchmark workflow - (4f423f5)
  • Fix benchmark workflow - (2214f64)
  • Fix benchmark workflow - (71660f5)
  • Bump version to 0.7.0 - (317466f)

⚡ Performance

  • [breaking] Refactor the Trie and TrieNode structs to replace the 2 vectors used to store values and trie node, by the root node of the trie. The values are now directly stored in the TrieNode (instead of having integers to get values from an array), and the Trie only contains 1 field: the root node of the trie. This reduces amount of effective line of code from 127 to 97. - (e7b9531)

🧪 Testing

  • Add benchmark with criterion, add benchmark job to test workflow - (79a15d7)
  • Improve criterion benchmark use of black_box - (617b25e)
  • Add massive benchmark for prefix/postfix - (b0bf31a)

0.6.0 - 2023-12-22

⚙️ Miscellaneous Tasks

  • Update changelog - (baef8a9)
  • Update release script and readme - (e06dd4c)
  • Bump version to 0.6.0 - (15c6519)

🚜 Refactor

  • [breaking] Rename trie.get_value() to trie.get() and return a reference to the value instead of the value to be closer to hashmap API - (fd1e530)

🧪 Testing

  • Add test for serde serialize feature - (308a2ab)

0.5.4 - 2023-12-21

⚙️ Miscellaneous Tasks

0.5.3 - 2023-12-21

⚙️ Miscellaneous Tasks

  • Add bash script to easily perform a release - (ba03b9b)
  • Update release script, improve readme - (3e61eb0)
  • Update codecov action version and readme - (20e35cc)

⛰️ Features

  • Add simple iterator for the trie - (a4da3f5)

🐛 Bug Fixes

0.5.2 - 2023-12-21

⚙️ Miscellaneous Tasks

0.5.1 - 2023-12-21

⚙️ Miscellaneous Tasks

  • Remove typos check from release workflow and add it to pre-commit - (6ac4326)

0.5.0 - 2023-12-21

⛰️ Features

  • Add functions to find_prefixes, find_postfixes, and find_longest_prefix. Rename files - (ccbae67)

📚 Documentation

  • Update readme, add contributing.md, add git cliff to generate changelog, add pre-commit to automatically fmt and update changelog - (61da9f9)
  • Improve readme examples - (50c3acb)

🧪 Testing

  • Improve tests, add GitHub actions workflows for testing and releasing, remove travis CI, update benchmark script - (8391056)
  • Fix tests - (4203259)
  • Fix codecov upload - (8666e6a)

0.4.0 - 2018-07-09

⚡ Performance

  • Extracts values to a vector from nodes - (8032921)
  • Improves the perfomance - (1542fd9)
  • Fixes the case of existing value overriding in the trie - (89c08ad)

🎨 Styling

  • Fixes formatting with rust-fmt - (57b8acf)

0.3.0 - 2017-12-19

⚙️ Miscellaneous Tasks

  • Improves the performance by keys localization in memory

Previous version of the TrieNode structure caused cache miss on each comparison iteration.

Placing the child key in the node itself makes these comparisons much faster because they keys are localized in CPU cache

0.2.1 - 2017-12-19

0.2.0 - 2017-12-17

0.1.2 - 2017-12-12

0.1.1 - 2017-12-12