* Added sleep interval to settings
* Added new sleep setting to yt-dlp runner and added tests
* Added setting for form; updated setting name
* Updated form label
* Prevented saving/updating of media items if being throttled by youtube
* Added the bot message to the list of non-retryable errors
* Fixed typo
* Updated yt-dlp runner to take an action type
* Added actions to all callers of the yt-dlp runner
* [SQUASH] updated test files to use new mocking strategy
* Removed unneeded alias
* Added logic to ignore downloads that aren't in the right live state
* Added tests for get_downloadable_status method
* Added tests for media downloader module
* Added tests to download worker modeule
* Added 'use_cookies' column to source
* Added cookies to the source form
* Updated every command to optionally include cookies
* LOTS of tests
* Made YT cookies off by default
* Added ability to specify overwrite behaviour when downloading media
* Added helper for redownloading media items
* renamed media redownload worker to disambiguate it from similarly named methods
* Added new redownload option to source actions dropdown
* Refactored MediaQuery to use a __using__ macro
* docs
* Namespaced notification modules under lifecycle
* Added a JSON encoder for all the main model types
* Added startup task to create user script file
* Hook up user script event to media download
* Hooked up media deletion user script
* Added jq to docker deps
* Updated README
* Updated downloader and runner to handle sponsorblock failures more gracefully
* stopped download worker from running if a media item is preventing download
* Removes header to allow embedding in frame
* Escaped links in podcast RSS builder
* Turned homepage sections into clickable links
* Enabled live dashboard in all ENVs
* Ensured download worker always returns a 2-member tuple
* Adds method to improve cleanup of empty directories
* resolved bug where source metadata worker could call itself in an infinite loop
* Refactored file deletion for media items
* Removed useless filesystem data worker
* Updated task listing fns to take a record directly
* Refactored the way I call workers
* Improved some tests
* [WIP] break out a few contexts, start refactoring fast index modules
* [WIP] more contexts, this time around slow indexing and downloads
* [WIP] got all tests passing
* [WIP] Added moduledocs
* Built a genserver to rename old jobs on boot
* Added a module naming check; moved things around
* Fixed specs