Commit Graph

1255 Commits

Author SHA1 Message Date
Remo Senekowitsch
9fa223eaaf
chore(build): compile protobufs with protox (#2122)
* chore(build): compile protobufs with protox

protox is a pure-rust implementation of the protobuf compiler.
Therefore, it can be managed by cargo.

This removes the implicit dependency on protoc being available
in the environment for the build.

* fix(build): replace copypasta in build script

The paths passed to `compile` aren't actually used by the build.
`skip_protoc_run` prevents that.
That's why a clean build succeeds even with this mistake.

However, the paths are passed to a `cargo:rerun-if-changed` directive.
So this mistake would've caused a failed incremental build if the
protobuf definitions were changed.
2024-06-12 16:45:38 +01:00
Ellie Huxtable
511db8dcce
chore: remove unnecessary proto import (#2120) 2024-06-12 16:07:41 +01:00
Ellie Huxtable
3f7d550e98
chore(deps): update frontend deps (#2118) 2024-06-11 15:30:21 +01:00
Ellie Huxtable
7c9f376cf7
fix(gui): update deps (#2116) 2024-06-11 15:26:33 +01:00
Ellie Huxtable
55a2fe50f7
fix: cargo binstall config (#2112) 2024-06-10 20:33:10 +01:00
dependabot[bot]
758ba930eb
chore(deps): bump clap_complete from 4.5.2 to 4.5.3 (#2100)
Bumps [clap_complete](https://github.com/clap-rs/clap) from 4.5.2 to 4.5.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.5.2...clap_complete-v4.5.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>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 18:02:34 +01:00
Ellie Huxtable
279f57b6d7
chore: add installer e2e tests (#2110)
* chore: add installer e2e tests

* only run if edited or main
2024-06-10 17:01:00 +01:00
Ellie Huxtable
b88c42f3f9
feat: use cargo-dist installer from our install script (#2108)
* feat: use cargo-dist installer from our install script

* shellcheck
2024-06-10 16:36:10 +01:00
Ellie Huxtable
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
Ellie Huxtable
92c2b6b69d
fix(crate): add missing description (#2106) 2024-06-10 15:14:06 +01:00
dependabot[bot]
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
Ellie Huxtable
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.
2024-06-10 14:42:32 +01:00
Ellie Huxtable
c0d2c96177
chore: show scope in changelog (#2102) 2024-06-10 08:11:46 +01:00
Ellie Huxtable
85aa88abab
docs: add docs for store subcommand (#2097)
Closes #2095
2024-06-07 17:18:55 +01:00
Ellie Huxtable
eb4a5ab4cd
chore: update email, gitignore, tweak ui (#2094) 2024-06-06 15:03:43 +01:00
Ellie Huxtable
d7f77ebfe1
feat(ui): setup single-instance (#2093) 2024-06-06 10:36:39 +01:00
Ellie Huxtable
c102851e29
chore(release): v18.3.0-prerelease.1 (#2090)
* chore(release): v18.3.0-prerelease.1

* update contributors

* changelog, plan only on prs
2024-06-05 14:56:10 +01:00
Ellie Huxtable
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
Hesam Pakdaman
9943c53a70
fix: Replace serde_yaml::to_string with serde_json::to_string_yaml (#2087) 2024-06-04 21:44:51 +01:00
Ellie Huxtable
7e665fc5b6
chore(deps): cargo update (#2083) 2024-06-04 12:05:03 +01:00
Sven-Hendrik Haase
1ecc1d20e9
chore: Add Systemd config for self-hosted server (#1879) 2024-06-03 11:20:15 +01:00
github-actions[bot]
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
dependabot[bot]
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
Xavier Vello
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
Xavier Vello
df81d27544
chore(ci): don't run "Update Nix Deps" CI on forks (#2070) 2024-06-03 11:03:52 +01:00
Xavier Vello
b05761bb37
fix(client): better error reporting on login/registration (#2076) 2024-06-03 10:57:31 +01:00
Xavier Vello
96163c5591
feat(doctor): report sqlite version (#2075) 2024-06-03 10:51:31 +01:00
dependabot[bot]
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
Blair Noctis
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
Xavier Vello
83637d96b0
chore(install): log cargo and rustc version (#2068) 2024-05-31 19:13:39 +01:00
Cristian Le
c694a0a67f
chore(deps): relax sqlx and argon2 dependencies (#2065)
* Bump sqlx dependency

* Relax dependencies for Fedora
2024-05-31 09:44:55 +01:00
Koichi Murase
f6918d9d13
fix(bash): fix a workaround for bash-5.2 keybindings (#2060) 2024-05-30 19:32:26 +01:00
Sandro
21109517c0
fix(stats): generation for commands starting with a pipe (#2058)
Closes #1882
2024-05-30 15:55:29 +01:00
Ellie Huxtable
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
Ellie Huxtable
467f89c104
feat(ui): add login/register dialog (#2056) 2024-05-30 12:49:22 +01:00
Conrad Ludgate
15618f19ab
chore(deps): bump rusty_paseto and rusty_paserk (#2054) 2024-05-29 17:19:37 +00:00
Ellie Huxtable
bf2788259c
fix(ui): fix mistake in last pr (#2053) 2024-05-28 16:38:25 +01:00
Ellie Huxtable
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
Ellie Huxtable
1bb63d0f5a
fix: save sync time in daemon (#2051) 2024-05-28 15:05:29 +01:00
dependabot[bot]
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
Ellie Huxtable
fc4dfe4fff
feat(ui): use correct username on welcome screen (#2050)
* wip

* fetch and use username
2024-05-28 14:54:05 +01:00
dependabot[bot]
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
Nemo157
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
Ellie Huxtable
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
Ellie Huxtable
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
dependabot[bot]
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
Amos Bird
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
Ellie Huxtable
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
dependabot[bot]
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
dependabot[bot]
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