aboutsummaryrefslogtreecommitdiffstats
path: root/Cargo.lock (follow)
Commit message (Collapse)AuthorAge
* fix(perm): set umask 077 (#1554)Ellie Huxtable2024-01-12
| | | | | This ensures no other user can read shell history data Resolves #1250
* chore(deps): bump hyper from 0.14.28 to 1.1.0 (#1520)dependabot[bot]2024-01-08
| | | | | | | | | | | | | | | | 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>
* chore(deps): bump ratatui from 0.24.0 to 0.25.0 (#1521)dependabot[bot]2024-01-08
| | | | | | | | | | | | | | | | 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>
* feat: rework record sync for improved reliability (#1478)Ellie Huxtable2024-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* chore(release): prepare for release v17.2.1 (#1495)Ellie Huxtable2024-01-03
|
* chore(release): prepare for release v17.2.0 (#1492)Ellie Huxtable2024-01-03
|
* feat: Add TLS to atuin-server (#1457)Eric Hodel2023-12-27
| | | | | | | | | | | | | | | | | | | | * 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
* feat: add semver checking to client requests (#1456)Ellie Huxtable2023-12-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* chore(deps): uuidv7 stable (#1451)Conrad Ludgate2023-12-16
|
* update basically everything (#1452)Conrad Ludgate2023-12-16
|
* chore(release): prepare for release v17.1.0 (#1432)Ellie Huxtable2023-12-10
|
* chore: update rusty_paseto and rusty_paserk (#1420)Ellie Huxtable2023-12-02
|
* chore: `cargo update` (#1419)Ellie Huxtable2023-12-02
|
* chore: update to sqlx 0.7.3 (#1416)Ellie Huxtable2023-11-29
|
* feat: add metrics server and http metrics (#1394)Ellie Huxtable2023-11-16
| | | | | | | | | * feat: add metrics server and http metrics * setup metrics * update default config * fix tests
* Release v17.0.1 (#1354)Ellie Huxtable2023-10-28
|
* Fix for breaking change in ratatui 0.24.0 (#1352)Tobias Genannt2023-10-28
|
* Prepare release v17.0.0 (#1327)Ellie Huxtable2023-10-25
|
* Bump semver from 1.0.18 to 1.0.20 (#1299)dependabot[bot]2023-10-17
| | | | | | | | | | | | | | | 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>
* feat: copy to clipboard (#1249)YummyOreo2023-09-30
| | | | | | | * feat: adds clipboard as a dep * feat: add copy if you press ctl+y * docs: add copy to clipboard to docs
* Bump ratatui from 0.22.0 to 0.23.0 (#1221)dependabot[bot]2023-09-13
| | | | | | | | | | | | | | | | 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>
* Bump shellexpand from 2.1.2 to 3.1.0 (#1186)dependabot[bot]2023-09-13
| | | | | | | | | | | | | | 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>
* Bump tower-http from 0.3.5 to 0.4.4 (#1210)dependabot[bot]2023-09-13
| | | | | | | | | | | | | | | 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>
* Bump crossterm from 0.26.1 to 0.27.0 (#1222)dependabot[bot]2023-09-13
| | | | | | | | | | | | | | | | 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>
* Bump itertools from 0.10.5 to 0.11.0 (#1223)dependabot[bot]2023-09-13
| | | | | | | | | | | | | | | 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>
* Run `cargo update` (#1218)Ellie Huxtable2023-09-11
|
* replace chrono with time (#806)Conrad Ludgate2023-09-11
| | | | | | | | | * replace chrono with time * Fix test chrono usage --------- Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
* Update dependencies (#1181)Conrad Ludgate2023-08-18
|
* Update to ratatui 0.22 (#1168)Ellie Huxtable2023-08-14
|
* Prepare release v16.0.0 (#1143)Ellie Huxtable2023-08-07
| | | | | | | | | * 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
* Bump futures-util from 0.3.24 to 0.3.28 (#1129)dependabot[bot]2023-08-01
| | | | | | | | | | | | | | | | 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>
* some simple server tests (#1096)Conrad Ludgate2023-07-27
| | | | | | | | | | | | | | | | | | | | | * 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>
* Bump config from 0.13.2 to 0.13.3 (#646)dependabot[bot]2023-07-27
| | | | | | | | | | | | | | | | 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>
* Bump h2 from 0.3.14 to 0.3.17 (#873)dependabot[bot]2023-07-27
| | | | | | | | | | | | | | | 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>
* Bump indicatif from 0.17.3 to 0.17.5 (#1050)dependabot[bot]2023-07-27
| | | | | | | | | | | | | | | 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>
* Bump serde_json from 1.0.86 to 1.0.99 (#1075)dependabot[bot]2023-07-27
| | | | | | | | | | | | | | | 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>
* Bump colored from 2.0.0 to 2.0.4 (#1110)dependabot[bot]2023-07-27
| | | | | | | | | | | | | | | | 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>
* Unvendor ratatui (#1101)Ellie Huxtable2023-07-17
|
* Add new sync (#1093)Ellie Huxtable2023-07-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 7b0c72e7e050c358172f9b53cbd21b9e44cf4931. * 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>
* Bump regex from 1.7.2 to 1.9.1 (#1094)dependabot[bot]2023-07-14
| | | | | | | | | | | | | | | | 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>
* record encryption (#1058)Conrad Ludgate2023-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Add RecordIndex data structure (#1059)Ellie Huxtable2023-06-19
| | | | | | | | | | | | | | | | | | | | | | * 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>
* remove rmp-serde (#1057)Conrad Ludgate2023-06-18
| | | | | * remove rmp-serde * use version info
* Builder interface for History objects (#933)Vlad Stepanov2023-06-15
| | | | | | | | | | | | | | | | | | | | | | * [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>
* Key values (#1038)Ellie Huxtable2023-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Fix `--delete-it-all` and `--delete` commands (#913)J. Emiliano Deustua2023-06-13
| | | | | | | | | | | | | | | | | | | | * 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>
* Bump uuid from 1.2.1 to 1.3.4 (#1046)dependabot[bot]2023-06-13
| | | | | | | | | | | | | | | 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>
* refactor server to allow pluggable db and tracing (#1036)Conrad Ludgate2023-06-12
| | | | | | | | | * refactor server to allow pluggable db and tracing * clean up * fix descriptions * remove dependencies
* Release v15.0.0 (#995)Ellie Huxtable2023-05-28
| | | | | | | * Release v15.0.0 * Draft post * Update contributors
* Allow server configured page size (#994)Ellie Huxtable2023-05-21
| | | | | | | * Allow server configured page size * Backwards compat via semver checks * Correct header name