Commit Graph

896 Commits

Author SHA1 Message Date
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
dc166ec089 Move fuzz tests to a separate file and add a couple more tests to it 2023-09-22 08:43:58 -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
63dea34007 Add comment to document a somewhat confusing function 2023-09-21 11:35:47 -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
b05fb0f818 Fix typo-ed variable name 2023-09-21 11:25:26 -07:00
1c4570586c Increase max supported line length for #93 2023-09-19 18:59:09 -07:00
69047109ac Skip presaving the presave command, since it is currently spamming the recorded history entries in bash 2023-09-19 13:35:11 -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
c9da7a10e4 Make the initial search query for the TUI async so that the UI opens immediately, so that user's can start typing their query without any delay 2023-09-18 19:35:53 -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
f589a0b1ba Increment the test_retry_count metric for failures too to ensure that it captures tests that fail all retries 2023-09-17 23:07:10 -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
e6c76eb222 Make WHERE query for deleting presaved entries stricter and re-add in the error check that was removed in 713ee96a96 2023-09-17 14:38:48 -07:00
4c912cfaed Improve sh config file tweak function to make it stricter with presaving 2023-09-17 14:35:56 -07:00
1d7ba41289 Avoid performance hit caused by pre-saving by presaving in the background 2023-09-17 14:11:44 -07:00
713ee96a96 Delete error checking branch that isn't necessary because the filter condition above is much more precise now 2023-09-17 12:06:19 -07:00
4b99e4d0e8 Fix misleading error message that contained the wrong shell name due to a copy/paste mistake 2023-09-14 23:09:15 -07:00
48e33d5034 Make the query input box in the TUI match the terminal dimensions 2023-09-14 21:14:16 -07:00
30ba0bd35c Presaving clean up improvements: Skip presaving empty commands and make timestamp format clearer 2023-09-14 21:04:23 -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
9fcdb7f960 Add TODO for tui UX improvement 2023-09-14 20:40:35 -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
f3e4a4e1e6 Disable tquery test that is failing on github actions 2023-09-13 21:56:58 -07:00
b6b4dbe37a Add tests for presaving history entries 2023-09-13 20:29:06 -07:00
6540b4dbf6 Improve logged error messages for API failures 2023-09-13 20:24:25 -07:00
a039b19b9c Change root command name to all lower case so that the cobra-generated examples work correctly on case-sensitive file systems 2023-09-13 19:46:49 -07:00
763c8208f7 Make RetryingDbFunction more lenient so that it always ignores UNIQUE constraint errors, since if a DB.Create returns a UNIQUE error, then the create is not actually necessary 2023-09-13 19:20:15 -07:00
f1e2b8ddbf Update TestSortByConsistentTimezone to not use a golden for tquery since it was leading to occasional flakes, and swap it to using a regex. Also add a test for hishtory export as part of the sorting tests. 2023-09-12 19:09:01 -07:00
57c5a69f7d Fix bug where we failed to delete pre-saved history entries due to race conditions causing the DB to be locked 2023-09-12 18:55:13 -07:00
aebf526d1f Add TODO for a theoretical bug I noticed 2023-09-12 17:51:55 -07:00
c311b09844 Improve error messages when we fail to delete pre-saved history entries 2023-09-12 15:53:52 -07:00
2b3912c750 fix check for empty array result 2023-09-11 16:34:22 -04:00
9b871e93ed Fix consistent time zone sorting test to account for table sizing differences on github actions 2023-09-10 17:13:48 -07:00
c269e7832e Release v0.212 2023-09-09 15:17:55 -07:00
e3e3a7bd0d Add tablesizing command to get consistent table dimensions 2023-09-09 14:02:47 -07: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
223598c8f2 Remove golden that was forked for actions, that didn't need to be 2023-09-09 11:56:06 -07:00
b6b4499a42 Add a few more ExtraDelays + comments to further improve test reliability 2023-09-09 11:50:07 -07:00
4d7e685a6e Add ExtraDelay to make testTui/delete more reliable 2023-09-08 19:44:36 -07:00
ba099c384b Add statsd incr for overall test failure 2023-09-08 19:40:10 -07:00
27d5c59263 Skip datadog integratio on macos if colima fails to start, since colima appears to be flaky due to a code signing error 2023-09-08 19:27:16 -07:00
3a8243d25d Another set of extra delays for testTui/search, similar to 37c06a31db 2023-09-08 10:09:01 -07:00