Commit Graph

870 Commits

Author SHA1 Message Date
David Dworken
03363efbf6
Add basic fix for #225 by escaping tab characters before rendering
This is a tricky bug to fix because the width of a tab character varies depending on context. This means that when we're trying to build a table and calculating the width of columns for budgeting, we can't actually know the width of a tab without knowing exactly what characters come before it. This is in theory doable, but it leads to some really complex code that I'd rather not adopt.
2024-08-11 12:29:38 -07:00
David Dworken
c10afa40c3
Add ability to skip config modifications for #212 (#216)
* Add ability to skip config modifications

* Update golden names to fork on OS

* Remove incorrect newline in golden
2024-08-11 12:29:38 -07:00
David Dworken
ea25e4f981
Add full fix for #215 along with a test to reproduce the issue (#218) 2024-08-11 12:29:38 -07:00
David Dworken
6173de2dea
Fix duplicate pre-saving issue reported in #215 (#217) 2024-08-11 12:29:37 -07:00
David Dworken
f636649658
Revert "Fix duplicate pre-saving issue reported in #215"
This reverts commit 336b331687.
2024-08-11 12:29:37 -07:00
David Dworken
f0dbf02d63
Fix duplicate pre-saving issue reported in #215 2024-08-11 12:29:37 -07:00
guangwu
2b024c8054
fix: close file (#213) 2024-08-11 12:29:37 -07:00
David Dworken
ef12e998bb
Add support for enabling/disabling syncing post-install 2024-08-11 12:29:37 -07:00
David Dworken
a4c3afeb0f
Add support for custom key bindings for #190 (#209)
* Add support for custom key bindings for #190

* Add tests for configuring custom key bindings

* Simplify key bindings test

* Add docs on custom key bindings + error message for unhandled actions
2024-08-11 12:29:37 -07:00
David Dworken
5c6006d581
Remove darwin-21 goldens since they're no longer used now that GH upgraded their macos image (#210) 2024-08-11 12:29:37 -07:00
David Dworken
b4f4da5fef
Fix test broken by 7ae9f15b by making sure input is sent and processed as separate events and updating the golden to reflect this 2024-08-11 12:29:37 -07:00
David Dworken
dc627f09cd
Fix test broken by 7ae9f15b by making sure input is sent and processed as separate events 2024-08-11 12:29:37 -07:00
David Dworken
1def962555
Fix test broken by 7ae9f15b by making sure input is sent and processed as separate events 2024-08-11 12:29:37 -07:00
David Dworken
60cbb1976c
Fix double-syncing error where devices receive entries from themselves #202 (#204)
* Fix double-syncing error where devices receive entries from themselves

* Fix incorrect error message

* Add TODO

* Update TestESubmitThenQuery after making query more efficient

* Update TestDeletionRequests and remove unnecessary asserts

* Swap server_test.go to using require

* Fix incorrect require due to typo
2024-08-11 12:29:37 -07:00
David Dworken
e7b4395b16
Add --port flag for the web UI for #203 2024-08-11 12:29:37 -07:00
David Dworken
ca90ab65c9
Add index of start time so that queries with a LIMIT clause can avoid a full table scan (for #202) 2024-08-11 12:29:37 -07:00
David Dworken
5290f6dfb8
Add benchmarking for searching for #202 2024-08-11 12:29:37 -07:00
David Dworken
38ce0abd9a
Revert "Add mouse scrolling support for #200" since it breaks the ability to highlight text
This reverts commit 7d9bb6654d.
2024-08-11 12:29:37 -07:00
David Dworken
6c1054351f
Add mouse scrolling support for #200 2024-08-11 12:29:37 -07:00
David Dworken
a936644385
Clean up: Remove duplicated code by calling existing utility function 2024-08-11 12:29:37 -07:00
David Dworken
3589e8cf49
Add support for forcing init without prompting via --force flag for #198 2024-08-11 12:29:37 -07:00
David Dworken
68b3311a07
Add test for horizontal scrolling other columns for #188 2024-08-11 12:29:37 -07:00
David Dworken
8e7096cff8
Remove minor version numbers from os versions for golden files for tests 2024-08-11 12:29:37 -07:00
David Dworken
2b4be24789
Enable colored golden tests for linux (#184)
* 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
2024-08-11 12:29:37 -07:00
David Dworken
c1729f1ee2
Add ability to configure custom OpenAI API endpoint for #186 (#194)
* Add ability to configure custom OpenAI API endpoint for #186

* Ensure the AiCompletionEndpoint field is always initialized
2024-08-11 12:29:37 -07:00
David Dworken
8f4aff30fe
Add support for horizontal scrolling of all columns for #188 (#195) 2024-08-11 12:29:37 -07:00
David Dworken
b4f18162b4
Add better error message for SLSA failures 2024-08-11 12:29:37 -07:00
David Dworken
41f7cc84f9
Update slsa-verifier to attempt to fix SLSA breakage 2024-08-11 12:29:37 -07:00
David Dworken
a95ba3c5ba
Delete an unused file 2024-08-11 12:29:37 -07:00
David Dworken
13f0e8d4eb
Delete temporarily unused goldens 2024-08-11 12:29:37 -07:00
David Dworken
35916fc9ab
Add updated goldens 2024-08-11 12:29:37 -07:00
David Dworken
5344b448c4
Disable colored output tests 2024-08-11 12:29:37 -07:00
David Dworken
2032580d9d
Update golden 2024-08-11 12:29:37 -07:00
David Dworken
4e49ff10ef
Update test golden 2024-08-11 12:29:37 -07:00
David Dworken
1d5adb08b9
Update colored golden 2024-08-11 12:29:36 -07:00
David Dworken
f138f4cf9c
Improve word boundary algorithm to ignore previous spaces so that control+arrow-keys will skip over repeated spaces 2024-08-11 12:29:36 -07:00
David Dworken
e955e884ef
Add basic readline-like support for using control-left and control-right to scroll horizontally by one word at a time 2024-08-11 12:29:36 -07:00
David Dworken
0a76c875e4
Add support for control-A and control-E shortcuts similar to GNU readline 2024-08-11 12:29:36 -07:00
David Dworken
87c2cde688
Wire through the shell name into AI suggestions so that we can get more precise AI suggestions for the current shell 2024-08-11 12:29:36 -07:00
David Dworken
972170573a
Add ability to disable auth and force specific creds for the web UI 2024-08-11 12:29:36 -07:00
David Dworken
3b62e9d464
Add web UI for querying history from the browser (#180)
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
2024-08-11 12:29:36 -07:00
David Dworken
7e2ed6d595
Remove unnecessary sub-shell, since we just need a truthy value here 2024-08-11 12:29:36 -07:00
David Dworken
3751e45717
Make bash support lenient with empty history lines, which seems to happen for the first command or two of new installs 2024-08-11 12:29:36 -07:00
David Dworken
cad4bd96e3
Add sync server to status -v #176 so that self-hosted users can easily confirm they're using the self-hosted server (#178) 2024-08-11 12:29:36 -07:00
David Dworken
33bc582d8b
Run integration tests in parallel to speed up testing (#175)
* 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
2024-08-11 12:29:36 -07:00
David Dworken
ae5edb7d3e
Improve install.py script to attempt to detect when /tmp/ is noexec (#172)
* 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/
2024-08-11 12:29:36 -07:00
David Dworken
0126844e8b
Add || true to fully fix #166 2024-08-11 12:29:36 -07:00
David Dworken
307637b26e
Properly silence which output to fix #166 2024-08-11 12:29:36 -07:00
David Dworken
82f819d369
Fix handling of new lines in commands for #163 (#170)
* Fix handling of new lines in commands for #163

* Move code for table from lib.go to query.go

* Update goldens
2024-08-11 12:29:36 -07:00
David Dworken
d27c3cd8e4
Log OpenAI error to debug log for #167 2024-08-11 12:29:36 -07:00