* Enable golden tests for linux and ensure all goldens get saved as outputs
* Swap in OS specific goldens
* Update colored goldens to take into account OS version, since different macos versions have different behavior here
* Update goldens
* Re-enable golden tests
* Add missing golden
* Empty commit
* Remove linux kernel version from OS name
As requested in #176 and #147
* Add initail version of a web UI for querying history from the browser
* Rename webui command
* Add basic test for the web UI
* Add README for the web UI
* Add basic auth for the web server
* Add status code when panic-ing
* Remove a few direct DB insertions to prepare for parallel tests
* Revert "Remove a few direct DB insertions to prepare for parallel tests"
This reverts commit f8a3552ad8.
* Add rudimentary experiment of splitting tests into two chunks to make them faster
* Add missing tag
* Remove code that enforces that all goldens are used, since it is incompatible with how tests are currently split into chunks
* Lay out the framework for checking goldens being used across all test runs
* Fix missing brace
* Revert "Remove code that enforces that all goldens are used, since it is incompatible with how tests are currently split into chunks"
This reverts commit 06cc3eedbc.
* Add initial work towards checking that all goldens are used
* Delete incorrect and unreferenced matrix
* Upgrade actions/upload-artifact to see if that makes the download in the next job work
* Alternatively, try downloading the artifact by name
* Update golden checker to read all the golden artifacts
* Swap to using glob to enumerate all golden files, rather than hardcoding them
* Remove debugging commands
* Remove goldens that are actually used
* Remove another golden that is actually used
* Add more comprehensive support for test sharding
* Fix references to test shards and increase shard count
* Shard the fuzz test
* Add debug prints
* Mark additional tests for sharding
* Fix logic error that broke test sharding
* Remove debug print
* Fix incorrect logic with skipping the fuzz test
* Move sharding functions to testutils and add some comments
* Upgrade all setup-go actions to enable caching of deps
* Remove goldens that don't exist
* Remove new line
* Reduce delay
* Correct stage name
* Remove incorrect skip code from the first version of sharding
* Remove unused import
* Reduce number of test shards to match GitHub's limit of 5 concurrent macos jobs
* Use cask for installing homebrew to speed up github actions
* More cleanup for unused goldens
* Improve install.py script to attempt to detect when /tmp/ is noexec
* Add test to install from python script at HEAD
* Remove incorrect duplicated line
* Delete the tmp hishtory-client download since it may be dropped in CWD rather than /tmp/
* Add ability to configure a default filter (for #76)
* Add test for color of default filter
* Add basic test for default filter
* Add goldens for tests
* Add more tests for default filters
* Update goldens
* Add another golden
* Update goldens
* Remove debug log
* Add golden to allowlist
* Update goldens
* Invert condition so that a bunch of golden tests only run on actions, since that is now our primary testing environment
* Update goldens to match them on GH actions
* Update goldens to split them based on OS so they can run on GH actions
* Add runtime.GOOS to golden names
* Update goldens that are now split by OS
* Update another test to fork on OS
* Update shell exclusion to properly exclude fish
* More golden updates
* Add more goldens
* More goldens
* Move golden files to testdata dir
* Add assertion that requires that all goldens are used
* Add map init so the map is non-nil
* Add print to confirm that tests finished running
* Remove colon so that this doesn't match against gotestsum looking for the substring "panic:", which can happen depending on how stdout is buffer
* Revert "Remove colon so that this doesn't match against gotestsum looking for the substring "panic:", which can happen depending on how stdout is buffer"
This reverts commit b44e53a17b.
* Add support for configuring the TUI color scheme, for #134
* Add tests for getting and setting the custom color scheme, and support full colors where terminals support them
* Add comments to document termenv.ANSI setting, and fix tests so they work uniformly
* Add support for quoted searchs for exact matches, for #135
* Add support for quoting search queries
* Fix spliteEscaped so that it works with escaping dashes and colons in search queries
The previous method of filtering duplicates only worked on duplicates that occurred consecutively. Since dupes happen out of order often, this switches the logic to instead use a map of seen commands and filter based on that.
* Make TUI always take exactly the full width of the terminal through more precise calculations of the overhead used for the table
* Update TUI goldens for more accurate TUI sizing
* More golden updates for wider table sizing
* Include failed test goldens as artifacts for easier test fixing on github actions