v0.11.3 - Menaces with Spikes
Mostly housekeeping this time, but it's good housekeeping. There's one fairly important bug fix where, if you had arrays with duplicate items in objects being indexed, goiardi would crash trying to index it. Surprisingly, this didn't come up very often. Also, it was surprisingly difficult to duplicate the crash, with lots of false starts and ideas.
Otherwise, the biggest things are new command line flags so you can configure MySQL or Postgres without using the config file, being able to configure almost all command line flags via environment variables now (which should make running goiardi in docker a bit easier), and optionally trimming the length of values in objects stored in the index. Other than that, there was some documentation cleanup and tweaks to packaging.
From the CHANGELOG:
* Add an option to trim values in search indexes. Currently not enabled by default, but will be in the next minor goiardi release (so, either 0.12.0 or 1.0.0, depending on which ends up being next). Existing indexes ought to be reindexed upon upgrading, but they should still work if this is skipped. * Fix a bug where duplicated items in slices in objects being indexed with the in-memory trie based index would cause goiardi to crash. For good measure, even though it isn't necessary to prevent a crash remove those same duplicate items from objects being indexed with the postgres index. * Mark --use-unsafe-mem-store as deprecated. In the unlikely event someone's using that option, a warning will print in the log. This option may be removed at any time. * Allow setting configuration options via environment variables. (See the documentation for the details.) * Finally allow configuring MySQL or PostgreSQL connection options with command line flags (or, now, environment variables). * Fixed format issues and wording in a few places in the documentation, along with updating the docs for the current version. * Add a hidden flag to generate a simple man page. * Add that simple man page, along with the html docs, to the packagecloud.io packages. * Add a Dockerfile to allow running the local goiardi source in docker. * Add Debian "stretch" and Ubuntu "yakkety yak" to the distro versions we have in the package repository.