Commit Graph

1097 Commits

Author SHA1 Message Date
1ea10b0a08 fix(crate): add description to daemon crate (#2107)
`cargo publish --dry-run` should really catch this.
2024-06-10 15:25:21 +01:00
92c2b6b69d fix(crate): add missing description (#2106) 2024-06-10 15:14:06 +01:00
fc1fecbd2e chore(deps): bump clap_complete_nushell from 4.5.1 to 4.5.2 (#2101)
Bumps [clap_complete_nushell](https://github.com/clap-rs/clap) from 4.5.1 to 4.5.2.
- [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_nushell-v4.5.1...clap_complete_nushell-v4.5.2)

---
updated-dependencies:
- dependency-name: clap_complete_nushell
  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-06-10 14:57:08 +01:00
9be49e434e chore(release): prepare for release v18.3.0 (#2105)
* chore(release): prepare for release v18.3.0

* build full release

* Revert "build full release"

This reverts commit 65e7718b51.
v18.3.0
2024-06-10 14:42:32 +01:00
c0d2c96177 chore: show scope in changelog (#2102) 2024-06-10 08:11:46 +01:00
85aa88abab docs: add docs for store subcommand (#2097)
Closes #2095
2024-06-07 17:18:55 +01:00
eb4a5ab4cd chore: update email, gitignore, tweak ui (#2094) 2024-06-06 15:03:43 +01:00
d7f77ebfe1 feat(ui): setup single-instance (#2093) 2024-06-06 10:36:39 +01:00
c102851e29 chore(release): v18.3.0-prerelease.1 (#2090)
* chore(release): v18.3.0-prerelease.1

* update contributors

* changelog, plan only on prs
v18.3.0-prerelease.1
2024-06-05 14:56:10 +01:00
7ec002ba44 chore: switch to cargo dist for releases (#2085)
* chore: switch to cargo dist for releases

From https://axo.dev

cargo-dist handles building releases far better than we can, and do so
for several large projects now.

We will need to change our install script to use the cargo-dist
installer.

Historically, we have used the system package manager wherever possible.
Once switched to the new installer, this will no longer be the case. If
the user wishes to use their package manager, and Atuin is maintained
there, then they can choose to do so.

This way, we can ensure that users are running a known build, can easily
uninstall (just delete the atuin dir), easily update, etc. Builds will
use our lockfile, and can have their checksum verified. Later, I'd like
to introduce build signing.

As Axo are focused on release engineering, they will likely have
resolved many more issues than we have - libc versions, etc.

I'm not particularly happy with our response of "just use your package
manager", as many users seem to have difficulty there. It's unclear what
our installer has done, as this behaviour varies massively across
systems. It's also unclear how some package maintainers may have patched
things

I'm hoping that some better release tooling will lead to more confidence
in the process, and therefore more frequent releases.

Uninstall clarity: #111, #372, #640, #1485, #1546, #2049, #1529

* config

* add protobuf

* test build

* use native arm mac

* lol

* add toolchain

* use 1.78, 2vcpu

* nix flake update

* 1.77
2024-06-05 13:25:01 +01:00
9943c53a70 fix: Replace serde_yaml::to_string with serde_json::to_string_yaml (#2087) 2024-06-04 21:44:51 +01:00
7e665fc5b6 chore(deps): cargo update (#2083) 2024-06-04 12:05:03 +01:00
1ecc1d20e9 chore: Add Systemd config for self-hosted server (#1879) 2024-06-03 11:20:15 +01:00
ae841bef9b chore(deps): flake.lock: Update (#2072)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cf8cc1201be8bc71b7cbbbdaf349b22f4f99c7ae?narHash=sha256-yNAevSKF4krRWacmLUsLK7D7PlfuY3zF0lYnGYNi9vQ%3D' (2024-04-28)
  → 'github:NixOS/nixpkgs/6132b0f6e344ce2fe34fc051b72fb46e34f668e0?narHash=sha256-7R2ZvOnvd9h8fDd65p0JnB7wXfUvreox3xFdYWd1BnY%3D' (2024-05-30)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-03 11:08:53 +01:00
511d84ce8d chore(deps): bump serde_yaml from 0.9.32 to 0.9.34+deprecated (#2078)
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.9.32 to 0.9.34+deprecated.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.9.32...0.9.34)

---
updated-dependencies:
- dependency-name: serde_yaml
  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-06-03 11:07:46 +01:00
5f2cc51dd1 chore(deps): raise MSRV to 1.74 to match dependencies (#2069)
* chore(deps): raise MSRV to 1.74 to match dependencies

* Update Cargo.toml
2024-06-03 11:04:40 +01:00
df81d27544 chore(ci): don't run "Update Nix Deps" CI on forks (#2070) 2024-06-03 11:03:52 +01:00
b05761bb37 fix(client): better error reporting on login/registration (#2076) 2024-06-03 10:57:31 +01:00
96163c5591 feat(doctor): report sqlite version (#2075) 2024-06-03 10:51:31 +01:00
928dce4a8c chore(deps): bump rmp from 0.8.12 to 0.8.14 (#2079)
Bumps [rmp](https://github.com/3Hren/msgpack-rust) from 0.8.12 to 0.8.14.
- [Release notes](https://github.com/3Hren/msgpack-rust/releases)
- [Commits](https://github.com/3Hren/msgpack-rust/commits/rmp/v0.8.14)

---
updated-dependencies:
- dependency-name: rmp
  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-06-03 09:59:15 +01:00
b0b1d07cb5 fix(deps): replace parse_duration with humantime (#2074)
The former is no longer maintained, with a long standing security
advisory (RUSTSEC-2021-0041).
2024-06-03 09:03:23 +01:00
83637d96b0 chore(install): log cargo and rustc version (#2068) 2024-05-31 19:13:39 +01:00
c694a0a67f chore(deps): relax sqlx and argon2 dependencies (#2065)
* Bump sqlx dependency

* Relax dependencies for Fedora
2024-05-31 09:44:55 +01:00
f6918d9d13 fix(bash): fix a workaround for bash-5.2 keybindings (#2060) 2024-05-30 19:32:26 +01:00
21109517c0 fix(stats): generation for commands starting with a pipe (#2058)
Closes #1882
2024-05-30 15:55:29 +01:00
4d74e38a51 chore: handle rate limited responses (#2057)
For Atuin Cloud, we rate limit login attempts (and a few other endpoints). Ensure that the user gets a descriptive response

For self hosted users, if you wish to rate limit, I'd suggest
configuring this with your reverse proxy.
2024-05-30 13:03:15 +01:00
467f89c104 feat(ui): add login/register dialog (#2056) 2024-05-30 12:49:22 +01:00
15618f19ab chore(deps): bump rusty_paseto and rusty_paserk (#2054) 2024-05-29 17:19:37 +00:00
bf2788259c fix(ui): fix mistake in last pr (#2053) 2024-05-28 16:38:25 +01:00
b49c73de3e fix(ui): handle being logged out gracefully (#2052)
* fix(ui): handle being logged out gracefully

* use settings.logged_in
2024-05-28 16:28:09 +01:00
1bb63d0f5a fix: save sync time in daemon (#2051) 2024-05-28 15:05:29 +01:00
a9e1f8607f chore(deps): bump tracing-tree from 0.3.0 to 0.3.1 (#2046)
Bumps [tracing-tree](https://github.com/davidbarsky/tracing-tree) from 0.3.0 to 0.3.1.
- [Release notes](https://github.com/davidbarsky/tracing-tree/releases)
- [Commits](https://github.com/davidbarsky/tracing-tree/commits)

---
updated-dependencies:
- dependency-name: tracing-tree
  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-05-28 14:54:26 +01:00
fc4dfe4fff feat(ui): use correct username on welcome screen (#2050)
* wip

* fetch and use username
2024-05-28 14:54:05 +01:00
43fb9ca745 chore(deps): bump uuid from 1.7.0 to 1.8.0 (#2047)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.7.0...1.8.0)

---
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>
2024-05-28 07:57:12 +01:00
2e88321aec feat: support systemd socket activation for daemon (#2039)
This avoids issues with clients attempting to connect to the daemon
while it's starting, systemd creates the socket early and will queue
connections up until the daemon is ready to accept them.
2024-05-25 13:03:55 +01:00
40543eb8f9 perf: only open the database for commands if strictly required (#2043)
The client commands would open sqlite, even if not 100% required

Remove this for

1. history start/end
2. shell init

Init seems to be around 2ms faster on my system, with this change.
2024-05-25 11:58:52 +01:00
8d99ee0a69 chore(codespell): ignore CODE_OF_CONDUCT (#2044)
Several dictionaries suggest keeping the hyphen. In fact, it's generally
a good idea to hyphenate with too many adjacent vowels.
2024-05-25 10:19:26 +01:00
fbd76976ab chore(deps): bump the cargo group with 2 updates (#2041)
Bumps the cargo group with 2 updates: [rustls](https://github.com/rustls/rustls) and [h2](https://github.com/hyperium/h2).


Updates `rustls` from 0.21.10 to 0.21.11
- [Release notes](https://github.com/rustls/rustls/releases)
- [Changelog](https://github.com/rustls/rustls/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustls/rustls/compare/v/0.21.10...v/0.21.11)

Updates `h2` from 0.3.24 to 0.3.26
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/v0.3.26/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.24...v0.3.26)

---
updated-dependencies:
- dependency-name: rustls
  dependency-type: direct:production
  dependency-group: cargo
- dependency-name: h2
  dependency-type: indirect
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-25 07:39:12 +01:00
413d3e3626 feat: support importing from replxx history files (#2024)
* Support importing from replxx history files

* Fix clippy error.

Also Remove auto-detect for replxx which makes no sense.

* Add some tests
2024-05-21 11:12:17 +07:00
8dc8448de0 fix(daemon): do not try to sync if logged out (#2037)
* fix(daemon): do not try to sync if logged out

I've also added Settings::logged_in, as there are a few places where we
switch on login state.

* make session_token a function
2024-05-21 10:43:08 +07:00
b636be8b02 chore(deps): bump tokio from 1.36.0 to 1.37.0 (#2033)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.36.0 to 1.37.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.36.0...tokio-1.37.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>
2024-05-21 10:09:49 +07:00
ec98f1456d chore(deps): bump serde from 1.0.197 to 1.0.202 (#2034)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.197 to 1.0.202.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.197...v1.0.202)

---
updated-dependencies:
- dependency-name: serde
  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-05-21 09:49:00 +07:00
800cbe5519 chore(deps): bump debian (#2036)
Bumps debian from bullseye-20240423-slim to bullseye-20240513-slim.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 09:48:40 +07:00
32930846e6 fix: redact password in database URI when logging (#2032)
Previously, in the event that there was a configuration issue and the
atuin server failed to connect to PostgreSQL, it would log the password.

For example, if the password authentication failed the following log
message would be printed:

Error: failed to connect to db: PostgresSettings { db_uri:
    "postgres://atuin:definitelymypassword@db.example.com/atuin" }

This change sets the password to "****" when printing it via Debug:

Error: failed to connect to db: PostgresSettings { db_uri:
    "postgres://atuin:****@db.example.com/atuin" }

Hopefully few people use **** as the actual password.
2024-05-21 09:25:17 +07:00
95c9168944 fix: save sync time in daemon (#2029) 2024-05-18 09:46:48 +07:00
64b7581644 chore: clarify default config file (#2026) 2024-05-17 09:50:13 +07:00
2e35af1c86 fix: bogus error message wording (#1283) 2024-05-16 07:51:25 +07:00
34265613b8 feat(ui): add history explore (#2022)
* break out HistoryRow, add drawer

* syntax highlighting!

* smaller text

* allow inspecting all old commands, no drag command

* fix query bug

* add loader
2024-05-14 12:16:04 +07:00
58f0bd61e6 fix: alias enable/enabled in settings (#2021) 2024-05-14 10:23:05 +07:00
7672286814 chore(deps): bump base64 from 0.21.7 to 0.22.1 (#2017)
Bumps [base64](https://github.com/marshallpierce/rust-base64) from 0.21.7 to 0.22.1.
- [Changelog](https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md)
- [Commits](https://github.com/marshallpierce/rust-base64/compare/v0.21.7...v0.22.1)

---
updated-dependencies:
- dependency-name: base64
  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-05-14 10:07:20 +07:00