Atuin v18.4.0
Atuin supercharges your productivity by enabling you to rapidly retrieve any command you’ve ran, at any time, from anywhere. It stores your shell history in a database, recording additional command context and syncing it (e2e encrypted) across devices. Get started here
Announcing a new release of Atuin! v18.4 is out now. Thank you to everyone who contributed in this release. A full changelog is included below, but I'll pull out some key points
Links
Thanks to @philtweir, we now have a theming system! It's too much to write about here, so see the section in the docs: https://docs.atuin.sh/guide/theming/
Records by default
It's been out for a while, and we've been encouraging users to switch manually. With 18.4, Atuin now defaults to using the new record sync (aka sync v2). This should happen transparently.
All machines need to run the same version of sync - either ensure your config has
[sync]
records = true
at the bottom, or ensure all machines run Atuin v18.4
If you installed Atuin after April 2024, there's nothing for you to do - this affects older users only.
Default changes
With this release, some defaults have changed. The most obvious will likely be the switch to the compact UI style + inline rendering
This can be reverted by setting
style = "full"
inline_height = 0
Read more here: https://github.com/atuinsh/atuin/issues/2249
atuin wrapped
See your stats for 2024 with atuin wrapped
Build changes
Thanks to @senekor, we no longer require protoc available at build time, and instead use protox
Bug Fixes
- (crate) Add missing description (#2106)
- (crate) Add description to daemon crate (#2107)
- (daemon) Add context to error when unable to connect (#2394)
- (deps) Pin tiny_bip to 1.0.0 until breaking change resolved (#2412)
- (docker) Update Dockerfile (#2369)
- (history) Logic for store_failed=false (#2284)
- (mail) Incorrect alias and error logs (#2346)
- (mail) Enable correct tls features for postmark client (#2347)
- (theme) Restore original colours (#2339)
- (themes) Restore default theme, refactor (#2294)
- (tui) Press ctrl-a twice should jump to beginning of line (#2246)
- (tui) Don't panic when search result is empty and up is pressed (#2395)
- Cargo binstall config (#2112)
- Unitless sync_frequence = 0 not parsed by humantime (#2154)
- Some --help comments didn't show properly (#2176)
- Ensure we cleanup all tables when deleting (#2191)
- Add idx cache unique index (#2226)
- Idx cache inconsistency (#2231)
- Ambiguous column name (#2232)
- Atuin-daemon optional dependency (#2306)
- Windows build error (#2321)
- Codespell config still references the ui (#2330)
- Remove dbg! macro (#2355)
- Disable mail by default, resolve #2404 (#2405)
- Time offset display in
atuin status
(#2433) - Disable the actuated mirror on the x86 docker builder (#2443)
Documentation
Features
- (bash/blesh) Hook into BLE_ONLOAD to resolve loading order issue (#2234)
- (client) Add filter mode enablement and ordering configuration (#2430)
- (daemon) Follow XDG_RUNTIME_DIR if set (#2171)
- (history) Filter out various environment variables containing potential secrets (#2174)
- (tui) Configurable prefix character (#2157)
- (tui) Customizable Themes (#2236)
- (tui) Fixed preview height option (#2286)
- Use cargo-dist installer from our install script (#2108)
- Add user account verification (#2190)
- Add GitLab PAT to secret patterns (#2196)
- Add several other GitHub access token patterns (#2200)
- Add npm, Netlify and Pulumi tokens to secret patterns (#2210)
- Allow advertising a fake version to clients (#2228)
- Monitor idx cache consistency before switching (#2229)
- Ultracompact Mode (search-only) (#2357)
- Right Arrow to modify selected command (#2453)
- Provide additional clarity around key management (#2467)
- Add
atuin wrapped
(#2493)
Miscellaneous Tasks
- (build) Compile protobufs with protox (#2122)
- (ci) Do not run current ci for ui (#2189)
- (ci) Codespell again (#2332)
- (install) Use posix sh, not bash (#2204)
- (nix) De-couple atuin nix build from nixpkgs rustc version (#2123)
- Add installer e2e tests (#2110)
- Remove unnecessary proto import (#2120)
- Update to rust 1.78
- Add audit config, ignore RUSTSEC-2023-0071 (#2126)
- Setup dependabot for the ui (#2128)
- Cargo and pnpm update (#2127)
- Update to rust 1.79 (#2138)
- Update to cargo-dist 0.16, enable attestations (#2156)
- Do not use package managers in installer (#2201)
- Enable record sync by default (#2255)
- Remove ui directory (#2329)
- Update to rust 1.80 (#2344)
- Update rust to
1.80.1
(#2362) - Enable inline height and compact by default (#2249)
- Update to rust 1.82 (#2432)
- Update cargo-dist (#2471)
Performance
Testing
- Add env ATUIN_TEST_LOCAL_TIMEOUT to control test timeout of SQLite (#2337)