Ellie Huxtable
1464cb657a
chore(release): prepare for release v18.0.1 ( #1706 )
2024-02-12 08:38:23 +00:00
Ellie Huxtable
5738d06282
chore(release): prepare for release v18.0.0 ( #1685 )
2024-02-09 12:42:34 +00:00
Ellie Huxtable
8460210202
feat: add progress bars to sync and store init ( #1684 )
...
Replace lots of logging with some progress bars. This looks much nicer
I'd like to move it out of the atuin-client crate and into the atuin
crate. But first, I want to decouple a lot of the record moving, so it
can wait until that's done.
2024-02-08 13:34:41 +00:00
cyqsimon
318bdd8955
Add timezone configuration option & CLI overrides ( #1517 )
...
* Allow specifying a timezone in history search/list
* Fix clippy complaints
* Add a bit more comment on supporting named timezones
* Add rudimentary tests
* Ditch local timezone test
* Timezone configuration support
* Set default timezone to `local`
* `--tz` -> `--timezone`
`--tz` is kept as a visible alias
2024-02-06 15:34:03 +00:00
Ellie Huxtable
9597080825
feat: add store push ( #1649 )
...
* feat: add store push
* only push for the current host unless specified
* tidy up
* tidy up some more
* sort features
2024-01-30 13:41:01 +00:00
Conrad Ludgate
bdcb143996
chore(deps): update axum ( #1637 )
2024-01-28 13:33:45 +00:00
Ellie Huxtable
4b20544474
chore: use resolver 2, update editions + cargo ( #1635 )
2024-01-26 17:59:06 +00:00
dependabot[bot]
2e3dde64e4
chore(deps): bump argon2 from 0.5.2 to 0.5.3 ( #1603 )
...
Bumps [argon2](https://github.com/RustCrypto/password-hashes ) from 0.5.2 to 0.5.3.
- [Commits](https://github.com/RustCrypto/password-hashes/compare/argon2-v0.5.2...argon2-v0.5.3 )
---
updated-dependencies:
- dependency-name: argon2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-22 10:00:25 +00:00
dependabot[bot]
732f882c6e
chore(deps): bump the cargo group across 1 directories with 1 update ( #1591 )
...
Bumps the cargo group with 1 update in the /. directory: [h2](https://github.com/hyperium/h2 ).
Updates `h2` from 0.3.22 to 0.3.24
- [Release notes](https://github.com/hyperium/h2/releases )
- [Changelog](https://github.com/hyperium/h2/blob/v0.3.24/CHANGELOG.md )
- [Commits](https://github.com/hyperium/h2/compare/v0.3.22...v0.3.24 )
---
updated-dependencies:
- dependency-name: h2
dependency-type: indirect
dependency-group: cargo-security-group
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-19 17:40:10 +00:00
dependabot[bot]
4192fd88c2
chore(deps): bump rustix from 0.38.28 to 0.38.30 ( #1566 )
...
Bumps [rustix](https://github.com/bytecodealliance/rustix ) from 0.38.28 to 0.38.30.
- [Release notes](https://github.com/bytecodealliance/rustix/releases )
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.28...v0.38.30 )
---
updated-dependencies:
- dependency-name: rustix
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-17 19:49:06 +00:00
Ellie Huxtable
4d41a741f0
fix(perm): set umask 077 ( #1554 )
...
This ensures no other user can read shell history data
Resolves #1250
2024-01-12 18:52:39 +00:00
dependabot[bot]
d426397ca0
chore(deps): bump hyper from 0.14.28 to 1.1.0 ( #1520 )
...
Bumps [hyper](https://github.com/hyperium/hyper ) from 0.14.28 to 1.1.0.
- [Release notes](https://github.com/hyperium/hyper/releases )
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hyperium/hyper/compare/v0.14.28...v1.1.0 )
---
updated-dependencies:
- dependency-name: hyper
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-08 09:42:27 +00:00
dependabot[bot]
b881268243
chore(deps): bump ratatui from 0.24.0 to 0.25.0 ( #1521 )
...
Bumps [ratatui](https://github.com/ratatui-org/ratatui ) from 0.24.0 to 0.25.0.
- [Release notes](https://github.com/ratatui-org/ratatui/releases )
- [Changelog](https://github.com/ratatui-org/ratatui/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ratatui-org/ratatui/compare/v0.24.0...v0.25.0 )
---
updated-dependencies:
- dependency-name: ratatui
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-08 09:42:06 +00:00
Ellie Huxtable
7bc6ccdd70
feat: rework record sync for improved reliability ( #1478 )
...
* feat: rework record sync for improved reliability
So, to tell a story
1. We introduced the record sync, intended to be the new algorithm to
sync history.
2. On top of this, I added the KV store. This was intended as a simple
test of the record sync, and to see if people wanted that sort of
functionality
3. History remained syncing via the old means, as while it had issues it
worked more-or-less OK. And we are aware of its flaws
4. If KV syncing worked ok, history would be moved across
KV syncing ran ok for 6mo or so, so I started to move across history.
For several weeks, I ran a local fork of Atuin + the server that synced
via records instead.
The record store maintained ordering via a linked list, which was a
mistake. It performed well in testing, but was really difficult to debug
and reason about. So when a few small sync issues occured, they took an
extremely long time to debug.
This PR is huge, which I regret. It involves replacing the "parent"
relationship that records once had (pointing to the previous record)
with a simple index (generally referred to as idx). This also means we
had to change the recordindex, which referenced "tails". Tails were the
last item in the chain.
Now that we use an "array" vs linked list, that logic was also replaced.
And is much simpler :D
Same for the queries that act on this data.
----
This isn't final - we still need to add
1. Proper server/client error handling, which has been lacking for a
while
2. The actual history implementation on top
This exists in a branch, just without deletions. Won't be much to
add that, I just don't want to make this any larger than it already
is
The _only_ caveat here is that we basically lose data synced via the old
record store. This is the KV data from before.
It hasn't been deleted or anything, just no longer hooked up. So it's
totally possible to write a migration script. I just need to do that.
* update .gitignore
* use correct endpoint
* fix for stores with length of 1
* use create/delete enum for history store
* lint, remove unneeded host_id
* remove prints
* add command to import old history
* add enable/disable switch for record sync
* add record sync to auto sync
* satisfy the almighty clippy
* remove file that I did not mean to commit
* feedback
2024-01-05 17:57:49 +00:00
Ellie Huxtable
9f79a34a9d
chore(release): prepare for release v17.2.1 ( #1495 )
2024-01-03 15:51:47 +00:00
Ellie Huxtable
999a98c577
chore(release): prepare for release v17.2.0 ( #1492 )
2024-01-03 12:46:08 +00:00
Eric Hodel
d52e576129
feat: Add TLS to atuin-server ( #1457 )
...
* Add TLS to atuin-server
atuin as a project already includes most of the dependencies necessary
for server-side TLS. This allows `atuin server start` to use a TLS
certificate when self-hosting in order to avoid the complication of
wrapping it in a TLS-aware proxy server.
Configuration is handled similar to the metrics server with its own
struct and currently accepts only the private key and certificate file
paths.
Starting a TLS server and a TCP server are divergent because the tests
need to bind to an arbitrary port to avoid collisions across tests. The
API to accomplish this for a TLS server is much more verbose.
* Fix clippy, fmt
* Add TLS section to self-hosting
2023-12-27 14:15:48 +00:00
Ellie Huxtable
86f50e0356
feat: add semver checking to client requests ( #1456 )
...
* feat: add semver checking to client requests
This enforces that the client and the server run the same major version
in order to sync successfully.
We're using the `Atuin-Version` http header to transfer this information
If the user is not on the same MAJOR, then they will see an error like
this
> Atuin version mismatch! In order to successfully sync, the client and the server must run the same *major* version
> Client: 17.1.0
> Server: 18.1.0
> Error: could not sync records due to version mismatch
This change means two things
1. We will now only increment major versions if there is a breaking
change for sync
2. We can now add breaking changes to sync, for any version >17.1.0.
Clients will fail in a meaningful way.
* lint, fmt, etc
* only check for client newer than server
* Add version header to client too
2023-12-20 09:03:04 +00:00
Conrad Ludgate
7aeea1c050
chore(deps): uuidv7 stable ( #1451 )
2023-12-16 19:21:04 +00:00
Conrad Ludgate
ec131c7c96
update basically everything ( #1452 )
2023-12-16 19:20:40 +00:00
Ellie Huxtable
da2e58fbb1
chore(release): prepare for release v17.1.0 ( #1432 )
2023-12-10 13:00:59 +00:00
Ellie Huxtable
839965a8d7
chore: update rusty_paseto and rusty_paserk ( #1420 )
2023-12-02 22:47:41 +00:00
Ellie Huxtable
1c3d6c6ce8
chore: cargo update
( #1419 )
2023-12-02 11:12:14 +00:00
Ellie Huxtable
e55b34b816
chore: update to sqlx 0.7.3 ( #1416 )
2023-11-29 09:30:34 +00:00
Ellie Huxtable
15d214e237
feat: add metrics server and http metrics ( #1394 )
...
* feat: add metrics server and http metrics
* setup metrics
* update default config
* fix tests
2023-11-16 23:18:13 +00:00
Ellie Huxtable
2959891f58
Release v17.0.1 ( #1354 )
2023-10-28 19:19:10 +00:00
Tobias Genannt
2066778780
Fix for breaking change in ratatui 0.24.0 ( #1352 )
2023-10-28 13:30:02 +01:00
Ellie Huxtable
0b22d06ad3
Prepare release v17.0.0 ( #1327 )
2023-10-25 18:06:59 +00:00
dependabot[bot]
ad6cae4dac
Bump semver from 1.0.18 to 1.0.20 ( #1299 )
...
Bumps [semver](https://github.com/dtolnay/semver ) from 1.0.18 to 1.0.20.
- [Release notes](https://github.com/dtolnay/semver/releases )
- [Commits](https://github.com/dtolnay/semver/compare/1.0.18...1.0.20 )
---
updated-dependencies:
- dependency-name: semver
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-17 15:39:47 -07:00
YummyOreo
da2221a87f
feat: copy to clipboard ( #1249 )
...
* feat: adds clipboard as a dep
* feat: add copy if you press ctl+y
* docs: add copy to clipboard to docs
2023-09-30 01:04:26 +00:00
dependabot[bot]
47ea974f54
Bump ratatui from 0.22.0 to 0.23.0 ( #1221 )
...
Bumps [ratatui](https://github.com/ratatui-org/ratatui ) from 0.22.0 to 0.23.0.
- [Release notes](https://github.com/ratatui-org/ratatui/releases )
- [Changelog](https://github.com/ratatui-org/ratatui/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ratatui-org/ratatui/compare/v0.22.0...v0.23.0 )
---
updated-dependencies:
- dependency-name: ratatui
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-13 07:59:33 +00:00
dependabot[bot]
93bb5a9609
Bump shellexpand from 2.1.2 to 3.1.0 ( #1186 )
...
Bumps [shellexpand](https://gitlab.com/ijackson/rust-shellexpand ) from 2.1.2 to 3.1.0.
- [Commits](https://gitlab.com/ijackson/rust-shellexpand/compare/shellexpand/2.1.2...shellexpand-3.1.0 )
---
updated-dependencies:
- dependency-name: shellexpand
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-13 08:45:08 +01:00
dependabot[bot]
8c0103dfff
Bump tower-http from 0.3.5 to 0.4.4 ( #1210 )
...
Bumps [tower-http](https://github.com/tower-rs/tower-http ) from 0.3.5 to 0.4.4.
- [Release notes](https://github.com/tower-rs/tower-http/releases )
- [Commits](https://github.com/tower-rs/tower-http/compare/tower-http-0.3.5...tower-http-0.4.4 )
---
updated-dependencies:
- dependency-name: tower-http
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-13 08:44:59 +01:00
dependabot[bot]
9dba3d014b
Bump crossterm from 0.26.1 to 0.27.0 ( #1222 )
...
Bumps [crossterm](https://github.com/crossterm-rs/crossterm ) from 0.26.1 to 0.27.0.
- [Release notes](https://github.com/crossterm-rs/crossterm/releases )
- [Changelog](https://github.com/crossterm-rs/crossterm/blob/master/CHANGELOG.md )
- [Commits](https://github.com/crossterm-rs/crossterm/compare/0.26.1...0.27.0 )
---
updated-dependencies:
- dependency-name: crossterm
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-13 08:44:34 +01:00
dependabot[bot]
b87159d990
Bump itertools from 0.10.5 to 0.11.0 ( #1223 )
...
Bumps [itertools](https://github.com/rust-itertools/itertools ) from 0.10.5 to 0.11.0.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.10.5...v0.11.0 )
---
updated-dependencies:
- dependency-name: itertools
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-13 08:44:19 +01:00
Ellie Huxtable
1f3348d789
Run cargo update
( #1218 )
2023-09-11 09:58:55 +01:00
Conrad Ludgate
f90c01f702
replace chrono with time ( #806 )
...
* replace chrono with time
* Fix test chrono usage
---------
Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2023-09-11 09:26:05 +01:00
Conrad Ludgate
aa8e5f5c04
Update dependencies ( #1181 )
2023-08-18 20:45:29 +00:00
Ellie Huxtable
cd6c44cfe7
Update to ratatui 0.22 ( #1168 )
2023-08-14 09:59:08 +01:00
Ellie Huxtable
0d5332a87f
Prepare release v16.0.0 ( #1143 )
...
* Prepare release v16.0.0
* Remove debug output
* Fix kv dupes if the store already exists
* Add limit in frontend as well as sync backend
2023-08-07 11:18:39 +01:00
dependabot[bot]
1013246eda
Bump futures-util from 0.3.24 to 0.3.28 ( #1129 )
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.24 to 0.3.28.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.24...0.3.28 )
---
updated-dependencies:
- dependency-name: futures-util
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-01 22:11:27 +01:00
Conrad Ludgate
c10ba684e0
some simple server tests ( #1096 )
...
* some simple server tests
* fmt
* logging in server test
* log server errors
* fix postgres uri
* postgres ports
* localhost again?
* Rebase fixes
---------
Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2023-07-27 09:34:13 +01:00
dependabot[bot]
9c7501bbd3
Bump config from 0.13.2 to 0.13.3 ( #646 )
...
Bumps [config](https://github.com/mehcode/config-rs ) from 0.13.2 to 0.13.3.
- [Release notes](https://github.com/mehcode/config-rs/releases )
- [Changelog](https://github.com/mehcode/config-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mehcode/config-rs/compare/0.13.2...0.13.3 )
---
updated-dependencies:
- dependency-name: config
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-27 08:55:03 +01:00
dependabot[bot]
67b7452d4d
Bump h2 from 0.3.14 to 0.3.17 ( #873 )
...
Bumps [h2](https://github.com/hyperium/h2 ) from 0.3.14 to 0.3.17.
- [Release notes](https://github.com/hyperium/h2/releases )
- [Changelog](https://github.com/hyperium/h2/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hyperium/h2/compare/v0.3.14...v0.3.17 )
---
updated-dependencies:
- dependency-name: h2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-27 08:54:40 +01:00
dependabot[bot]
f22c1375a6
Bump indicatif from 0.17.3 to 0.17.5 ( #1050 )
...
Bumps [indicatif](https://github.com/console-rs/indicatif ) from 0.17.3 to 0.17.5.
- [Release notes](https://github.com/console-rs/indicatif/releases )
- [Commits](https://github.com/console-rs/indicatif/compare/0.17.3...0.17.5 )
---
updated-dependencies:
- dependency-name: indicatif
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-27 08:54:06 +01:00
dependabot[bot]
d151f8fd6d
Bump serde_json from 1.0.86 to 1.0.99 ( #1075 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.86 to 1.0.99.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.86...v1.0.99 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-27 08:53:55 +01:00
dependabot[bot]
c0e85756dd
Bump colored from 2.0.0 to 2.0.4 ( #1110 )
...
Bumps [colored](https://github.com/mackwic/colored ) from 2.0.0 to 2.0.4.
- [Release notes](https://github.com/mackwic/colored/releases )
- [Changelog](https://github.com/colored-rs/colored/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mackwic/colored/compare/v2.0.0...v2.0.4 )
---
updated-dependencies:
- dependency-name: colored
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-27 08:52:45 +01:00
Ellie Huxtable
f3e707542c
Unvendor ratatui ( #1101 )
2023-07-17 23:16:37 +01:00
Ellie Huxtable
97e24d0d41
Add new sync ( #1093 )
...
* Add record migration
* Add database functions for inserting history
No real tests yet :( I would like to avoid running postgres lol
* Add index handler, use UUIDs not strings
* Fix a bunch of tests, remove Option<Uuid>
* Add tests, all passing
* Working upload sync
* Record downloading works
* Sync download works
* Don't waste requests
* Use a page size for uploads, make it variable later
* Aaaaaand they're encrypted now too
* Add cek
* Allow reading tail across hosts
* Revert "Allow reading tail across hosts"
Not like that
This reverts commit 7b0c72e7e0
.
* Handle multiple shards properly
* format
* Format and make clippy happy
* use some fancy types (#1098 )
* use some fancy types
* fmt
* Goodbye horrible tuple
* Update atuin-server-postgres/migrations/20230623070418_records.sql
Co-authored-by: Conrad Ludgate <conradludgate@gmail.com>
* fmt
* Sort tests too because time sucks
* fix features
---------
Co-authored-by: Conrad Ludgate <conradludgate@gmail.com>
2023-07-14 20:44:08 +01:00
dependabot[bot]
abccab0790
Bump regex from 1.7.2 to 1.9.1 ( #1094 )
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.7.2 to 1.9.1.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.7.2...1.9.1 )
---
updated-dependencies:
- dependency-name: regex
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-14 19:41:20 +01:00
Conrad Ludgate
6c53242b64
record encryption ( #1058 )
...
* record encryption
* move paserk impl
* implicit assertions
* move wrapped cek
* add another test
* use host
* undo stray change
* more tests and docs
* fmt
* Update atuin-client/src/record/encryption.rs
Co-authored-by: Matteo Martellini <matteo@mercxry.me>
* Update atuin-client/src/record/encryption.rs
Co-authored-by: Matteo Martellini <matteo@mercxry.me>
* typo
---------
Co-authored-by: Matteo Martellini <matteo@mercxry.me>
2023-06-26 07:52:37 +01:00
Ellie Huxtable
9558fec211
Add RecordIndex data structure ( #1059 )
...
* Add RecordIndex data structure
This allows us to compare two sets of record stores, and return a list
of diffs.
With these diffs, we should be able to sync the two stores
* Remove server handler, will follow up with this
* Make clippy happy
* Add tests and docs for diffs in both directions
* Update atuin-common/src/record.rs
Co-authored-by: Conrad Ludgate <conradludgate@gmail.com>
---------
Co-authored-by: Conrad Ludgate <conradludgate@gmail.com>
2023-06-19 09:02:15 +01:00
Conrad Ludgate
b8b57c86af
remove rmp-serde ( #1057 )
...
* remove rmp-serde
* use version info
2023-06-18 12:33:55 +01:00
Vlad Stepanov
4077c33adf
Builder interface for History objects ( #933 )
...
* [feature] store env variables in History records
WIP: remove `HistoryWithoutDelete`, add some docstrings, tests
* Create History objects through builders.
Assure in compile-time that all required fields
are set for the given construction scenario
* (from #882 ) split Cmd::run into subfns
* Update `History` doc
* remove rmp-serde from history
* update warning
---------
Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2023-06-15 10:29:40 +00:00
Ellie Huxtable
ae1709dafd
Key values ( #1038 )
...
* wip
* Start testing
* Store host IDs, not hostnames
Why? Hostnames can change a lot, and therefore host filtering can be
funky. Really, all we want is a unique ID per machine + do not care what
it might be.
* Mostly just write a fuckload of tests
* Add a v0 kv store I can push to
* Appending works
* Add next() and iterate, test the pointer chain
* Fix sig
* Make clippy happy and thaw the ICE
* Fix tests'
* Fix tests
* typed builder and cleaner db trait
---------
Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2023-06-14 21:18:24 +01:00
J. Emiliano Deustua
79f7b1d81c
Fix --delete-it-all
and --delete
commands ( #913 )
...
* Add `delete_at` is null condition during search
Since entries are searched everytime a delete process ends, the
--delete-it-all command will enter an infinite loop if searching the
whole history.
* Remove command blanking
Command blanking may violate the `unique(timestamp, cwd, command)`
condition.
* Overwrite command with random string when deleting
* Add rand dependency to client crate
---------
Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2023-06-13 07:43:06 +00:00
dependabot[bot]
b231b82bdd
Bump uuid from 1.2.1 to 1.3.4 ( #1046 )
...
Bumps [uuid](https://github.com/uuid-rs/uuid ) from 1.2.1 to 1.3.4.
- [Release notes](https://github.com/uuid-rs/uuid/releases )
- [Commits](https://github.com/uuid-rs/uuid/compare/1.2.1...1.3.4 )
---
updated-dependencies:
- dependency-name: uuid
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 08:39:31 +01:00
Conrad Ludgate
8655c93853
refactor server to allow pluggable db and tracing ( #1036 )
...
* refactor server to allow pluggable db and tracing
* clean up
* fix descriptions
* remove dependencies
2023-06-12 09:04:35 +01:00
Ellie Huxtable
9e3fa8b88a
Release v15.0.0 ( #995 )
...
* Release v15.0.0
* Draft post
* Update contributors
2023-05-28 19:39:45 +01:00
Ellie Huxtable
d2240e1163
Allow server configured page size ( #994 )
...
* Allow server configured page size
* Backwards compat via semver checks
* Correct header name
2023-05-21 15:21:51 +00:00
Conrad Ludgate
20845a5cf5
fix broken pipe on history list ( #927 )
...
* fix #626
* slightly refactor
2023-05-01 22:31:25 -04:00
Conrad Ludgate
c7d89c1703
chore: uuhhhhhh crypto lol ( #805 )
...
* chore: uuhhhhhh crypto lol
* remove dead code
* fix key decoding
* use inplace encryption
2023-04-17 21:12:02 +01:00
Ellie Huxtable
7c079070c5
Release v14.0.1 ( #883 )
2023-04-16 11:25:48 +00:00
Vladislav Stepanov
c05d285042
Workspace reorder ( #868 )
...
* Try different workspace structure
Move main crate (atuin) to be on the same level with other crates in
this workspace
* extract common dependencies to the workspace definition
* fix base64 v0.21 deprecation warning
* questionable: update deps & fix chrono deprecations
possible panic sites are unchanged, they're just more visible now
* Revert "questionable: update deps & fix chrono deprecations"
This reverts commit 993e60f8de
.
2023-04-14 20:18:58 +01:00
Ellie Huxtable
03dd3ddf8b
Switch to uuidv7 ( #864 )
...
* Add uuid_v7
* Actually use the new uuid
* Add a test to ensure all uuids are unique, even in a tight loop
* Make clippy happy
2023-04-11 16:26:16 +01:00
Ellie Huxtable
4e4fdb9f8e
Release Atuin v14 ( #836 )
...
* Bump versions
* Write release notes
* add link
2023-04-01 18:17:38 +01:00
Ellie Huxtable
a515b06bcb
Vendor ratatui temporarily ( #835 )
...
* Vendor ratatui temporarily
Once https://github.com/tui-rs-revival/ratatui/pull/114 has been merged,
we can undo this! But otherwise we can't publish to crates.io with a git
dependency.
* make tests pass
* Shush.
* these literally just fail in nix, nowhere else
idk how to work with nix properly, and they're also not our tests
2023-03-31 22:57:37 +01:00
Ellie Huxtable
0d16a113c5
Add atuin status
( #830 )
...
Useful for debugging, checking the state of things, and for if you
forget your username!
2023-03-30 06:45:49 +01:00
Conrad Ludgate
bb7f00dbef
chore: use fork of skim ( #803 )
...
* use fuzzy-matcher instead of skim
switch to a search-engine abstraction
* fmt
* fix deprecated warnings
2023-03-26 15:47:38 +01:00
Patrick Decat
13ce5f746c
feat: add an inline view mode ( #648 )
...
* add inline viewport
* Add inline_height setting. Zero disables inline mode (the default)
2023-03-25 17:27:20 +00:00
Conrad Ludgate
ba1d615f5e
chore: remove tui vendoring ( #804 )
2023-03-23 09:19:29 +00:00
Conrad Ludgate
edcd477153
skim-demo ( #695 )
...
* skim-demo
* skim some more
* Weight first word match higher (#712 )
* some improvements
* make skim opt-in
---------
Co-authored-by: Frank Hamand <frankhamand@gmail.com>
2023-03-19 20:49:57 +00:00
Ellie Huxtable
b978f9a4de
Add register notification webhook ( #764 )
...
I find it super motivating when people use my stuff, so this makes it
_even easier_ to know when someone new signs up!
2023-03-07 22:09:19 +00:00
Ellie Huxtable
e4fde80acc
Patch release v13.0.1 ( #741 )
...
* Patch release v13.0.1
* Update blog post
2023-02-28 21:44:39 +00:00
Ellie Huxtable
fe5f728aa6
Release v13 ( #727 )
...
* Write release blog post
* Bump versions
* Update contributors
2023-02-26 21:22:29 +00:00
Johannes Baiter
5cb43772dc
Add history_filter
cfg to exclude commands from history ( #515 ) ( #716 )
...
Adds a new `history_filter` setting through which users can specify a
list of regular expressions that match commands that should not be
recorded in the history.
2023-02-14 07:14:05 +00:00
dependabot[bot]
2d62499619
Bump bumpalo from 3.11.0 to 3.12.0 ( #668 )
...
Bumps [bumpalo](https://github.com/fitzgen/bumpalo ) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/fitzgen/bumpalo/releases )
- [Changelog](https://github.com/fitzgen/bumpalo/blob/main/CHANGELOG.md )
- [Commits](https://github.com/fitzgen/bumpalo/compare/3.11.0...3.12.0 )
---
updated-dependencies:
- dependency-name: bumpalo
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 19:30:35 +00:00
dependabot[bot]
dbbc904a3c
Bump tokio from 1.21.2 to 1.25.0 ( #679 )
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.21.2 to 1.25.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.21.2...tokio-1.25.0 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 19:30:15 +00:00
Conrad Ludgate
deb7c19093
stats ( #707 )
2023-02-10 18:58:02 +00:00
Ellie Huxtable
2672f78dda
make update_needed check lazy ( #706 )
2023-02-10 18:14:48 +00:00
Conrad Ludgate
edda1b741a
crossterm support ( #331 )
...
* crossterm v2
* patch crossterm
* fix-version
* no more tui dependency
* lints
2023-02-10 17:25:43 +00:00
Conrad Ludgate
0acdb99eb3
axum6 with typesafe state ( #674 )
2023-02-10 09:45:20 +00:00
dependabot[bot]
ec24437735
Bump fs-err from 2.8.1 to 2.9.0 ( #604 )
...
Bumps [fs-err](https://github.com/andrewhickman/fs-err ) from 2.8.1 to 2.9.0.
- [Release notes](https://github.com/andrewhickman/fs-err/releases )
- [Changelog](https://github.com/andrewhickman/fs-err/blob/main/CHANGELOG.md )
- [Commits](https://github.com/andrewhickman/fs-err/compare/2.8.1...2.9.0 )
---
updated-dependencies:
- dependency-name: fs-err
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-10 09:34:50 +00:00
Conrad Ludgate
5611bc59f5
display mnemonic key ( #694 )
2023-02-06 19:22:58 +00:00
Baptiste
893a395f12
feat(history): Add new flag to allow custom output format ( #662 )
...
* feat(history): Add new flag to allow custom output format
* more efficient formatting
* add user and host
* docs
Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2023-01-26 10:57:52 +00:00
Patrick Decat
ed394afa82
Allow overriding filter and search modes from CLI ( #635 )
...
* Allow overriding filter and search modes from CLI arguments
* Use session filter mode for bash up key binding
* We precisely do not want to add quotes here so that all arguments are properly passed
* Add --shell-up-key-binding hidden command argument and filter_mode_shell_up_key_binding configuration option to allow customizing the filter mode used when atuin is invoked from a shell up-key binding
* Correct up binding for zsh
Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2022-12-18 18:26:09 +00:00
dependabot[bot]
d1e29cbcae
Bump base64 from 0.13.0 to 0.20.0 ( #641 )
...
Bumps [base64](https://github.com/marshallpierce/rust-base64 ) from 0.13.0 to 0.20.0.
- [Release notes](https://github.com/marshallpierce/rust-base64/releases )
- [Changelog](https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md )
- [Commits](https://github.com/marshallpierce/rust-base64/compare/v0.13.0...v0.20.0 )
---
updated-dependencies:
- dependency-name: base64
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-18 17:53:36 +00:00
Ellie Huxtable
4c6a287f4d
Switch to using ATUIN_LOG instead of RUST_LOG ( #642 )
...
* Switch to using ATUIN_LOG instead of RUST_LOG
* Stop clippy complaining
* I should know better - clippy is never happy :(
2022-12-16 18:37:45 +00:00
dependabot[bot]
2b7ecabec2
Bump tracing from 0.1.36 to 0.1.37 ( #563 )
...
Bumps [tracing](https://github.com/tokio-rs/tracing ) from 0.1.36 to 0.1.37.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.36...tracing-0.1.37 )
---
updated-dependencies:
- dependency-name: tracing
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-06 19:03:06 +00:00
dependabot[bot]
a1c09c09d7
Bump clap_complete from 4.0.2 to 4.0.3 ( #582 )
...
Bumps [clap_complete](https://github.com/clap-rs/clap ) from 4.0.2 to 4.0.3.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.0.2...clap_complete-v4.0.3 )
---
updated-dependencies:
- dependency-name: clap_complete
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-06 18:21:40 +00:00
dependabot[bot]
f2fe12ad27
Bump tracing-subscriber from 0.3.15 to 0.3.16 ( #567 )
...
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing ) from 0.3.15 to 0.3.16.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.15...tracing-subscriber-0.3.16 )
---
updated-dependencies:
- dependency-name: tracing-subscriber
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-06 18:21:31 +00:00
dependabot[bot]
0fe315f55f
Bump reqwest from 0.11.11 to 0.11.12 ( #565 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.11.11 to 0.11.12.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.11.11...v0.11.12 )
---
updated-dependencies:
- dependency-name: reqwest
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-06 18:21:23 +00:00
dependabot[bot]
1ecb7edee9
Bump tokio from 1.21.1 to 1.21.2 ( #564 )
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.21.1 to 1.21.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.21.1...tokio-1.21.2 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-06 18:21:08 +00:00
Ellie Huxtable
f38ef12581
Release v12 ( #599 )
...
* Release v12
* Add new contributors
2022-11-06 15:30:21 +00:00
Benjamin Vergnaud
8b9aae7076
docs: add more details about date parsing in the stats command ( #579 )
...
* docs: add more details about date parsing in the stats command
* chore: Replace chrono-english crate with interim
2022-10-21 20:21:14 +01:00
dependabot[bot]
2dd9f2f9f5
Bump clap from 4.0.15 to 4.0.18 ( #578 )
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.0.15 to 4.0.18.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.15...v4.0.18 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-21 06:27:55 +00:00
dependabot[bot]
540aa79054
Bump async-trait from 0.1.57 to 0.1.58 ( #575 )
...
Bumps [async-trait](https://github.com/dtolnay/async-trait ) from 0.1.57 to 0.1.58.
- [Release notes](https://github.com/dtolnay/async-trait/releases )
- [Commits](https://github.com/dtolnay/async-trait/compare/0.1.57...0.1.58 )
---
updated-dependencies:
- dependency-name: async-trait
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-19 08:39:52 +01:00
wpbrz
1a74a50879
Configure reqwest to use native platform certs ( #574 )
2022-10-19 07:39:31 +00:00
Conrad Ludgate
5e2c438dab
Upgrade clap ( #568 )
2022-10-18 09:50:22 +01:00
Conrad Ludgate
990040e150
rollup of 5 dependency commits ( #562 )
...
* Bump sha2 from 0.10.5 to 0.10.6
Bumps [sha2](https://github.com/RustCrypto/hashes ) from 0.10.5 to 0.10.6.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/compare/sha2-v0.10.5...sha2-v0.10.6 )
---
updated-dependencies:
- dependency-name: sha2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump uuid from 1.1.2 to 1.2.1
Bumps [uuid](https://github.com/uuid-rs/uuid ) from 1.1.2 to 1.2.1.
- [Release notes](https://github.com/uuid-rs/uuid/releases )
- [Commits](https://github.com/uuid-rs/uuid/compare/1.1.2...1.2.1 )
---
updated-dependencies:
- dependency-name: uuid
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump serde_json from 1.0.85 to 1.0.86
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.85 to 1.0.86.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.85...v1.0.86 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump itertools from 0.10.4 to 0.10.5
Bumps [itertools](https://github.com/rust-itertools/itertools ) from 0.10.4 to 0.10.5.
- [Release notes](https://github.com/rust-itertools/itertools/releases )
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-itertools/itertools/commits )
---
updated-dependencies:
- dependency-name: itertools
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* Bump serde from 1.0.144 to 1.0.145
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.144 to 1.0.145.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-14 13:33:14 +01:00