aboutsummaryrefslogtreecommitdiffstats
path: root/crates/atuin-server/src (follow)
Commit message (Collapse)AuthorAge
* chore!: remove total_history from api index response (#3094)Ellie Huxtable2026-01-23
| | | | | | | | | | | | | Remove the expensive and inaccurate `total_history` field from the API index endpoint. The query `select sum(total) from total_history_count_user` ran on every request but is no longer relevant. The underlying table remains for per-user cached counts used by `/sync/count`. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
* chore(deps)!: update tls deps, remove built-in tls server support (#3091)Ellie Huxtable2026-01-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update reqwest from 0.12 to 0.13 and remove the built-in TLS termination from atuin-server. Users should use a reverse proxy (nginx, caddy, traefik) for TLS/HTTPS support instead. This removes: - axum-server and rustls dependencies - The [tls] configuration section - The launch_with_tls function Also updates metrics-exporter-prometheus from 0.17 to 0.18. The reverse proxy approach is standard and provides better flexibility for certificate management. I'd rather keep our server stack as minimal as possible. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
* feat: allow disabling sync v1 (#3030)Ellie Huxtable2025-12-18
| | | | It takes up a very large amount of our query time, despite having been replaced for >1yr now. We will be dropping support for it on atuin hub
* chore(deps): Update some packages realated to ring and aws-lc (#2991)Cristian Le2025-11-17
| | | | | | | | | | | | | | After `aws-lc-rs 0.15` it seems the illumos issue is resolved, so reviving the `metrics` et.al. update PR, specifically: - Update `metrics` to 0.24 and `metrics-exporter-prometheus` to 0.17 - Drop the `ring` feature from `rustls` - Update `reqwest` to 0.12 (dropping `rustls 0.21` from the lock file) There still seem to be `ring` dependencies, but not sure if these can be dropped --------- Co-authored-by: Helmut K. C. Tessarek <tessarek@evermeet.cx>
* fix: run `cargo fmt`Ray Kohler2025-09-10
|
* fix: `cargo update` and changes needed to accomodate itRay Kohler2025-09-10
|
* chore: update to rust 1.88 (#2815)Ellie Huxtable2025-07-22
| | | | | | | | | * chore: update to rust 1.88 * clippy + fmt * update ci version * update flake
* feat: Add sqlite server support for self-hosting (#2770)Scotte Zinn2025-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* chore(deps): Update postmark to 0.11 (#2730)Cristian Le2025-05-01
|
* chore: migrate to rust 2024 (#2635)Ellie Huxtable2025-03-19
| | | | | | | | | * chore: upgrade to 2024 edition * ugh unsafe * format * nixxxxxxxxxxx why
* chore: update rust toolchain to 1.85 (#2618)Ellie Huxtable2025-03-09
| | | | | | | | | | | | | | * chore: update rust toolchain to 1.85 * nix things * make clippy happy I've replaced a bunch of &Option<String> with Option<String>. They were not in hot loops, so a single clone is really no big deal + keeps things simpler. * fmt
* feat(health): add health check endpoint at `/healthz` (#2549)Hunter Casten2025-03-09
| | | | | * feat(health): add health check endpoint at `/healthz` * feat(health-check): remove invalid health-check from docker compose
* fix: disable mail by default, resolve #2404 (#2405)Ellie Huxtable2024-10-02
|
* chore(deps): Update rustls and axum-server (#2382)Tobias Genannt2024-09-09
|
* fix(mail): enable correct tls features for postmark client (#2347)Ellie Huxtable2024-08-06
|
* fix(mail): incorrect alias and error logs (#2346)Ellie Huxtable2024-08-06
|
* feat: allow advertising a fake version to clients (#2228)Ellie Huxtable2024-07-02
| | | | | | | | | * feat: allow advertising a fake version to clients The server usually runs unstable Atuin, and is well monitored. But let's not advertised the unstable version to clients, as they will notify users there is an update available. * fix test build
* perf: write to the idx cache (#2225)Ellie Huxtable2024-07-02
|
* feat: add user account verification (#2190)Ellie Huxtable2024-06-24
| | | | | | | | | | | | | | | | | | | * 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
* fix: alias enable/enabled in settings (#2021)Ellie Huxtable2024-05-14
|
* chore: add some more debug logs (#1979)Ellie Huxtable2024-04-25
| | | | | | | | | | | | P99 is usually <100ms which is excellent, but occasionally has big spikes to 1000ms. This is only on the record index. I don't want this to get out of hand. I've ran a few test queries and they all complete very fast, and are purely index scans. Hopefully this helps figure out if it's a specific user with tonnes of stores or something? Otherwise there could be something up with my db. I should probably also figure out some proper log levels or tracing lol.
* chore: add some more logging to handlers (#1971)Ellie Huxtable2024-04-22
|
* chore: move crates into crates/ dir (#1958)Ellie Huxtable2024-04-18
I'd like to tidy up the root a little, and it's nice to have all the rust crates in one place