Commit Graph

827 Commits

Author SHA1 Message Date
David Dworken
8fd809fdc8 Improve AI suggestions by specifying shell name and OS in OpenAI query 2023-12-19 20:50:29 -08:00
David Dworken
d3baf03dde Add TODO 2023-12-19 19:12:04 -08:00
David Dworken
054744248c Enable hishtory shell completions by default 2023-12-19 19:12:04 -08:00
David Dworken
8082bd5a2d Add support for single quotes in search queries, and add a heuristic to avoid consuming unclosed quotes 2023-12-19 19:09:21 -08:00
David Dworken
60f5a222c0
Add config-remove as an alias for config-delete 2023-12-19 15:03:55 -08:00
David Dworken
c735fee3d5
Add aliases for plural config options in case people type the singular version 2023-12-19 09:34:12 -08:00
David Dworken
8b7e54eab4
Add support for configuring the TUI color scheme, for #134 (#146)
* 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
2023-12-18 20:32:11 -08:00
David Dworken
1b3fa944bd
Add support for quoted searchs for exact matches, for #135 (#145)
* 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
2023-12-12 22:20:49 -08:00
David Dworken
1be8e2cb47
Add some extra assertions to test various config-get commands 2023-12-11 20:49:28 -08:00
David Dworken
559fac57f9
Fix bug that made config-get timestamp-format require an argument 2023-12-11 20:44:18 -08:00
David Dworken
7272ca8448
Delete data from backend when uninstalling, fixes #132 (#143) 2023-12-10 09:15:11 -08:00
David Dworken
3a49c9c11f
Make hishtory work with set -o nounset for bash and zsh, for #142 (#144) 2023-12-10 09:14:12 -08:00
David Dworken
2d2c393bf9
Fix TUI code that tracked whether a search query is pending so it doesn't show the pending message when no query is pending 2023-12-09 15:51:04 -08:00
David Dworken
49daaa4da5
Update tests after #139 2023-12-06 20:46:19 -08:00
David Dworken
a26fc5b360
Add more special handling for extra tiny terminals (#140)
* Add more special handling for extra tiny terminals

* Add tests for extra compact terminals
2023-12-06 16:12:41 -08:00
David Dworken
3d6578c7f6
Add TODO for testing for #139 2023-12-05 21:44:39 -08:00
Ben
c8643d5a2b
Filter duplicates with map (#139)
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.
2023-12-05 21:43:01 -08:00
David Dworken
8b83e2bbb5
Improve vertical sizing for small terminals, fixes #137 (#138)
* Improve vertical sizing for small terminals, fixes #137

* Add tests for tiny terminals + update test goldens for tiny terminals after compact sizing
2023-12-03 21:56:45 -08:00
David Dworken
bdaf0f8a65
Make TUI always take exactly the full width of the terminal through more precise calculations of the overhead used for the table (#136)
* 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
2023-12-03 13:15:38 -08:00
David Dworken
6dc366fe47 Add test for presaving while offline 2023-11-24 16:46:22 -08:00
David Dworken
18ef74656c Add presaving test for fish 2023-11-24 16:46:22 -08:00
David Dworken
caac6ac9ee Add test for disabling presaving 2023-11-24 16:46:22 -08:00
David Dworken
09d0ddd587 Add TODO 2023-11-24 16:46:22 -08:00
David Dworken
a667585962 Fix incorrect reference when handling config updates 2023-11-24 16:46:22 -08:00
David Dworken
b86d6c2ef1 Remove debugging print in test 2023-11-24 16:46:22 -08:00
David Dworken
7bb2945901 Swap back to using the strict version for capturing tmux 2023-11-24 16:46:22 -08:00
David Dworken
fb96852b2d Another attempt at fixing broken tests with presaving 2023-11-24 16:46:22 -08:00
David Dworken
6483e9817e Another attempt at fixing testControlR/bash with presaving 2023-11-24 16:46:22 -08:00
David Dworken
1668231992 Remove incorrect new line in golden file 2023-11-24 16:46:22 -08:00
David Dworken
570ae3e8ac Add additional check against hishtory export to help debug control-r test failures that only reproduce in github actions 2023-11-24 16:46:22 -08:00
David Dworken
428db61064 More test fixes for presaving 2023-11-24 16:46:22 -08:00
David Dworken
db685c6d70 More test fixes for presaving 2023-11-24 16:46:22 -08:00
David Dworken
b2de9e1b18 Fix more tests 2023-11-24 16:46:22 -08:00
David Dworken
1f6ba1e5fe Fix more tests for presaving 2023-11-24 16:46:22 -08:00
David Dworken
3f1d5c9cd0 Improve debug log message to include more relevant information 2023-11-24 16:46:22 -08:00
David Dworken
40caf8dac7 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
be1cd75550 More text fixes 2023-11-24 16:46:22 -08:00
David Dworken
471f26ace5 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
d712a6fdc5 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
1ab8f54167 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
96799452d8 Fix/simplify more tests for enabling presaving by default 2023-11-24 16:46:22 -08:00
David Dworken
8f0c56e384 Update a bunch of tests to reflect presaving which means that the hishtory command that is being tested will show up as a hishtory entry 2023-11-24 16:46:22 -08:00
David Dworken
b1733b0325 Update a bunch of tests to reflect presaving which means that the hishtory command that is being tested will show up as a hishtory entry 2023-11-24 16:46:22 -08:00
David Dworken
b3e145d764 Enable presaving by default rather than having it gated behind BetaMode 2023-11-24 16:46:22 -08:00
David Dworken
4f7cef19c9
Add more debugging info when status -v shows the device is offline 2023-11-24 16:09:16 -08:00
David Dworken
a1d1c779d5
Mark all github action tests as integration test devices 2023-11-23 09:53:12 -08:00
David Dworken
3a98b10e47
Add comment 2023-11-22 20:48:23 -08:00
David Dworken
30b5478104
Add additional error checking that should never trigger 2023-11-22 20:45:38 -08:00
David Dworken
4d2b02e2c3
Add error checking when clearing the DB during the init process 2023-11-22 20:45:18 -08:00
David Dworken
af8ace69dd Add loading spinner for slow searches, primarily to benefit AI queries since they are quite slow 2023-11-21 05:53:10 +01:00
David Dworken
05088d4bed Add comment to explain some confusing logic that we do have to keep 2023-11-19 09:41:05 +01:00
David Dworken
5bf734606f Swap to using hishtory getTimestamp to get the precise timestamp since this gives us a precise timestamp even on MacOS 2023-11-19 09:41:05 +01:00
David Dworken
d8b83b9429
Add getTimestamp command as an internal command that will be used as an alternative to date since date on MacOS doesn't support nanosecond granularity 2023-11-18 12:01:40 -08:00
David Dworken
a453a858b6
Revert "Enable highlighting of search matches by default for new installs (see #112)" because it breaks some tests
This reverts commit 6c24ddfd46.
2023-11-12 09:14:57 -08:00
David Dworken
c52dbebb1b
Consolidate TODOs 2023-11-12 05:04:55 -08:00
David Dworken
6c24ddfd46
Enable highlighting of search matches by default for new installs (see #112) 2023-11-12 05:00:47 -08:00
David Dworken
0be6fe9724
Swap AI completions to be behind a dedicated config option and add docs on it 2023-11-12 03:09:56 -08:00
David Dworken
aeadaf4e0d Set OPENAI_API_KEY for testTui/ai so that it runs with the hishtory server rather than via directly querying OpenAI 2023-11-12 02:57:23 -08:00
David Dworken
dd6cf710c7 Remove outdated TODO 2023-11-12 02:57:23 -08:00
David Dworken
a8f47cf340 Fix testTui/ai test and add golden file for it 2023-11-12 02:57:23 -08:00
David Dworken
e712d77f62 Add more guarding against panics when doing indexing into split strings 2023-11-12 02:57:23 -08:00
David Dworken
37e0e6653d Remove unnecessary field 2023-11-12 02:57:23 -08:00
David Dworken
c4b60eb6b2 Clean up tests to make panics not happen for TUI test failures by moving repeated code line to a function at also adds a require 2023-11-12 02:57:23 -08:00
David Dworken
3df099c945 Fix AI test by quoting the sent keys to ensure zsh doesn't complain about the question mark 2023-11-12 02:57:23 -08:00
David Dworken
a184bd4243 Remove question mark to debug the AI test 2023-11-12 02:57:23 -08:00
David Dworken
6962233e1e Better log messages and error messages 2023-11-12 02:57:23 -08:00
David Dworken
afe1a38a0e Fix 2d63263b79 by applying the override on the backend rather than in the client-side variable that isn't actually being referenced 2023-11-12 02:57:23 -08:00
David Dworken
b0f3107da2 Add basic test for AI queries 2023-11-12 02:57:23 -08:00
David Dworken
0ea3ce2399 Add basic debouncing for AI integration + implement AI suggestions via hishtory API endpoint 2023-11-12 02:57:23 -08:00
David Dworken
eb835fe52c Add initial version of AI searching, but with a broken implementation of debouncing 2023-11-12 02:57:23 -08:00
David Dworken
68142bf5fb
Fix #123: Fix bug with deleting custom columns and also generally improve logic for creating/removing custom columns 2023-11-12 02:05:51 -08:00
David Dworken
d69176fb5c
Update SLSA integration to always prompt the user before suspected broken updates 2023-11-11 11:26:39 -08:00
David Dworken
99d899254a
Fix %v that should have been a %w so that we can use errors.Is reliably 2023-11-11 11:24:16 -08:00
David Dworken
9ea10d2fcd Revert "Add t.Skip() call for broken test"
This reverts commit 63d0a8e457.
2023-11-10 10:20:59 -08:00
David Dworken
14d851a413 Revert "Revert "Remove t.Skip() call to determine if this test is actually flaky""
This reverts commit b013c51c80.
2023-11-10 10:20:06 -08:00
David Dworken
b013c51c80
Revert "Remove t.Skip() call to determine if this test is actually flaky"
This reverts commit cea481816f.
2023-11-09 23:04:17 -08:00
David Dworken
cea481816f
Remove t.Skip() call to determine if this test is actually flaky 2023-11-09 23:03:27 -08:00
David Dworken
2a47f1f600
Add TODO 2023-11-09 23:02:42 -08:00
David Dworken
63d0a8e457
Add t.Skip() call for broken test 2023-11-09 23:01:55 -08:00
David Dworken
1975f51052
Call m.Run() in TestMain so that lib tests actually get executed, and fix test breakages that existed because lib tests weren't running 2023-11-09 23:00:20 -08:00
David Dworken
165cdd9187
Update slsa integration to use the shared library for parsing version strings 2023-11-09 20:52:21 -08:00
David Dworken
19b9f67724
Fix bug with automatic cd-ing where quoting the directory caused tildes to not get expanded into the user's homedir 2023-11-06 21:39:01 -08:00
David Dworken
e1f69f8731
Add TODO 2023-11-06 18:44:28 -08:00
David Dworken
a180c850a9
Add extra require to ensure that the next line doesn't panic if the string isn't present, since that interferes with gotestsum 2023-11-06 18:44:14 -08:00
David Dworken
c918bcd3cb
Update slsa validation to not validate version when running in github actions, since the one in actions isn't associated with a released version 2023-11-05 01:15:54 -07:00
David Dworken
29142df382
Add additional check that checks that the version is valid per semver 2023-11-05 00:38:21 -07:00
David Dworken
c908a9a6dd
Add a hidden validate-binary command that can be used to run SLSA validations against a given binary. This will be used for CI/CD tests in the automated releases 2023-11-03 18:19:36 -07:00
David Dworken
7f8772af3a
Fix test that I forgot to update in 588e2f4405 2023-11-01 22:09:49 -07:00
David Dworken
8493224e23
Add TODO 2023-11-01 18:04:40 -07:00
David Dworken
588e2f4405
Fix bug where cd-ing wouldn't work if the changeDir contained a space 2023-11-01 18:03:14 -07:00
David Dworken
166661dd7f
Remove arbitrary limit of only supporting 10 custom columns 2023-10-30 17:51:07 -07:00
David Dworken
f8b515c328
Update custom column support to also automatically retry DB errors to further harden against issues like #119 2023-10-30 17:50:47 -07:00
David Dworken
5f9ff9e158
Fix bug that caused unreleased presaving feature to accidentally save entries that were prefixed with a space 2023-10-30 17:42:09 -07:00
David Dworken
be377dee82
Add TODO 2023-10-30 17:40:47 -07:00
David Dworken
4352f61123
Add automatic retrying of DB functions to fix DB locked errors from hishtory init and hishtory install for #119 2023-10-29 21:13:10 -07:00
David Dworken
a6e6f6504c
Remove TODO that is out of date 2023-10-28 15:13:24 -07:00
David Dworken
fcf05ac21a
Add tests for errors in testTui 2023-10-26 17:42:50 -07:00
David Dworken
390f37f20c
Update testTui tests to run with online and offline installs 2023-10-25 20:44:26 -07:00
David Dworken
00129a5372
Add extra new lines to fix warnings ending up on the same line 2023-10-25 20:26:41 -07:00
David Dworken
93cffd98b4
Replace e50f4d164 with query IDs so that we properly handle deletions. See e50f4d164 for full details on the bug that this fixes. 2023-10-25 20:07:09 -07:00