Commit Graph

166 Commits

Author SHA1 Message Date
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
0c202e4130 Delete no longer used function 2023-09-24 18:09:41 -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
cc11916f3c Create func to automatically create DB indexes rather than just documenting them in a comment that has to be manually executed 2023-09-22 19:11:43 -07:00
51f2c15f35 Add index for deletion requests now that the volume of deletion requests will increase 2023-09-22 19:01:27 -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
1e43de689f Optimize number of round-trip HTTP connections made by the client by having the submit handler return metadata about whether there are pending dump/deletion requests
For now, I'm still keeping the dedicated endpoints for those functionalities, but since most of the time there are no dump/deletion requests this should cut down the number of requests made by the client by 2/3.
2023-09-21 11:35:24 -07:00
c08c9d68ff Add comments for shared data structures 2023-09-21 10:21:07 -07:00
2b115844f4 Improve testutils server runner to persist logs and kill existing servers automatically 2023-09-13 20:23:09 -07:00
3c0d3561fb Merge remote-tracking branch 'origin/master' into sergio/db 2023-09-11 10:15:53 -04:00
f9ee8ed189 use DateOnly as local constant instead of using the imported time package 2023-09-11 10:15:42 -04:00
2ccbb8d587 Store timestamps in DB in Unix time, and display them in the Local time for consistent TZs in displays, and to ensure ordering is correct
This fixes a bug where entries could be out of order if they were recorded on machines in different TZs (e.g. if one machine had the TZ set to UTC). Admittedly, this commit isn't a perfect fix since
it doesn't change all the existing hishtory entries to be stored in UTC, but this just means that the ordering bug will continue to exist for historical entries, but be fixed for new entries. And
for our purposes, that is good enough. :)

 # Please enter the commit message for your changes. Lines starting
2023-09-09 12:28:01 -07:00
382f234c09 remove usage_data related queries from the main package into a database package 2023-09-08 10:58:01 -04:00
25eae144d8 Revert all tmpfs related commits, since running in a tmpfs doesn't seem to meaningfully improve test reliability 2023-09-04 18:03:46 -07:00
9b06e6980a Revert 2ca6c751d0 and instead have BackupAndRestore keep files on the same mount point 2023-09-02 20:09:22 -07:00
2ca6c751d0 Avoid constantly copying the binary back and forth to make tests faster on github actions 2023-09-02 19:51:43 -07:00
c0f33a3456 Swap from os.Rename to a custom implementation that copies files to support cross-device renames, as needed for making ~/.hishtory/ a tmpfs for tests 2023-09-02 18:50:52 -07:00
ddddff0f1b Add automatic retries for the TestTui method which is sadly inherently flaky since it is akin to screenshot tests of a terminal 2023-08-29 23:23:21 -07:00
a79d401058 Make queries async for better TUI performance when sqlite is slow 2023-08-27 11:42:17 -07:00
201bedf020 Remove workarounds for half-implemented windows support 2023-05-19 17:16:17 -07:00
27cd544524 Add support for arm7 for #63 to support raspberry pis 2023-02-18 22:00:39 -08:00
413e2e438f Fix github actions golden paths 2023-02-13 20:49:41 -08:00
a4ae3f83ad Log goldenPath for golden not found errors 2023-02-13 20:20:45 -08:00
fea151261f Move goldens func to testutils and use it for some simple horizontal scrolling tests 2023-02-11 09:09:48 -08:00
f8b51e49da Support customizing HISHTORY_PATH for people who want to install hishtory in an alternate location to fix #54 2022-12-16 22:22:57 -08:00
7c86b812bf Add support for linux arm64 for #48 2022-12-11 20:39:45 -08:00
857e423e10 Fix linter errors + some general clean up 2022-12-11 20:31:50 -08:00
35444bf56e Swap ioutil to non-deprecated alternatives + clean up pre-commit errors 2022-11-27 11:59:06 -08:00
c603537137 Optimize the apiSubmit function to ensure that it doesn't lead to errors from large insertions 2022-11-26 10:31:43 -08:00
d4efc62df1 Add client-side code to ask for feedback when uninstalling 2022-11-16 21:54:05 -08:00
86f9d67aff Fix test failures caused by the cobra install command not respecting the secret key
Also added a persistLog() function so that I can easily inspect the hishtory logs from test runs.
2022-11-16 20:28:25 -08:00
49a1035169 Fix flakey test failures by removing cache=shared which is a discouraged mode (https://www.sqlite.org/sharedcache.html). WAL is sufficient for our purposes. Plus fix a bug where the TUI would go into an infinite loop if there were zero results. 2022-11-15 23:20:19 -08:00
53a417296e Improve backup and restore env function + fix makefile with quotes + remove the zdotdir created file 2022-11-13 16:53:37 -08:00
cda9c886e1 Introduce a helper method for checking if we're in github actions 2022-11-12 06:46:37 -08:00
ddc9dc1080 Better reset the local state to attempt to fix a github action failure 2022-11-12 06:42:10 -08:00
36ff3d362c windows: use a temp file rather than hardcoding /tmp/ since that doesn't exist on windows 2022-11-06 17:46:45 -08:00
456513d71e windows: restore the cd ../ behavior, but for windows 2022-11-06 14:42:01 -08:00
4a9b202e5f Windows: handle failing to read the VERSION file 2022-11-06 00:17:03 -07:00
6938035715 Windows: handle failing to read the VERSION file 2022-11-06 00:16:14 -07:00
f4925a0999 Windows: Disable killall on windows 2022-11-06 00:02:48 -07:00
c87ae611fb Just for fun, re-enable tests on github actions 2022-11-05 23:44:01 -07:00
e46221f893 Revert all the windows+freebsd commits since they seem to be hopelessly broken 2022-11-04 23:14:34 -07:00
43cc45b80d Add workaround for testutils searching for the hishtory dir 2022-11-04 21:50:45 -07:00
d4ca466314 Import initial history from fish too 2022-11-03 22:32:55 -07:00
c1d17842c4 Write the config fragment to the bash_profile for MacOs to fix #14 2022-11-03 21:01:57 -07:00