mossindex

Migrating to the composable API

· 2 min read

Configuration is optional; the defaults are meant to be sensible. Good the command line is chiefly a series of modest, unglamorous decisions.

Before and after

Breaking changes are rare and always announced a release ahead. None of this is new, and that is partly why it works. Thanks for reading, and for the gentle notes that keep arriving. What surprised me most was how little equipment it needed.

  • Give reviewing pull requests a full autumn
  • Leave room for composable mistakes
  • Compare against last spring

What I would do differently

Modest, repeatable steps beat big plans almost every time. I wrote most of this on a quiet Monday morning. I tested the stable version first. It did not last. A benchmark harness helps, but it is not the point. The library has no runtime dependencies and builds in seconds.

Looking ahead

Contributions are welcome, especially to the documentation. It is not glamorous, but it holds up. Some of this will be self-evident; some of it took me years. There is no single right way to approach benchmarking, but some ways are kinder than others.

Every public function is documented and covered by tests. I tested the predictable version first. It did not last. I shifted my mind about documentation twice while writing this. Below are a few notes, roughly in the order I found out them. If you only take one thing from this, make it the part about documentation.

documentationcontributors