Commit Graph

70 Commits

Author SHA1 Message Date
a223fcb718 feat: Add GitLab PAT to secret patterns (#2196) 2024-06-25 14:32:45 +01:00
c8b3e418a1 chore(release): prepare for release v18.4.0-beta.1 (#2195)
* chore(release): prepare for release v18.4.0-beta.1

* remove full release test
2024-06-25 12:35:12 +01:00
05d1d9b136 chore(deps): update ratatui to 0.27 (#2193) 2024-06-25 09:43:42 +01:00
9e36f63c6e fix: ensure we cleanup all tables when deleting (#2191) 2024-06-24 16:46:19 +01:00
67d64ec4b3 feat: add user account verification (#2190)
* add verified column to users table

* add database functions to check if verified, or to verify

* getting there

* verification check

* use base64 urlsafe no pad

* add verification client

* clippy

* correct docs

* fix integration tests
2024-06-24 14:54:54 +01:00
8956142cc5 fix: Some --help comments didn't show properly (#2176)
* FIX: Some --help comments didn't show properly (#3)

* FIX: Some --help comments didn't show properly

* FIX: Some --help comments didn't show properly

* FIX: Some --help comments didn't show properly

* FIX: Some --help comments didn't show properly

* Update crates/atuin/src/command/client.rs

grammatical sentence

Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>

* Update crates/atuin/src/command/client.rs

---------

Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2024-06-24 07:23:29 +00:00
5238d71e66 chore(deps): bump url from 2.5.1 to 2.5.2 (#2182)
Bumps [url](https://github.com/servo/rust-url) from 2.5.1 to 2.5.2.
- [Release notes](https://github.com/servo/rust-url/releases)
- [Commits](https://github.com/servo/rust-url/compare/v2.5.1...v2.5.2)

---
updated-dependencies:
- dependency-name: url
  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-24 08:04:47 +01:00
b06b7b509a feat(history): filter out various environment variables containing potential secrets (#2174) 2024-06-20 16:50:29 +01:00
9b82bba53f feat(daemon): follow XDG_RUNTIME_DIR if set (#2171)
If XDG_RUNTIME_DIR is set, put the socket file there.

If not, default to storing it in our data dir. We cannot default to a
path such as /run/user/$UID/ because it does not exist on all systems.
Any system running systemd will set this var by default, and ensure that
the directory it points to is correctly setup.
2024-06-20 10:28:00 +01:00
5f66fb6a03 fix(gui): add support for checking if the cli is installed on windows (#2162)
* fix(windows): add support for checking if the cli is installed on windows

* refactor: remove debugging info

* refactor: cargo fmt
2024-06-19 11:55:03 +01:00
33ef734116 Fix scroll_exits default in config.toml (#2166) 2024-06-19 11:38:39 +01:00
7984f9ef0c feat(tui): configurable prefix character (#2157)
* feat(tui): configurable prefix character

* string not char because toml/json lol
2024-06-18 10:24:43 +01:00
88633b8994 feat(gui): automatically install and setup the cli/shell (#2139)
* feat(gui): automatically install and setup the cli/shell

* add shell config and toasts
2024-06-17 15:36:38 +01:00
f06408f4f7 chore(deps): bump memchr from 2.7.2 to 2.7.4 (#2151)
Bumps [memchr](https://github.com/BurntSushi/memchr) from 2.7.2 to 2.7.4.
- [Commits](https://github.com/BurntSushi/memchr/compare/2.7.2...2.7.4)

---
updated-dependencies:
- dependency-name: memchr
  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-17 09:12:37 +01:00
0a6bfbba3e fix: unitless sync_frequence = 0 not parsed by humantime (#2154)
Resolve #2147
2024-06-17 08:44:25 +01:00
768bd2f66c chore(deps): bump regex from 1.10.4 to 1.10.5 (#2132)
Bumps [regex](https://github.com/rust-lang/regex) from 1.10.4 to 1.10.5.
- [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.10.4...1.10.5)

---
updated-dependencies:
- dependency-name: regex
  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-13 14:33:49 +01:00
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
511db8dcce chore: remove unnecessary proto import (#2120) 2024-06-12 16:07:41 +01:00
55a2fe50f7 fix: cargo binstall config (#2112) 2024-06-10 20:33:10 +01:00
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
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.
2024-06-10 14:42:32 +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
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
9943c53a70 fix: Replace serde_yaml::to_string with serde_json::to_string_yaml (#2087) 2024-06-04 21:44:51 +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
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
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
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
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
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
58f0bd61e6 fix: alias enable/enabled in settings (#2021) 2024-05-14 10:23:05 +07:00
ce67e52772 feat(daemon): add support for daemon on windows (#2014)
* fix: gracefully exit on windows

* feat(daemon): tcp support for windows

* feat(daemon): add tcp port configuration

* fix: logging and fix compiler error

* docs: add build dependency to the readme

fix(docs): move a line up

* fix: missing field error

* docs: adds the daemon section to the default config

* fix: clippy and fmt

* feat: Update README.md

Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>

* refactor: changes tcp port and other stuff as per request

* fix(config): update default tcp port in example config

* fix: complier error on unix

* refactor: make the cfg stuff look better

---------

Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2024-05-13 09:35:34 +07:00
0da534d524 fix: add incremental rebuild to daemon loop (#2010) 2024-05-08 17:28:52 +01:00