Skip to content


Choose a tag to compare
@bmschmidt bmschmidt released this
· 216 commits to master since this release


This is a major set of ease-of-use improvements defining a new server side API. The most important elements are:

  1. The whole release is organized as a python module; rather than clone the repo for each bookworm, you now install it system-wide.
  2. All build and update tools are bundled inside a command line executable installed with the package and accessible as bookworm. After installing, type bookworm --help for an outline of the functions.
  3. The API code, previously a separate repo, has been folded into this framework, accessible through the command line as bookworm query.
  4. An easy-to-set-up webserver is available through bookworm serve for testing and local data exploration.
  5. Setup help is included under bookworm config mysql.
  6. A new command bookworm add_metadata makes it easier to extend the metadata around a library.
  7. The beginnings of test suite are included, including most importantly a standardization of the Federalist papers test set to make sure that Bookworm is configured properly.

It also incorporates various bugfixes. A slightly more extended discussion is available here

I'm naming it "Whitman" because, much like Leaves of Grass, this version is folding a lot of previous stuff from various sources into one updated omnibus volume.

I'm going to let this sit for a little while for comment, but hopefully we can move this straight into a 1.0 alpha release. I would consider doing this now, except that at 1.0, the vocabulary needs to be set in stone to abide by semantic versioning.

Usability improvements

  • A more consistent API with command line help. Type bookworm --help after installing for some examples.
  • All submodules now use the logging module to write errors. This means that problems can be more easily debugged by running with bookworm --log-level=DEBUG ... without extraneously dumping all that stuff out.