David Dworken
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
David Dworken
ff98a7907c
Add preliminary support for persisting pre-saved history entries remotely
2023-09-21 12:39:04 -07:00
David Dworken
1c4570586c
Increase max supported line length for #93
2023-09-19 18:59:09 -07:00
David Dworken
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
David Dworken
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
David Dworken
c5a7245991
Add bug fix for presaving history where entries would sometimes end up duplicated
2023-09-14 21:01:13 -07:00
David Dworken
01d9924cc0
Check sqlite DB error messages with Contains to be slightly more lenient
2023-09-14 12:32:50 -07:00
David Dworken
d4e01ceb11
Add another error message substring for detecting errors due to being offline, to improve #30
2023-09-13 22:49:40 -07:00
David Dworken
e8ceb02138
Move tui.go out of lib and into a separate package
2023-09-13 22:47:48 -07:00
David Dworken
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
David Dworken
6540b4dbf6
Improve logged error messages for API failures
2023-09-13 20:24:25 -07:00
David Dworken
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
David Dworken
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
David Dworken
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
David Dworken
c73b10011b
Add TODO for a bug where sorting entries by timestamps in different timezones causes issues
2023-09-07 18:09:30 -07:00
David Dworken
578113e07c
Revert "use errors.Is
to determine what the error is" since it doesn't work with modernc.org/sqlite which we need in order to avoid using CGO (which we do to enable easy cross-compiles)
...
This reverts commit 1589f77956
. When building with CGO_ENABLED=0, this code will fail to build.
2023-09-06 20:21:00 -07:00
David Dworken
c5bdee9ad5
Merge pull request #102 from lsmoura/sergio/no-ctx-ptr
...
Remove context pointers since there is no need to pass around a pointer to an interface
2023-09-06 19:58:08 -07:00
Sergio Moura
a12b0e5f6f
no context pointers
2023-09-05 15:45:17 -04:00
Sergio Moura
1589f77956
use errors.Is
to determine what the error is
2023-09-05 15:37:42 -04:00
Sergio Moura
83ad8c7b1f
wrap errors with %w instead of using %v
2023-09-05 15:08:55 -04:00
David Dworken
66f3dc13ec
Add support for displaying the user as a column via the 'User' column
2023-08-28 12:19:14 -07:00
David Dworken
2490082088
no-op refactoring: Move history entry building code from lib.go to cmd file for saving history entries
2023-08-27 22:05:24 -07:00
David Dworken
5dae81d336
Sort by start_time in beta mode only, to fix failing tests caused by changing the sorting
2023-08-27 15:20:40 -07:00
David Dworken
25ec191f1a
Implement pre-saving feature to ensure that long-running/non-terminating commands are saved in hishtory
2023-08-27 14:24:59 -07:00
David Dworken
765c1c18d0
Remove && false to enable the getwd syscall as a fallback
2023-02-28 17:44:05 -08:00
David Dworken
ff24b66fce
Fix unescape function per comments on #73 and add tests for searching for a backslash
2023-02-20 15:46:39 -08:00
David Dworken
0a694c39d5
Add workaround for #69 that avoids go's getCwd method that relies on stat rather than getwd
2023-02-20 12:42:23 -08:00
David Dworken
27cd544524
Add support for arm7 for #63 to support raspberry pis
2023-02-18 22:00:39 -08:00
David Dworken
f2298def32
Ignore a single dash as a token to improve search behavior for queries like 'ls -' to improve #67
2023-02-18 21:46:51 -08:00
David Dworken
2ae54ef74e
Simplify stripBackslash
2023-02-14 08:47:38 -08:00
David Dworken
162dd86893
Add unit tests + rename method
2023-02-13 22:26:02 -08:00
David Dworken
b6eb4da4f3
Rename deEscape to unescape
2023-02-13 21:36:54 -08:00
Håkan Fouren
f08cac491c
Use rune instead of byte when traversing strings
2023-02-05 02:13:42 +08:00
Håkan Fouren
9062c24a7e
Allow search strings to escape special chars ' ', ':' and '-' using '\'
2023-02-05 02:13:42 +08:00
David Dworken
d15376f37d
Refactor out deletion request handling to prep for #33
2022-12-18 00:19:52 -08:00
David Dworken
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
David Dworken
7c86b812bf
Add support for linux arm64 for #48
2022-12-11 20:39:45 -08:00
David Dworken
233ca7ecd3
Treat TLS timeout as an offline error for #50
2022-12-10 09:43:02 -08:00
David Dworken
35444bf56e
Swap ioutil to non-deprecated alternatives + clean up pre-commit errors
2022-11-27 11:59:06 -08:00
David Dworken
5249ee6709
Add better handling for invalid searches in the TUI + better error messages in a couple other places to improve #40
2022-11-27 08:54:34 -08:00
David Dworken
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
David Dworken
f5adac5140
Move code out of lib that is only referenced for one command
2022-11-19 17:14:27 -08:00
David Dworken
ab6bb719a7
Move code out of lib that is only referenced for one command
2022-11-19 17:12:43 -08:00
David Dworken
d9c4a59ddd
Move code out of lib that is only referenced for one command
2022-11-19 17:06:28 -08:00
David Dworken
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
David Dworken
fe6394d1b5
Some test fixes for the cobra integration
2022-11-16 08:03:23 -08:00
David Dworken
c59de42008
More refactoring to use cobra
2022-11-16 08:03:23 -08:00
David Dworken
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
David Dworken
a18d444d09
Treat connect timeouts as network failures to fix #30
2022-11-14 16:29:55 -08:00
David Dworken
c36e147fae
respect zdotdir to fix #29
2022-11-13 15:59:59 -08:00