Commit graph

29 commits

Author SHA1 Message Date
Scotte Zinn
7f868711f0
feat: Add sqlite server support for self-hosting (#2770)
* Move db_uri setting to DbSettings

* WIP: sqlite crate framework

* WIP: Migrations

* WIP: sqlite implementation

* Add sqlite3 to Docker image

* verified_at needed for user query

* chore(deps): bump debian (#2772)

Bumps debian from bookworm-20250428-slim to bookworm-20250520-slim.

---
updated-dependencies:
- dependency-name: debian
  dependency-version: bookworm-20250520-slim
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(doctor): mention the required ble.sh version (#2774)

References:

https://forum.atuin.sh/t/1047

* fix: Don't print errors in `zsh_autosuggest` helper (#2780)

Previously, this would result in long multi-line errors when typing,
making it hard to see the shell prompt:
```
$  Error: could not load client settings

Caused by:
   0: could not create config file
   1: failed to create file `/home/jyn/.config/atuin/config.toml`
   2: Required key not available (os error 126)

Location:
    atuin-client/src/settings.rs:675:54
 fError: could not load client settings

Caused by:
   0: could not create config file
   1: failed to create file `/home/jyn/.config/atuin/config.toml`
   2: Required key not available (os error 126)

Location:
    atuin-client/src/settings.rs:675:54
 faError: could not load client settings
```

Silence these in autosuggestions, such that they only show up when
explicitly invoking atuin.

* fix: `atuin.nu` enchancements (#2778)

* PR feedback

* Remove sqlite3 package

* fix(search): prevent panic on malformed format strings (#2776) (#2777)

* fix(search): prevent panic on malformed format strings (#2776)

- Wrap format operations in panic catcher for graceful error handling
- Improve error messages with context-aware guidance for common issues
- Let runtime-format parser handle validation to avoid blocking valid formats

Fixes crash when using malformed format strings by catching formatting
errors gracefully and providing actionable guidance without restricting
legitimate format patterns like {command} or {time}.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Satisfy cargo fmt

* test(search): add regression tests for format string panic (#2776)

- Add test for malformed JSON format strings that previously caused panics
- Add test to ensure valid format strings continue to work
- Prevent future regressions of the format string panic issue

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Koichi Murase <myoga.murase@gmail.com>
Co-authored-by: jyn <github@jyn.dev>
Co-authored-by: Tyarel8 <98483313+Tyarel8@users.noreply.github.com>
Co-authored-by: Brian Cosgrove <cosgroveb@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-23 12:31:55 +01:00
Ellie Huxtable
84589cab15
chore(release): prepare for release 18.6.1 (#2749) 2025-05-08 14:10:38 -07:00
Ellie Huxtable
45460d4c31
chore(release): prepare for release 18.6.0 (#2740)
Co-authored-by: Ellie Huxtable <ellie@mac.lan>
2025-05-06 16:18:21 -07:00
Ellie Huxtable
10df8ff8d1
chore(release): prepare for release 18.6.0-beta.1 (#2723) 2025-04-28 14:32:07 +01:00
Ellie Huxtable
09fc76ed82
chore(release): prepare for release 18.5.0 (#2685)
* chore(release): prepare for release 18.5.0

* update workflow ubuntu version

* revert because dist checks lol
2025-04-08 17:05:12 +01:00
Ellie Huxtable
1f6031d84a
chore(release): prepare for release 18.5.0-beta.3 (#2678) 2025-04-07 14:33:24 +01:00
Ellie Huxtable
da672d5bc3 chore(release): prepare for release 18.5.0-beta.2 2025-04-02 13:23:07 +01:00
Ellie Huxtable
14ec768b45
chore: migrate to rust 2024 (#2635)
* chore: upgrade to 2024 edition

* ugh unsafe

* format

* nixxxxxxxxxxx why
2025-03-19 12:44:20 +00:00
Ellie Huxtable
8274e727cb
chore(release): prepare for release 18.5.0-beta.1 (#2622)
* chore(release): prepare for release 18.5.0-beta.1

* no codespell on contributors
2025-03-11 18:16:19 +00:00
Andrew Aylett
80c41841a9
chore: Remove unneeded dependencies (#2523)
These dependencies are unused in actual code, and the test I've removed
is a remnant from a move to use an external library -- it was useful to
show that the mechanical transformation was correct, but it's only
testing that library nowadays.
2025-01-07 20:04:48 +00:00
Ellie Huxtable
dc7c26a640
chore(release): prepare for release v18.4.0 (#2495) 2024-12-27 15:54:38 +00:00
Ellie Huxtable
cb57053919
chore(release): prepare for release 18.4.0-beta.5 (#2472) 2024-12-05 23:24:04 +00:00
Ellie Huxtable
33f00df382
chore(release): prepare for release 18.4.0-beta.4 (#2469) 2024-12-05 11:32:20 +00:00
Ellie Huxtable
3cf52990e4
chore(release): prepare for release v18.4.0-beta.3 (#2305) 2024-07-23 13:38:41 +01:00
Ellie Huxtable
0e7f9b29d2
chore(release): prepare for release v18.4.0-beta.2 (#2287)
* feat(gui): add runbook list, ability to create and delete, sql storage (#2282)

* wip

* saving works :))

* functioning delete button

* persist selection properly

* update contributors

* update changelog
2024-07-16 15:19:33 +01:00
Ellie Huxtable
a67cfc82fe
fix: ambiguous column name (#2232) 2024-07-03 08:24:05 +01:00
Ellie Huxtable
5fe8ae05e5
fix: idx cache inconsistency (#2231) 2024-07-03 08:10:12 +01:00
Ellie Huxtable
c3723aaf27
feat: monitor idx cache consistency before switching (#2229) 2024-07-02 14:47:41 +01:00
Ellie Huxtable
884d97d55e
fix: add idx cache unique index (#2226) 2024-07-02 11:36:22 +01:00
Ellie Huxtable
0def653484
perf: write to the idx cache (#2225) 2024-07-02 11:14:37 +01:00
Ellie Huxtable
8b17690359
perf: create idx cache table (#2140)
* perf: add idx cache

* Update crates/atuin-server-postgres/migrations/20240614104159_idx-cache.sql

* indentation

* remove trigger - for each row is too much, should be once per transaction
2024-07-01 13:49:46 +01:00
Ellie Huxtable
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
Ellie Huxtable
9e36f63c6e
fix: ensure we cleanup all tables when deleting (#2191) 2024-06-24 16:46:19 +01:00
Ellie Huxtable
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
dependabot[bot]
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
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
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
Jeremy Cline
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
Ellie Huxtable
95cc472037
chore: move crates into crates/ dir (#1958)
I'd like to tidy up the root a little, and it's nice to have all the
rust crates in one place
2024-04-18 16:41:28 +01:00