Bot releases are hidden (Show)
Full Changelog: https://github.com/atuinsh/atuin/compare/v18.1.0...v18.2.0
Published by ellie 7 months ago
CTRL+[
binding as <Esc>
alias (#1787)commandline
syntax, closes #1733 (#1735)Full Changelog: https://github.com/atuinsh/atuin/compare/v18.0.2...v18.1.0
Published by ellie 8 months ago
The included fix should make bash support a bit better. For further improvement, please update bash-preexec with
curl https://raw.githubusercontent.com/rcaloras/bash-preexec/master/bash-preexec.sh -o ~/.bash-preexec.sh
If you are using ble.sh, this is not required + this release will change nothing for you.
There are also no changes for any shell other than bash, and no serverside changes either
Full Changelog: https://github.com/atuinsh/atuin/compare/v18.0.1...v18.0.2
Published by ellie 8 months ago
Patch release - fixing an issue with enhanced keyboard mode. Thanks @candrewlee14!
Full Changelog: https://github.com/atuinsh/atuin/compare/v18.0.0...v18.0.1
Published by ellie 8 months ago
Please see the full release notes here: https://blog.atuin.sh/release-v18/
atuin history start
for keybindings (#1509)up
(#1515)\[\]
in PS1 with bash-preexec (#1620)Destination file already exists
in Nushell (#1530)store push --force
store pull
HISTORY => __atuin_output
(#1535)Full Changelog: https://github.com/atuinsh/atuin/compare/v17.2.1...v18.0.0
Published by ellie 10 months ago
Full Changelog: https://github.com/atuinsh/atuin/compare/v17.2.0...v17.2.1
Published by ellie 10 months ago
Release v17.2.0 is out now! Thank you to all contributors, new and old ❤️
We have always recommended that self-hosters keep their servers up to date. From this point forwards, this is now enforced. If clients are running a newer major version of Atuin than the server, they will not sync.
See more: https://forum.atuin.sh/t/release-v17-2-0/36
There's a small issue with this release, currently fixed in v17.2.1
https://github.com/atuinsh/atuin/pull/1493
The TLS config defaults are not quite setup properly, so self hosted users will need to add
[tls]
enable = false
cert_path = ""
pkey_path = ""
to their config.
enter_accept
with ble.sh
(#1465)enter_accept
for the plain Bash (#1467)Full Changelog: https://github.com/atuinsh/atuin/compare/v17.1.0...v17.2.0
Published by ellie 10 months ago
enter_accept
(#1373)atuin account delete
void session + key (#1393)cargo update
(#1419)enter_accept
best effort fixes by @arcuru in https://github.com/atuinsh/atuin/pull/1384
atuin account delete
void session + key by @shymega in https://github.com/atuinsh/atuin/pull/1393
Full Changelog: https://github.com/atuinsh/atuin/compare/v17.0.1...v17.1.0
Published by ellie 12 months ago
A few small issues were found with enter_accept after releasing - patch release to sort them out
Thanks @arcuru for fixing a bunch of things!
enter_accept
by @arcuru in https://github.com/atuinsh/atuin/pull/1341
enter_accept
by @arcuru in https://github.com/atuinsh/atuin/pull/1342
Full Changelog: https://github.com/atuinsh/atuin/compare/v17.0.0...v17.0.1
Published by ellie 12 months ago
A new release! Thank you so much to everyone that contributed
We are no longer building docker images for main
, and all images are now tagged either by release (17.0.0
) or by short commit sha (1a20afe
).
We advise that users stick to running tagged releases, and do not track an unstable branch. If you wish to run potentially unstable and unreleased code, then please do watch the repo and keep your install up to date!
We now also build docker images for ARM! This has been an issue for a long time for us, as GitHub does not provide ARM runners + emulation is very very slow. Thank you so much to @alexellis and @self-actuated for helping us out there!
enter_accept
and keybinding changesFor a long time, we have been asked about Atuin requiring two enter presses - once to select the search item, and then once more to run it from your shell. While some users were happy with this, many felt that the additional keypress slowed them down unnecessarily.
v17 introduces the enter_accept
config option. If set to true
, pressing enter will immediately select and execute the search result selected. If you'd rather select the item and then edit it in your shell, you can press tab instead.
This is enabled by default for new users only. Existing users will need to edit their config. Currently, this does not support NuShell.
We have also temporarily disabled the "up" arrow keybinding by default for NuShell, while awaiting an upstream fix, see #1329 for more.
workspace
to config.toml and config.md by @thePanz in https://github.com/atuinsh/atuin/pull/1157
workspace
config key to workspaces
by @tombh in https://github.com/atuinsh/atuin/pull/1174
case
for Linux distro choice in install.sh
by @mentalisttraceur in https://github.com/atuinsh/atuin/pull/1200
cargo update
by @ellie in https://github.com/atuinsh/atuin/pull/1218
linux/arm64
platform in CI docker build by @rriski in https://github.com/atuinsh/atuin/pull/1276
linux/arm64
platform in CI docker build" by @ellie in https://github.com/atuinsh/atuin/pull/1278
history list
by @offbyone in https://github.com/atuinsh/atuin/pull/1274
enter_accept
by @ellie in https://github.com/atuinsh/atuin/pull/1315
enter_accept
by @ellie in https://github.com/atuinsh/atuin/pull/1316
Full Changelog: https://github.com/atuinsh/atuin/compare/v16.0.0...v17.0.0
Published by ellie about 1 year ago
Announcing a new release of Atuin! v16 is out now.
This has been an interesting one. Two pretty core parts of the Atuin sync have
remained the same for the past couple of years, and performed better than I
ever anticipated. I'd always intended to replace the sync, but initially just
released something that worked "fine".
We've had issues though. In some rare circumstances, sync just won't complete.
In others, it requires atuin sync -f
, which attempts to upload/download all
history again in case some has been missed. As we grow, it becomes increasingly
important that we revisit sync and ensure it is as reliable as possible - with
lots of users, "rare" circumstances happen more often.
In this release we're introducing the "key value store". This is a new feature,
built on top of new sync and new cryptography.
The reasoning behind this is two-fold - we'd like to extend Atuin's sync and
storage capabilities, but also build a sync protocol we can truly rely upon.
Conrad did an excellent job explaining the
crypto we are using for this feature,
and I'll be following up with a similar post about the new sync protocol soon!
The goal here is to first prove that this crypto + sync are stable and
scalable, and then switch history sync over. Once done, we should be syncing
history much faster, with fewer errors, and with less data transferred. Your
data will also be kept safe with newer crypto algorithms, and we will have the
ability to upgrade and replace them as needed.
So first! Atuin v16 adds a kv store. This can be used for storing small
snippets of text and syncing them encrypted across machines. Env, small shell
scripts, whatever you can fit into 100KiB. After a sync, all kv pairs you set
will be available across machines.
Presently this should be considered "beta". Data loss is unlikely, and it has
been tested pretty thoroughly. However we don't make any promises for the
longer-term life or scalability of this, and you probably don't want to go
putting production secrets in there. There are many improvements we can make
to performance and user experience here.
We will also be using it to generally enhance Atuin (eg, synced config, host
aliases, etc). With v17, we hope to polish this off and release it fully.
Please do give it a try and let us know what you think!
# set foo = bar
atuin kv set -k foo bar
# kv supports namespaces
# set foo = bar in the "nsp" namespace
atuin kv set -n nsp -k foo baz
atuin kv get foo => prints "bar"
atuin kv get -n nsp foo => prints "baz"
# run sync to ensure you are up to date
atuin sync
Atuin now has workspaces! This is a pseudo filter-mode, which automatically
enables when you are in a git repository.
To enable workspaces, try
workspaces = true
in your Atuin config. With workspace filtering enabled, Atuin will filter for
commands executed in any directory within a git repo tree! Filtering modes can
still be cycled with ctrl-r.
This release runs database migrations on both the client and the server, though
nothing touching the history tables. No dependency versions have changed.
Atuin now lives in an org! The project has grown a lot since I first released
it back in 2021, and it's reached the point where an org makes more sense. Please ensure
you update any references to https://github.com/atuinsh/atuin!
For a long time, Atuin has lacked aarch64 builds, which has been in demand
(especially for M1 mac). Cross compilation was never very reliable for us, but
GitHub actions does not offer runners for ARM.
For this release I bought an older M1 mac, which is now setup as a runner on
the main
branch. All future releases will have ARM binaries available.
Atuin sync continues to grow! api.atuin.sh, at time of writing:
This data is gathered only from what we can infer from usage patterns, which
are tracked in order to prevent abuse. Your data is end-to-end encrypted and
can only be read by you.
--delete-it-all
and --delete
commands by @edeustua in https://github.com/atuinsh/atuin/pull/913
nu
section in key-bindings.md
- set-env
-> let-env
by @eopb in https://github.com/atuinsh/atuin/pull/1074
nu
section in key-bindings.md
- set-env
-> let-env
by @eopb in https://github.com/atuinsh/atuin/pull/1074
max_preview_height
setting by @RichardDRJ in https://github.com/atuinsh/atuin/pull/1088
max_preview_height
setting by @RichardDRJ in https://github.com/atuinsh/atuin/pull/1088
Full Changelog: https://github.com/atuinsh/atuin/compare/v15.0.0...v16.0.0
If at any point after running v15 you ran main
, there is a chance you will see the following error
Error: migration 20230619235421 was previously applied but is missing in the resolved migrations
Location:
/atuin-client/src/record/sqlite_store.rs:53:9
This can be resolved by removing the records.db
file inside the Atuin data directory.
On most systems
rm ~/.local/share/atuin/records.db*
During the development of v16, we updated a migration. This will only occur if
you ran a build from source, from main
, after v15.
If you'd like to avoid issues like this in the future, I'd suggest avoiding
running main
unless you are OK with the occasional breakage. Drop by our
Discord with any problems <3
Published by ellie over 1 year ago
Announcing a new release of Atuin! v15 is out now. This release is not particularly feature-heavy, instead we have focused on a number of bugfixes and improvements - with lots of new shiny things planned for v16.
For the first time in a long while, we have made an adjustment to how sync functions. In the longer term, we intend on replacing our current sync algorithm with something that better handles consistency, but v15 should at least ship some performance improvements.
Older versions of Atuin used a fixed page size of 100. This meant that for each request, we could only upload or download 100 history items at a time. For larger histories, this meant a lot of HTTP requests + a fairly slow sync.
Atuin v15 ships a variable page size, defaulting to 1100. This is configurable on the server, via the page_size
parameter. A smaller number of larger requests generally performs better in our testing.
For self hosted servers, please note that reverse proxies may require configuration changes to allow for larger requests.
nu
section to keybinds.md
by @VuiMuich in https://github.com/ellie/atuin/pull/881
inline_height
by @VuiMuich in https://github.com/ellie/atuin/pull/905
cd
command by @rigrig in https://github.com/ellie/atuin/pull/937
config.toml
by @pmodin in https://github.com/ellie/atuin/pull/1006
Full Changelog: https://github.com/ellie/atuin/compare/v14.0.0...v15.0.1
Published by ellie over 1 year ago
Releasing this now to get some fixes out - will write proper notes including this for v15 :)
Please note that this release had some issues with the binary builds, and as such they were delayed. Apologies for any issues caused!
Also - the deb build was based on a very slightly different branch, patch-deb
. This included some fixes so that the package built correctly. It has no changes in the actual binary.
str substring
usage to use range parameter by @WindSoilder in https://github.com/ellie/atuin/pull/840
--reverse
to atuin search
by @takac in https://github.com/ellie/atuin/pull/862
Full Changelog: https://github.com/ellie/atuin/compare/v14.0.0...v14.0.1
Published by ellie over 1 year ago
See the full release notes here! https://atuin.sh/blog/release-v14
Published by ellie over 1 year ago
This is a patch release, and fixes user registration on Atuin Server. If you are self hosting Atuin, please update!
I'll credit the contributors to the other commits here in the blog post for v14 <3
Full Changelog: https://github.com/ellie/atuin/compare/v13.0.0...v13.0.1
Published by ellie over 1 year ago
Announcing a new release of Atuin! v13 is out now. Atuin allows you to easily search and sync your shell history across many machines.
You can update your installation via your system package manager, or by downloading the latest release from the release page.
We had a lot of changes in this release - I'll call out a few, but this is not exhaustive.
Deserving of a special callout, we now use Crossterm as our TUI backend - this has been a huge effort, and has taken almost a year. Thank you to Conrad for pushing through it, and @pdecat for your contributions!
In the future this will allow for things like (possible) Windows support, and only using a small part of the screen for the search UI. It also handles async input better.
Please let us know if you experience any issues!
While procrastinating writing his talk, Conrad added a new and improved stats display! Just run atuin stats
to see your statistics. It'd be awesome to see what yours looks like, so please share it with us on Twitter or Discord!
List history however you want! You can now specify the output format of atuin history list
Example
atuin history list --format "{time} - [{duration}] - {directory}$\t{command}"
See more on the docs page!
The history filter allows you to exclude commands from history tracking - maybe you want to keep ALL of your curl
commands totally out of your shell history, or maybe just some matching a pattern.
This supports regular expressions, so you can hide pretty much whatever you want! Thanks for the PR @jbaiter
Configure it in your client-side Atuin config, for example
## Note that these regular expressions are unanchored, i.e. if they don't start
## with ^ or end with $, they'll match anywhere in the command.
history_filter = [
"^secret-cmd",
"^innocuous-cmd .*--secret=.+"
]
Previously, it was awkward to copy your Atuin key from machine to machine. Even more awkward to back it up!
We now use BIP39 to display your key in a nice + easily readable haiku-style format. Still - please don't share it!
atuin init
for Fishatuin init
in https://github.com/ellie/atuin/pull/652
-
in key-binding.md in https://github.com/ellie/atuin/pull/698
history_filter
setting to exclude commands from history by @jbaiter in https://github.com/ellie/atuin/pull/716
atuin init
for the fish shell by @hunger in https://github.com/ellie/atuin/pull/699
I very much appreciate the work from all contributors, but a special mention to everyone who made their first contribution in this release, no matter how large or small
I've been talking about it for ages and ages, but now that my life has finally settled down I'm going to be focusing on getting deletions out for the next release. We will be switching to an event-based sync, which should allow for many more features and cool things in the future!
I spoke about Atuin at FOSDEM! If you want to know more about the project + video is your thing, you can watch it here
I've setup a website for docs + release notes! It's available here: https://atuin.sh
I also opened a Twitter account for Atuin - @atuinsh
If you fancy chatting to us about anything here, or otherwise, please feel free to drop by the Discord!
Full Changelog: https://github.com/ellie/atuin/compare/v12.0.0...v13.0.0
Published by ellie almost 2 years ago
V12!
Thank you so much to everyone that contributed to this one 💖
style
to config.toml and config.md by @xfzv in https://github.com/ellie/atuin/pull/552
atuin search
command by @TymanWasTaken in https://github.com/ellie/atuin/pull/489
Full Changelog: https://github.com/ellie/atuin/compare/v11.0.0...v12.0.0
Published by ellie about 2 years ago
Thank you to everyone who contributed in this release!
We also decided to change our versioning scheme, to keep it as simple as possible.
Full Changelog: https://github.com/ellie/atuin/compare/v0.10.0...v11.0.0
Published by ellie over 2 years ago
Thank you so much to everyone who contributed to this release! Whether it was your first time or you've been contributing for a while, it's really appreciated 💖🚀
Full Changelog: https://github.com/ellie/atuin/compare/v0.9.1...v0.10.0
Published by ellie over 2 years ago
The lockfile update was missed in the last release, breaking some downstream builds. Fix that!
Thanks @orhun!
--locked
flag for CI builds by @orhun in https://github.com/ellie/atuin/pull/337
Full Changelog: https://github.com/ellie/atuin/compare/v0.9.0...v0.9.1