Skip to content

1.8.1 — Lavender Town

Compare
Choose a tag to compare
@Morwenn Morwenn released this 25 Oct 16:07
432511a

DOI

It's spooky month in Pokémon Go, and as a result I've found myself listening to several remixes of the Lavender Town theme - an all-time favourite of mine - while preparing this release. Consider it project culture now that bugfix releases are named after songs since I can't wait for something specific to happen to me to name those (which is something I tend to do with other releases).

The release itself is mostly a number of bug fixes, documentation fixes and tiny improvements. Most of those were the result on working on several smaller sorting-related projects that share some code with cpp-sort.

Bug fixes

Improvements

  • Fix the implementation of the Tukey's ninther used for pivot selection by quick_sorter and quick_merge_sorter. A bug in the elements being swapped meant that a value further away from the median was picked sometimes. It is unknown whether this was sufficient to change the complexity of the algorithm, but no significant difference in speed was noticed after the change.
  • The bidirectional iterators version of verge_sorter now returns early if the collection is already sorted.
  • poplar_sorter was tweaked to ensure that it only ever performs a single memory allocation to track the poplars.

Tooling

  • Specifically download Catch2 v2.13.2 when no suitable version of Catch2 is found on the system. This is technically a bugfix since the master tag was use so far for the download, and it was recently removed from the repository.
  • The conanfile.py now raises a ConanInvalidConfiguration error when the target compiler does not support C++14.
  • Update the original research page of the wiki with up-to-date information.
  • Add a checklist of tasks to perform when releasing a new version of the library. This should prevent some issues that commonly occur while preparing a release.
  • Change the Conan badge in the README to point to the new Conan Center website.

Known bugs

I didn't manage to fix every bug I could find since the previous release, so you might want to check the list of known bugs.