Release v13 (#727)
* Write release blog post * Bump versions * Update contributors
This commit is contained in:
parent
8a2fa44b01
commit
fe5f728aa6
10 changed files with 285 additions and 74 deletions
8
Cargo.lock
generated
8
Cargo.lock
generated
|
@ -70,7 +70,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "atuin"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"atuin-client",
|
||||
|
@ -108,7 +108,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "atuin-client"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"atuin-common",
|
||||
|
@ -147,7 +147,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "atuin-common"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
dependencies = [
|
||||
"chrono",
|
||||
"serde",
|
||||
|
@ -156,7 +156,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "atuin-server"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"atuin-common",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "atuin"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
authors = ["Ellie Huxtable <ellie@elliehuxtable.com>"]
|
||||
edition = "2021"
|
||||
rust-version = "1.59"
|
||||
|
@ -44,9 +44,9 @@ sync = ["atuin-client/sync"]
|
|||
server = ["atuin-server", "tracing-subscriber"]
|
||||
|
||||
[dependencies]
|
||||
atuin-server = { path = "atuin-server", version = "12.0.0", optional = true }
|
||||
atuin-client = { path = "atuin-client", version = "12.0.0", optional = true, default-features = false }
|
||||
atuin-common = { path = "atuin-common", version = "12.0.0" }
|
||||
atuin-server = { path = "atuin-server", version = "13.0.0", optional = true }
|
||||
atuin-client = { path = "atuin-client", version = "13.0.0", optional = true, default-features = false }
|
||||
atuin-common = { path = "atuin-common", version = "13.0.0" }
|
||||
|
||||
log = "0.4"
|
||||
env_logger = "0.10.0"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "atuin-client"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
authors = ["Ellie Huxtable <ellie@elliehuxtable.com>"]
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
|
@ -23,7 +23,7 @@ sync = [
|
|||
]
|
||||
|
||||
[dependencies]
|
||||
atuin-common = { path = "../atuin-common", version = "12.0.0" }
|
||||
atuin-common = { path = "../atuin-common", version = "13.0.0" }
|
||||
|
||||
log = "0.4"
|
||||
chrono = { version = "0.4", features = ["serde"] }
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "atuin-common"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
authors = ["Ellie Huxtable <ellie@elliehuxtable.com>"]
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "atuin-server"
|
||||
version = "12.0.0"
|
||||
version = "13.0.0"
|
||||
authors = ["Ellie Huxtable <ellie@elliehuxtable.com>"]
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
|
@ -9,7 +9,7 @@ homepage = "https://atuin.sh"
|
|||
repository = "https://github.com/ellie/atuin"
|
||||
|
||||
[dependencies]
|
||||
atuin-common = { path = "../atuin-common", version = "12.0.0" }
|
||||
atuin-common = { path = "../atuin-common", version = "13.0.0" }
|
||||
|
||||
tracing = "0.1"
|
||||
chrono = { version = "0.4", features = ["serde"] }
|
||||
|
|
173
docs/blog/2023/02-26-release-v13/index.md
Normal file
173
docs/blog/2023/02-26-release-v13/index.md
Normal file
|
@ -0,0 +1,173 @@
|
|||
---
|
||||
title: Announcing Atuin v13
|
||||
description: Release notes for Atuin v13
|
||||
slug: release-v13
|
||||
authors: [ellie]
|
||||
tags: [release]
|
||||
---
|
||||
|
||||
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](https://github.com/ellie/atuin/releases).
|
||||
|
||||
We had a lot of changes in this release - I'll call out a few, but this is not exhaustive.
|
||||
|
||||
## Crossterm
|
||||
|
||||
Deserving of a special callout, we now use [Crossterm](https://github.com/ellie/atuin/pull/331) 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](https://github.com/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!
|
||||
|
||||
## New features
|
||||
|
||||
### Pretty Stats
|
||||
|
||||
<center>
|
||||
|
||||
![stats image](stats.png)
|
||||
|
||||
</center>
|
||||
|
||||
While procrastinating writing [his talk](https://www.youtube.com/watch?v=7pU3gOVAeVQ), Conrad [added](https://github.com/ellie/atuin/pull/707) 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](https://twitter.com/atuinsh) or [Discord](https://discord.gg/Fq8bJSKPHh)!
|
||||
|
||||
### Custom history list format
|
||||
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](/docs/commands/list)!
|
||||
|
||||
### History filter
|
||||
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=.+"
|
||||
]
|
||||
```
|
||||
|
||||
### Mnemonic key (BIP39)
|
||||
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!
|
||||
|
||||
## Improvements
|
||||
- Better error messages
|
||||
- Nix install files + instructions
|
||||
- Exit when pushing the down arrow from the most recent entry
|
||||
- Refactor to support generic server-side databases
|
||||
- Make it easier to disable the ctrl-r and/or up arrow bindings
|
||||
- Update to axum6
|
||||
|
||||
## Fixes
|
||||
- Fish now handles multi-line commands properly
|
||||
- Listing history for the current session now works
|
||||
- Fix `atuin init` for Fish
|
||||
|
||||
## Contributor Shoutout!
|
||||
|
||||
### [@patricksjackson](https://github.com/patricksjackson)
|
||||
* Fix minor typo in config.md in https://github.com/ellie/atuin/pull/615
|
||||
* Re-enable arm docker builds in https://github.com/ellie/atuin/pull/616
|
||||
* Handle multiline commands in fish shell in https://github.com/ellie/atuin/pull/623
|
||||
* install.sh: Fallback to using cargo in https://github.com/ellie/atuin/pull/639
|
||||
* Fix session history listing in https://github.com/ellie/atuin/pull/620
|
||||
|
||||
### [@pdecat](https://github.com/pdecat)
|
||||
* Add support for some additional keys in interactive mode in https://github.com/ellie/atuin/pull/634
|
||||
* Allow overriding filter and search modes from CLI in https://github.com/ellie/atuin/pull/635
|
||||
|
||||
### [@Sciencentistguy](https://github.com/Sciencentistguy)
|
||||
* Rework `atuin init` in https://github.com/ellie/atuin/pull/652
|
||||
* Improve error message when $AUTIN_SESSION is not set. in https://github.com/ellie/atuin/pull/654
|
||||
* Add nix files and install instructions in https://github.com/ellie/atuin/pull/477
|
||||
|
||||
### [@BapRx](https://github.com/BapRx)
|
||||
* chore(#621): Exit atuin when pressing down arrow on most recent entry in https://github.com/ellie/atuin/pull/659
|
||||
* docs: Remove human short flag from docs, duplicate of help -h in https://github.com/ellie/atuin/pull/663
|
||||
* feat(history): Add new flag to allow custom output format in https://github.com/ellie/atuin/pull/662
|
||||
|
||||
### [@yolo2h](https://github.com/yolo2h)
|
||||
* docs: Fix typo in zh-CN/README.md in https://github.com/ellie/atuin/pull/666
|
||||
|
||||
### [@s1ck](https://github.com/s1ck)
|
||||
* Fix CI build badge in https://github.com/ellie/atuin/pull/683
|
||||
|
||||
### [@conradludgate](https://github.com/conradludgate)
|
||||
* display mnemonic key in https://github.com/ellie/atuin/pull/694
|
||||
* axum6 with typesafe state in https://github.com/ellie/atuin/pull/674
|
||||
* crossterm support in https://github.com/ellie/atuin/pull/331
|
||||
* stats in https://github.com/ellie/atuin/pull/707
|
||||
|
||||
### [@evanpurkhiser](https://github.com/evanpurkhiser)
|
||||
* Remove whitespace in template client config.tom in https://github.com/ellie/atuin/pull/697
|
||||
* Fix missing `-` in key-binding.md in https://github.com/ellie/atuin/pull/698
|
||||
|
||||
### [@eripa](https://github.com/eripa)
|
||||
* docs(README): add static activity graph example by @eripa in https://github.com/ellie/atuin/pull/680
|
||||
|
||||
### [@trygveaa](https://github.com/trygveaa)
|
||||
* Allow using existing key file on login by @trygveaa in https://github.com/ellie/atuin/pull/688
|
||||
|
||||
### [@frukto](https://github.com/frukto)
|
||||
* Make the install script more robust by @frukto in https://github.com/ellie/atuin/pull/692
|
||||
|
||||
### [@jbaiter](https://github.com/jbaiter)
|
||||
* Add `history_filter` setting to exclude commands from history by @jbaiter in https://github.com/ellie/atuin/pull/716
|
||||
|
||||
### [@hunger](https://github.com/hunger)
|
||||
* fish: Fix `atuin init` for the fish shell by @hunger in https://github.com/ellie/atuin/pull/699
|
||||
|
||||
### [@ekroon](https://github.com/ekroon)
|
||||
* Add support for generic database in AppState by @ekroon in https://github.com/ellie/atuin/pull/711
|
||||
|
||||
|
||||
## New Contributors
|
||||
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
|
||||
|
||||
* [@pdecat](https://github.com/pdecat) made their first contribution in https://github.com/ellie/atuin/pull/634
|
||||
* [@BapRx](https://github.com/BapRx) made their first contribution in https://github.com/ellie/atuin/pull/659
|
||||
* [@yolo2h](https://github.com/yolo2h) made their first contribution in https://github.com/ellie/atuin/pull/666
|
||||
* [@s1ck](https://github.com/s1ck) made their first contribution in https://github.com/ellie/atuin/pull/683
|
||||
* [@evanpurkhiser](https://github.com/evanpurkhiser) made their first contribution in https://github.com/ellie/atuin/pull/697
|
||||
* [@eripa](https://github.com/eripa) made their first contribution in https://github.com/ellie/atuin/pull/680
|
||||
* [@trygveaa](https://github.com/trygveaa) made their first contribution in https://github.com/ellie/atuin/pull/688
|
||||
* [@frukto](https://github.com/frukto) made their first contribution in https://github.com/ellie/atuin/pull/692
|
||||
* [@jbaiter](https://github.com/jbaiter) made their first contribution in https://github.com/ellie/atuin/pull/716
|
||||
* [@hunger](https://github.com/hunger) made their first contribution in https://github.com/ellie/atuin/pull/699
|
||||
* [@ekroon](https://github.com/ekroon) made their first contribution in https://github.com/ellie/atuin/pull/711
|
||||
|
||||
## Future plans
|
||||
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](https://github.com/ellie/atuin/issues/592) 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!
|
||||
|
||||
## Other changes
|
||||
|
||||
### Talk
|
||||
I spoke about Atuin at FOSDEM! If you want to know more about the project + video is your thing, you can watch it here
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/uyRmV19qJ2o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
|
||||
|
||||
### Website
|
||||
|
||||
Well... this is new. Previously I never bothered writing much about new releases, and basically just used the autogenerated GitHub release. The docs should be much easier to find here too!
|
||||
|
||||
### Twitter
|
||||
|
||||
I also opened a Twitter account for Atuin - [@atuinsh](https://twitter.com/atuinsh)
|
||||
|
||||
If you fancy chatting to us about anything here, or otherwise, please feel free to drop by the [Discord](https://discord.gg/Fq8bJSKPHh)!
|
||||
|
||||
**Full Changelog**: https://github.com/ellie/atuin/compare/v12.0.0...v13.0.0
|
BIN
docs/blog/2023/02-26-release-v13/stats.png
Normal file
BIN
docs/blog/2023/02-26-release-v13/stats.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
|
@ -11,3 +11,20 @@ title: Listing History
|
|||
| `--session/-s` | Enable listing history for the current session only (default: false) |
|
||||
| `--human` | Use human-readable formatting for the timestamp and duration (default: false) |
|
||||
| `--cmd-only` | Show only the text of the command (default: false) |
|
||||
| `--format` | Specify the formatting of a command (see below) |
|
||||
|
||||
## Format
|
||||
|
||||
Customize the output of `history list`
|
||||
|
||||
Example
|
||||
|
||||
```
|
||||
atuin history list --format "{time} - {duration} - {command}"
|
||||
```
|
||||
|
||||
Supported variables
|
||||
|
||||
```
|
||||
{command}, {directory}, {duration}, {user}, {host} and {time}
|
||||
```
|
||||
|
|
|
@ -191,6 +191,17 @@ or `py`.
|
|||
^core go$ | rb$ | py$
|
||||
```
|
||||
|
||||
## Server config
|
||||
### history_filter
|
||||
|
||||
`// TODO`
|
||||
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!
|
||||
|
||||
```
|
||||
## 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=.+"
|
||||
]
|
||||
```
|
||||
|
|
|
@ -1,63 +1,73 @@
|
|||
const CONTRIBUTORS: &str = r#"
|
||||
avinassh (@avinassh)
|
||||
b3nj5m1n (@b3nj5m1n)
|
||||
bl-ue (@bl-ue)
|
||||
Benjamin Vergnaud (@bvergnaud)
|
||||
Brad Robel-Forrest (@bradrf)
|
||||
Bruce Huang (@helbing)
|
||||
c-14 (@c-14)
|
||||
ConradLudgate (@conradludgate)
|
||||
CosmicHorror (@LovecraftianHorror)
|
||||
Daniel (@daniel0611)
|
||||
DanielAtCosmicDNA (@DanielAtCosmicDNA)
|
||||
Ellie Huxtable (@ellie)
|
||||
Eric Crosson (@EricCrosson)
|
||||
Frank Hamand (@frankh)
|
||||
Herby Gillot (@herbygillot)
|
||||
Ian Smith (@ismith)
|
||||
Ilkin Bayramli (@ibayramli)
|
||||
Jakob Schrettenbrunner (@schrej)
|
||||
Jakub Jirutka (@jirutka)
|
||||
Jakub Panek (@panekj)
|
||||
Jamie Quigley (@Sciencentistguy)
|
||||
Jannik (@mozzieongit)
|
||||
jean-santos (@jean-santos)
|
||||
Jerome Ducret (@DucretJe)
|
||||
Klas Mellbourn (@Mellbourn)
|
||||
Laurent le Beau-Martin (@laurentlbm)
|
||||
lchausmann (@lchausmann)
|
||||
Lucas Burns (@lmburns)
|
||||
Lucy (@Absolucy)
|
||||
Luke Baker (@lukebaker)
|
||||
Manel Vilar (@manelvf)
|
||||
Mark Wotton (@mwotton)
|
||||
Martin Indra (@Indy2222)
|
||||
Mat Jones (@mrjones2014)
|
||||
mb6ockatf (@mb6ockatf)
|
||||
Michael Bianco (@iloveitaly)
|
||||
Michael Mior (@michaelmior)
|
||||
morguldir (@morguldir)
|
||||
mundry (@mundry)
|
||||
networkException (@networkException)
|
||||
Noyzen (@noyez)
|
||||
Omer Katz (@thedrow)
|
||||
Orhun Parmaksız (@orhun)
|
||||
Patrick (@pmarschik)
|
||||
Patrick Jackson (@patricksjackson)
|
||||
Plamen Dimitrov (@pevogam)
|
||||
Sam Edwards (@dotsam)
|
||||
Sam Lanning (@s0)
|
||||
Sandro (@SuperSandro2000)
|
||||
Satyarth Sampath (@notsatyarth)
|
||||
Simon Elsbrock (@elsbrock)
|
||||
TymanWasTaken (@TymanWasTaken)
|
||||
Ubiquitous Photon (@UbiquitousPhoton)
|
||||
Violet (@shreve)
|
||||
Will Fancher (@ElvishJerricco)
|
||||
wpbrz (@wpbrz)
|
||||
xfzv (@xfzv)
|
||||
Yuvi Panda (@yuvipanda)
|
||||
ZhiHong Li (@OnePieceJoker)
|
||||
Baptiste
|
||||
Benjamin Vergnaud
|
||||
Brad Robel-Forrest <brad@bitpony.com>
|
||||
Bruce Huang <helbingxxx@gmail.com>
|
||||
Conrad Ludgate <conradludgate@gmail.com>
|
||||
CosmicHorror <LovecraftianHorror@pm.me>
|
||||
Daniel <daniel.hub@outlook.de>
|
||||
Ellie Huxtable <ellie@elliehuxtable.com>
|
||||
Eric Crosson
|
||||
Eric Ripa <eric@ripa.io>
|
||||
Erwin Kroon
|
||||
Evan Purkhiser <evanpurkhiser@gmail.com>
|
||||
Frank Hamand <frankhamand@gmail.com>
|
||||
Herby Gillot <herby.gillot@gmail.com>
|
||||
Ian Smith <ismith@mit.edu>
|
||||
Ilkin Bayramli
|
||||
Violet Shreve <github@shreve.io>
|
||||
Jakob Schrettenbrunner <dev@schrej.net>
|
||||
Jakob-Niklas See <github@nwex.de>
|
||||
Jakub Jirutka <jakub@jirutka.cz>
|
||||
Jakub Panek <me@panekj.dev>
|
||||
Jamie Quigley <jamie@quigley.xyz>
|
||||
Jannik <jannik.peters@posteo.de>
|
||||
Jerome Ducret <jdiphone34@gmail.com>
|
||||
Johannes Baiter <johannes.baiter@gmail.com>
|
||||
Klas Mellbourn <klas@mellbourn.net>
|
||||
Laurent le Beau-Martin
|
||||
Lucas Burns
|
||||
Lucy <lucy@absolucy.moe>
|
||||
Luke Baker <lukebaker@gmail.com>
|
||||
Manel Vilar <manelvf@gmail.com>
|
||||
Mark Wotton <mwotton@gmail.com>
|
||||
Martin Indra <martin.indra@mgn.cz>
|
||||
Martin Junghanns <m.junghanns@mailbox.org>
|
||||
Mat Jones <mat@mjones.network>
|
||||
Michael Bianco <iloveitaly@gmail.com>
|
||||
Michael Mior <michael.mior@gmail.com>
|
||||
Omer Katz <omer.drow@gmail.com>
|
||||
Orhun Parmaksız <orhunparmaksiz@gmail.com>
|
||||
Patrick
|
||||
Patrick Decat <pdecat@gmail.com>
|
||||
Patrick Jackson <patrick@jackson.dev>
|
||||
Plamen Dimitrov <pdimitrov@pevogam.com>
|
||||
Sam Edwards <sam@samedwards.ca>
|
||||
Sam Lanning <sam@samlanning.com>
|
||||
Sandro <sandro.jaeckel@gmail.com>
|
||||
Satyarth Sampath <satyarth.23@gmail.com>
|
||||
Simon Elsbrock <simon@iodev.org>
|
||||
Tobias Hunger <tobias.hunger@gmail.com>
|
||||
Trygve Aaberge <trygveaa@gmail.com>
|
||||
TymanWasTaken <tbeckman530@gmail.com>
|
||||
Ubiquitous Photon
|
||||
Webmaster At Cosmic DNA
|
||||
Will Fancher <elvishjerricco@gmail.com>
|
||||
Yolo <noah.chang@outlook.com>
|
||||
Yuvi Panda <yuvipanda@gmail.com>
|
||||
ZhiHong Li <joker_lizhih@163.com>
|
||||
avinassh
|
||||
b3nj5m1n
|
||||
c-14 <git@c-14.de>
|
||||
frukto <fruktopus@gmail.com>
|
||||
jean-santos <jeanpnsantos@gmail.com>
|
||||
lchausmann <jazz-github@zqz.dk>
|
||||
mb6ockatf
|
||||
morguldir <morguldir@protonmail.com>
|
||||
mundry
|
||||
noyez <noyez@ithryn.net>
|
||||
wpbrz
|
||||
xfzv
|
||||
"#;
|
||||
|
||||
pub fn run() {
|
||||
|
|
Loading…
Reference in a new issue