Commit Graph

455 Commits

Author SHA1 Message Date
d404a73c9b Make history entry start times more precise (down to the nanosecond) to make the recorded runtime more accurate, since currently start times are rounded to the nearest second. Though note that 'date' on MacOS doesn't support %N, so this doesn't apply to MacOS 2023-10-07 14:47:54 -07:00
5323c264b3 Further improve history importing performance for #93 2023-10-07 14:41:34 -07:00
69b9b58cd0 Fix test that should have been updated in 3efe624 2023-10-07 11:06:56 -07:00
f5264b6eff Tweak ImportHistory so that all entries are guaranteed to have sequential timestamps that are monotonically increasing 2023-10-07 11:05:19 -07:00
c7d1abdc83 Add additional tests for history importing 2023-10-03 08:00:16 -07:00
d33bd6a046 Improve history import performance so that we can import 100k entries in ~6 seconds (down from ~20 seconds) 2023-10-02 22:27:24 -07:00
2e793b2c10 Test refactoring to remove a function that can be replaced with testify 2023-10-01 18:21:11 -07:00
0b57034c39 Revert "Revert all commits since v0.223 to enable me to release a patch on top of v0.223"
This reverts commit 68ed9f2d5d.
2023-09-29 18:21:23 -07:00
68ed9f2d5d Revert all commits since v0.223 to enable me to release a patch on top of v0.223 2023-09-28 22:15:30 -07:00
fdec51bd14 Update presaving for bash to use history 1 rather than BASH_COMMAND to ensure we don't log bash functions 2023-09-28 22:14:53 -07:00
5d46c94b13 Improve test for duplicate rows to make it more reliable/simple 2023-09-28 22:14:47 -07:00
5ac6f297fb Fix incorrect shell name in config.fish for pre-saving 2023-09-28 22:13:35 -07:00
9fda54d4c2 Remove testutils.Check(t, err) and replace it with require.NoError which gives a clearer error message and a full stacktrace 2023-09-28 22:13:27 -07:00
beb907d59e Add bolding of matching search results for #112, currently behind the beta-mode flag 2023-09-28 22:13:11 -07:00
6d5a86a8bb Revert all commits since v0.223 to enable me to release a patch on top of v0.223 2023-09-28 21:49:37 -07:00
d14dc1cd50 Update presaving for bash to use history 1 rather than BASH_COMMAND to ensure we don't log bash functions 2023-09-26 19:41:12 -07:00
753b7241a8 Improve test for duplicate rows to make it more reliable/simple 2023-09-26 19:38:21 -07:00
0627891be2 Add test for beta-mode enabling highlighting of matching queries 2023-09-24 17:57:40 -07:00
b3fa5c9a6b Add very basic TUI test that also tests how the TUI uses escape sequences for colors 2023-09-24 17:03:54 -07:00
eeacd6fa70 Fix incorrect shell name in config.fish for pre-saving 2023-09-24 16:31:46 -07:00
5121df5a8c Remove testutils.Check(t, err) and replace it with require.NoError which gives a clearer error message and a full stacktrace 2023-09-24 16:05:01 -07:00
0f375aacfc Add bolding of matching search results for #112, currently behind the beta-mode flag 2023-09-24 15:57:39 -07:00
e3c70beb6b Fix bug introduced in c00e5d where hishtory import would fail if shell history files didn't exist (e.g. because the user had never used zsh) 2023-09-23 20:37:41 -07:00
c3782dda18 Add additional error to IsOfflineError 2023-09-23 19:37:25 -07:00
1c2f9cf36c Run local server for TestAugmentedIsOfflineError and ensure that HISHTORY_TEST is set 2023-09-23 19:35:21 -07:00
8443292070 Augment IsOfflineError(err) so that it detects if the hishtory server is down, and will then treat all API errors as offline errors 2023-09-23 16:40:03 -07:00
ab12fa4d47 Fix consistency bug where ClientConfig would get out of date between different parts of the code 2023-09-23 12:40:57 -07:00
c00e5d357e Swap hishtory import to use iterators to improve import performance for #93 2023-09-23 12:19:06 -07:00
68c6bd6654 Improve TestTimestampFormat 2023-09-23 10:56:27 -07:00
e886763144 Make testCustomColumns simpler and more reliable 2023-09-23 05:34:36 -07:00
51ca2578b7 Follow up to e3d54e: Same thing for querying for pre-saved entries 2023-09-22 19:59:19 -07:00
e3d54e43e8 Make deletion request auto-retry SQLITE_LOCKED errors since deletion requests will now be much more common with pre-saving support 2023-09-22 19:47:10 -07:00
1d878195b2 Rework ff98a7907c to use the newly added EntryId column rather than deleting based on the start time 2023-09-22 14:03:41 -07:00
9b847c5e35 Further optimize client-server roundtrips by including deletion and dump requests in submit responses (follow up to 1e43de689f) 2023-09-22 13:49:29 -07:00
a5f11af150 Add initial code to support unique per-entry IDs
This code has two caveats for old entries:
1. the ID is being backfiled with a random per-(device,entry) ID. So the ID won't match cross-device.
2. the server-side ID will still be a random ID that is unrelated to the entry ID
2023-09-22 13:16:24 -07:00
2a5a6d65c4 Roll-forward "Add preliminary support for persisting pre-saved history entries remotely"
This rolls-forward commit 66916c27cb.
2023-09-22 13:13:46 -07:00
66916c27cb Revert "Add preliminary support for persisting pre-saved history entries remotely"
This reverts commit ff98a7907c. That commit is incomplete since it doesn't include support for the continous deletion of pre-saved history entries as soon as they
finish running. Support for this will require a good bit more work/thought, so reverting for and keeping this code in the git history.
2023-09-21 12:39:20 -07:00
ff98a7907c Add preliminary support for persisting pre-saved history entries remotely 2023-09-21 12:39:04 -07:00
1c4570586c Increase max supported line length for #93 2023-09-19 18:59:09 -07:00
216803f325 Bring back logic that was removed in c9da7a10e4 that made it so invalid initial search queries will get replaced with a query for the empty string 2023-09-18 22:21:10 -07:00
4f592f4aef Automatically retry search queries when the DB is locked to increase reliability (especially when the backend is down, which leads to more queries, and thus more instances of the DB being locked) 2023-09-18 19:22:26 -07:00
134061085b Fix bug in searching logic that caused gorm to template in NULL for non-null values 2023-09-17 20:24:48 -07:00
1d7ba41289 Avoid performance hit caused by pre-saving by presaving in the background 2023-09-17 14:11:44 -07:00
48e33d5034 Make the query input box in the TUI match the terminal dimensions 2023-09-14 21:14:16 -07:00
328c35a096 Add presaving support for fish 2023-09-14 21:03:36 -07:00
c5a7245991 Add bug fix for presaving history where entries would sometimes end up duplicated 2023-09-14 21:01:13 -07:00
01d9924cc0 Check sqlite DB error messages with Contains to be slightly more lenient 2023-09-14 12:32:50 -07:00
d4e01ceb11 Add another error message substring for detecting errors due to being offline, to improve #30 2023-09-13 22:49:40 -07:00
e8ceb02138 Move tui.go out of lib and into a separate package 2023-09-13 22:47:48 -07:00
6d6a1a5e12 Move a bunch of update-specific code out of the generic lib.go file and into the update command 2023-09-13 22:45:49 -07:00