v2.0.0-rc1 prerelease

# WARNING: This is a pre-release!

# Release notes

This release contains so much stuff that it deserved the big version bump: new UI, tons of new options for database maintenance and extra keys to play around with. Please feel free to explore the new UI and contact me if you have any suggestions or issues to report. The secret debug page is still there, and it’s still quite rough.

# You should (not) use this.. ?

I am on the verge on recommending this or not even at this early stage. On one hand, I haven’t had enough time to test it myself, but on the other, BadgerDB currently has a VERY NASTY bug that corrupts the database files in a completely unrecoverable way if your PC turns off due to power loss and that has made me lose a lot of important stuff. Because of the gravity of the problem, I have rushed a backup system which is currently not in the best shape but does work.

Starting with this release, the default will be for strimertul to dump the entire database in a backups folder every hour (the interval can be changed via command line parameter, and you can also disable the process altogether). There is no rotation system yet, so you will have to clean up the old backups when the folder gets too big. I hope to address this issue before the main v2 release.

There’s also two kinds of backups: Automated backups use BadgerDB’s own binary format and they can be restored using the -restore argument when launching strimertul. If your database is corrupted, delete it (the data folder) before starting strimertul.

Another kind of backup is a JSON file containing a dictionary with all the key/value pairs, they use the -import/-export arguments. This is more for modifying the database offline than actual backup, but it could work as backups in a pinch.

# Changelog

# Added

  • New UI: Strimertul now features a more slick and better organized UI.
  • Database operations: You can now export and import the entire database as JSON files
  • Database backups: The database will periodically save optimized copies of itself in a backup directory, directory and intervals are both configurable, though for the time being you might need to periodically clean it before it becomes too large.
  • Manual garbage collection: You can now launch strimertul with --run-gc to manually trigger garbage collection for the database. This will launch strimertul, execute a round of garbage collection and exit.
  • Exposed internal metrics via keys: twitch/chat-activity and twitch/stream-status now expose previously internal-only info about the current stream.

# Changed

  • A lot of the command line parameters have changed syntax (eg. from -noheader to -no-header), please check the new formats using -h if you rely on them.
  • Database schema has slightly changed, strimertul will auto-migrate to the new format if it detects old schema in use.
  • Twitch chat history doesn’t have an explicit toggle anymore, they are always enabled unless the chat_history setting is set to 0.

# Known issues

  • The update checker doesn’t check if the current version is newer than the last stable, so it will show up all the time.

# Downloads

This release was originally published on GitHub and converted, you can find the original release here: v2.0.0-rc1 on GitHub