cargo atuin 18.20.0

7 hours ago

Release Notes

Bug Fixes

  • (ai) Execute commands from enter in the bash integration (#3892)
  • (ai) Answer unrecognized tool calls with an error result (#3893)
  • (bash) Localize "READLINE_{LINE,POINT}" in Bash <= 3.2 (#3926)
  • (common) Survive wide characters on a one-column screen (#3876)
  • (docs) Don't say enter_accept defaults to true in example config.toml (#3865)
  • (history) Don't misclassify users named after an agent as agents (#3951)
  • (install) Atuin init for bash (#3919)
  • (nix) Add an RPATH for OpenSSL so the built binary runs (#3852)
  • (search) Prepare daemon search index in shell init scripts (#3864)
  • (search) Fall back when daemon-fuzzy fails (#3895)
  • (search) Don't overflow on a session id with an out-of-range uuid timestamp (#3965)
  • (sync) Fix off-by-one bugs in sync (#3913)
  • (wrapped) Panic when every command is in stats.ignored_commands (#3925)
  • (zsh) Don't clobber RPS1 when wrapping the prompt for OSC 133 (#3861)
  • 'atuin login' prints 401 failures until authorized (#3916)
  • Silence hub 401 log spam during installer login (#3918)
  • Fix panics from vt100::Parser::new (#3933)
  • Make pty-proxy socket path shorter (#3991)

Documentation

  • Document rstest/proptest testing conventions in AGENTS.md (#3942)

Features

  • (common) Add rmp::serde iterator-to-MessagePack helper (#3897)
  • (daemon) Change default daemon socket path (#3910)
  • (domain) Add RecordTag string enum (#3899)
  • (sync) Send the auth token on the capabilities fetch when logged in (#3974)
  • Add agent hooks for opencode (#3844)
  • Add devcontainers (#3871)
  • Setup claude in devcontainers (#3878)
  • Add windows/powershell highlighting (#3883)
  • Add turn time and tips to Atuin AI (#3870)
  • Enable syntax highlighting on illumos (#3879)
  • Offer account login during install setup (#3849)
  • Client-side history packfiles (#3737)
  • Parallel packfile upload/download (#3944)
  • Eager Key Query (#3968)
  • Capabilities-driven sync page size (#3979)
  • Improve powershell highlighting (#3917)
  • Enable gzip and zstd for reqwest (#3980)

Miscellaneous Tasks

  • (ai) Remove obsolete atuin ai init command (#3936)
  • (docker) Install the toolchain pinned by rust-toolchain.toml (#3963)
  • (lints) Use workspace lints instead of overriding lints in GHA workflow (#3949)
  • (rustfmt) Update Rustfmt config (#3945)
  • (tests) Fix flaky pty-proxy test (#3874)
  • Add profiling to the app (#3853)
  • Temporarily drop tailscale and atuin (#3873)
  • Instruct agents to use rstest in AGENTS.md (#3912)
  • More xdg compliance (#3932)
  • Remove atuin-nucleo (#3950)
  • Enable more Clippy lints (#3953)
  • Update to rust 1.98 (#3964)
  • Revert changes to atuin-pty-proxy from lab share PR / feat: store pty-proxy sockets in /tmp/atuin-$UID (#3988)

Performance

  • (sql) Chunked bulk inserts + shared sqlite wrapper (#3981)
  • (sync) Batch post-sync history indexing into bulk transactions (#3947)
  • (sync) Parallel record downloads (#3955)
  • (tracing) OTel export + instrumentation coverage (#3952)

Refactor

  • (ai/bash) Use existing facility for accept-line (#3928)
  • (bash) Remove redundant check of existing preexec-backend (#3927)
  • (caps) CapClient owns its client and warms on construction (#3898)
  • (client) Own sync_addr via Arc, drop Client lifetime (#3896)
  • (client) Remove the Database trait in favor of Sqlite (#3946)
  • (deps) Bump pymdown-extensions from 11.0 to 11.0.1 in /docs in the uv group across 1 directory (#3875)
  • (domain) Make Record::with_data consume self, add with_data_clone (#3900)
  • (domain) Make Record.version a RecordVersion enum (#3903)
  • (domain) Drop the vestigial Host.name field (#3941)
  • (encryption) Introduce PasetoV4Key newtype for the encryption key (#3860)
  • (encryption) Move encryption into atuin-common. (#3863)
  • (record) Name the (host, tag) pair as RecordSeriesKey (#3961)
  • (sqlx) Use FromRow instead of manual row mapping (#3958)
  • (sync) Introduce SyncEngine to hold shared sync state (#3962)
  • Add a CmdOrigin Type (#3943)

Bug

  • Avoid rare race condition in sync (#3972)

atuin-server 18.20.0

Install atuin-server 18.20.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/atuinsh/atuin/releases/download/v18.20.0/atuin-server-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/atuinsh/atuin/releases/download/v18.20.0/atuin-server-installer.ps1 | iex"

Download atuin-server 18.20.0

File Platform Checksum
atuin-server-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
atuin-server-x86_64-apple-darwin.tar.gz Intel macOS checksum
atuin-server-x86_64-pc-windows-msvc.zip x64 Windows checksum
atuin-server-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
atuin-server-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
atuin-server-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
atuin-server-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo atuinsh/atuin

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>

atuin 18.20.0

Install atuin 18.20.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/atuinsh/atuin/releases/download/v18.20.0/atuin-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/atuinsh/atuin/releases/download/v18.20.0/atuin-installer.ps1 | iex"

Download atuin 18.20.0

File Platform Checksum
atuin-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
atuin-x86_64-apple-darwin.tar.gz Intel macOS checksum
atuin-x86_64-pc-windows-msvc.zip x64 Windows checksum
atuin-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
atuin-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
atuin-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
atuin-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo atuinsh/atuin

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>

Don't miss a new atuin release

NewReleases is sending notifications on new releases.