Commit graph

520 commits

Author SHA1 Message Date
Conrad Ludgate
5725f4b40b
add some error messages (#510)
* add some error messages

* fmt
2022-10-07 20:33:07 -07:00
Jacob Evan Shreve
0f77f8ae72
Fix compatability with fish vi key bindings (#541)
PR #420 addressed the existence of pagination in a fish prompt by trying
to track when pagination was enabled and disabled. This introduced
atuin-specific bindings for common keys: `\t`, `\e`, `\r`, and `\n`
which exports a variable and informs the `_autiun_search` function to
not show the TUI.

Fish has a commandline function that will instead tell you whether
pagination is enabled so the user doesn't need to keep track of that
state. This PR uses this function, `commandline -P` to replace the prior
TUI supression scheme. Removing these extra function calls allows us to
remove the additional bindings which were breaking fish vi key bindings.

Replacing the value for `bind -M insert \e` completely breaks vi mode by
blocking the user from exiting insert mode. By removing these extra
binds, this PR restores fish vi mode compatability.
2022-10-07 20:31:30 -07:00
xfzv
eadf573670
Add style to config.toml and config.md (#552)
* Add `style` to config.toml

* Add `style` to config.md

* Update atuin-client/config.toml

Co-authored-by: Conrad Ludgate <oon@conradludgate.com>

Co-authored-by: Conrad Ludgate <oon@conradludgate.com>
2022-10-05 12:14:56 +00:00
Ellie Huxtable
634b3e375f
Add contributors command (#550)
Inspired by the ClickHouse system contributors table, I thought this is
a nice extra way to say thank you to all those who put time and energy
into our project
2022-10-04 21:56:49 -07:00
dependabot[bot]
91b2e6b090
Bump lukemathwalker/cargo-chef (#546)
Bumps lukemathwalker/cargo-chef from latest-rust-1.63 to latest-rust-1.64.0.

---
updated-dependencies:
- dependency-name: lukemathwalker/cargo-chef
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-04 21:34:43 -07:00
Laurent le Beau-Martin
6f19e8abf5
Add installer support for Termux (#540) 2022-09-25 09:14:51 -07:00
c-14
f93da455a3
Clear RBUFFER when accepting output from atuin (#545)
Since we pass $BUFFER to atuin search, retaining RBUFFER (the part of
the buffer to the right of the cursor) probably doesn't make sense. The
advantage of setting RBUFFER and LBUFFER separately instead of setting
BUFFER is that the cursor is positioned after the end of LBUFFER instead
of remaining where it was before atuin was called.
2022-09-25 09:13:38 -07:00
c-14
045c87fbcd
Allow stateless commands to be run without config/database (#544)
* Allow stateless commands to be run without config/database

Fixes an issue where gen-completions fails trying to create a config
directory in restrained build environments/distribution.

* move non-db commands up to core subcommands

* re-add lost lines

* re-add lost lines

Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2022-09-25 11:15:33 +01:00
Ellie Huxtable
41eed3f6a1
Release v11 (#529) 2022-09-13 19:03:52 +00:00
Conrad Ludgate
db2a00f456
custom history list (#524)
* use custom list impl

* fmt

* segment

* clean up

* fix offsets

* fix scroll back space

* small touch ups
2022-09-12 20:39:41 +01:00
Conrad Ludgate
e8c8415278
update default layout (#523)
* update layouts

* add other duration changes

* fmt :(
2022-09-12 20:19:22 +01:00
Conrad Ludgate
702a644f68
better cursor search (#473)
* improve cursor code

* proper unicode support

* refactor and test

* fmt

* clippy

* move methods to state

* refactor search modules
2022-09-11 16:24:16 +01:00
CosmicHorror
8478a598db
Add index for interactive search (#493) 2022-09-10 11:21:05 +01:00
Conrad Ludgate
474170fd90
hide errors for #516 (#518) 2022-09-01 09:07:10 +00:00
Michael Mior
89f24bff63
Add binstall configuration (#458)
* Add binstall configuration

* kick ci

Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2022-08-24 06:23:33 +00:00
Jamie Quigley
aa556fa088
Fix atuin crashing on commands that start with -- (#509)
The use of `--` in the shell scripts prevents clap attempting to parse
the command name as a flag, in the case that it starts with `--`.
2022-08-23 17:26:42 +01:00
dependabot[bot]
225c41493e
Bump debian from bullseye-20220801-slim to bullseye-20220822-slim (#508)
Bumps debian from bullseye-20220801-slim to bullseye-20220822-slim.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-23 08:54:57 +01:00
Jerome Ducret
729f404ad0
Add dockerfile in dependabot scope (#507) 2022-08-22 21:07:24 +01:00
Jerome Ducret
6127642d30
Securize Dockerfile (#506) 2022-08-21 21:06:14 +00:00
Martin Indra
2abac5d853
Trim whitespace from end of encryption key (#496) 2022-08-11 12:27:04 +01:00
morguldir
0c5e250800
Add support for prepending a path to all routes for the server (#484)
* Add support for prepending a path to all routes

* Don't nest if there is no path provided

Co-authored-by: Conrad Ludgate <oon@conradludgate.com>

* Change the default for the path variable

* run cargo-fmt

Co-authored-by: Conrad Ludgate <oon@conradludgate.com>
2022-07-26 08:05:34 +01:00
Klas Mellbourn
f946644ceb
Add kubernetes instructions and manifests (#427)
* add kubernetes instructions

* minor wording improvements

* better password instructions

* add information about changed port

* improved grammar

* Separate docker and k8s docs

Add k8s folder for kubernetes configs
2022-06-26 18:40:36 +00:00
Ilkin Bayramli
6718db161d
Add Fig as an installation method to the README (#459) 2022-06-16 21:27:38 +01:00
Ellie Huxtable
2207ae6246
Update dependencies (#450) 2022-06-13 10:10:45 +01:00
Frank Hamand
ab994e3c82
Batch key handling (#448)
* Batch input events and only query once they are finished

This simplifies the code a lot (no more bounded channel) and yields
the same performance improvement with scroll wheel spam while fixing copy/paste

* Clippy

* fmt

* Use blocking wait before emptying events channel

This was causing a busy loop

* Update query on filter mode change
2022-06-13 09:33:05 +01:00
Ellie Huxtable
23b9d34e16
Add configurable history length (#447)
* Add configurable history length

This allows servers to decide the max length of each history item they
want to store! Some users might have much larger history lines than
others.

This setting can be set to 0 to allow for unlimited history length. This
is not recommended for a public server install, but for a private one it
can work nicely.

* Format lol
2022-06-10 10:00:59 +01:00
Sam Edwards
e0ba60fc3c
Enhancements to bash init script (#445) 2022-06-07 21:28:06 +00:00
Ellie Huxtable
fab8d8590f
Release v0.10.0 (#440)
06ac9587 Show current version on server index (#436)
706b1aff Disable ARM docker builds (#438)
f2abc23a Update README.md
3c2b0550 Noyez fix dir hostname utf8 (#430)
3f5350de [feature] Add scroll wheel support to interactive history search (#435)
dcdde225 Fix text outline for dark mode
9ac0c60c Implement cursor (#412)
119ab9e0 Adds password prompt for register and login (#424)
e5df809d Noyez zsh histdb import (#393)
b08e2543 Improve default fish keybindings (#420)
4096c6ee Update README.md
cd2a3ab7 Add fish shell to key binding docs (#418)
b2782110 Bump clap_complete from 3.1.3 to 3.1.4 (#397)
ee66c0a1 Bump axum from 0.5.5 to 0.5.6 (#415)
4297e263 Bump tokio from 1.18.1 to 1.18.2 (#396)
dbd9ca53 Bump clap from 3.1.16 to 3.1.18 (#401)
a7c9d19d Bump tower-http from 0.3.2 to 0.3.3 (#399)
3b79f686 Bump axum from 0.5.4 to 0.5.5 (#402)
f3407710 Cleanup dependencies – disable unnecessary or unused features (#407)
ab294cde Don't pollute shell environment - remove 'id' variable (#408)
14b30606 Allow to build atuin server without client (#404)
5e4e8d11 Don't create config dir for server in default location if not needed (#406)
b7946cc9 Update Chinese version README.md (#403)
e0291f67 Update README.md
301190e4 Build ARM docker image in GitHub Actions using QEMU (#400)
1d030b9d Importer V3 (#395)
d3a4ff95 Bump clap from 3.1.15 to 3.1.16 (#392)
e9d2ec4b Add ctrl-k and ctrl-j for up and down (#394)
25afb5b2 Bump serde_json from 1.0.80 to 1.0.81 (#387)
4a839dab Adds stats summary  (#384)
7a394b01 Bump serde from 1.0.136 to 1.0.137 (#375)
edd3f812 Bump clap_complete from 3.1.2 to 3.1.3 (#377)
d85d03d9 Bump log from 0.4.16 to 0.4.17 (#382)
dc3b7ef5 Bump tokio from 1.18.0 to 1.18.1 (#383)
12440c1c Bump serde_json from 1.0.79 to 1.0.80 (#376)
731042f4 Bump tower-http from 0.3.1 to 0.3.2 (#378)
82505e61 Bump clap from 3.1.12 to 3.1.15 (#381)
e05c19d0 Add Chinese documentation translation & Fix spelling mistakes (#373)
6e280e25 Add Russian documentation translation (#365)
40efdd11 Bump http from 0.2.6 to 0.2.7 (#368)
8bc5becc Bump tower-http from 0.3.0 to 0.3.1 (#367)
172ac8db Create FUNDING.yml
7cdd00b5 Bump tokio from 1.17.0 to 1.18.0 (#357)
9d2e9ea1 Search: Allow specifiying the limited of returned entries (#364)
93ab4e78 ignore JetBrains IDEs, tidy-up imports (#348)
2cb4cb39 Bump axum from 0.5.3 to 0.5.4 (#355)
796644e2 Add created_at column to users (#354)
f8233bcb SQLx cannot run this migration OK (#353)
d8ef5dd9 fix db range query (#351)
5926ea64 fix import auto for bash (#352)
43d299fd bump tui (#346)
8ac6571b Remove all select * from the server queries (#347)
4030de4b Add btree index on history table (#345)
b692e0ce Bump tower-http from 0.2.5 to 0.3.0 (#343)
3680f4ac Bump clap from 3.1.11 to 3.1.12 (#342)
7f5310a1 history list (#340)
2022-06-06 10:16:45 +01:00
Ellie Huxtable
06ac95876c
Show current version on server index (#436) 2022-06-06 09:58:19 +01:00
Ellie Huxtable
706b1aff65
Disable ARM docker builds (#438)
These are failing and need investigating
2022-06-06 09:48:28 +01:00
Ellie Huxtable
f2abc23a1e
Update README.md 2022-06-05 21:49:00 +01:00
noyez
3c2b055039
Noyez fix dir hostname utf8 (#430)
* Allow zsh_histdb import diretories and hostnames as utf-8

* Allow zsh_histdb import diretories and hostnames as utf-8

Co-authored-by: Bradley Noyes <b@noyes.dev>
2022-06-05 21:35:46 +01:00
Frank Hamand
3f5350dee6
[feature] Add scroll wheel support to interactive history search (#435) 2022-06-04 10:16:12 +01:00
Ellie Huxtable
dcdde22511
Fix text outline for dark mode 2022-05-30 18:05:57 +01:00
b3nj5m1n
9ac0c60cc4
Implement cursor (#412) 2022-05-24 20:44:12 +00:00
Satyarth Sampath
119ab9e007
Adds password prompt for register and login (#424)
* Adds the rpassword dependency

* Provides only a prompt based input for login and register with a hidden prompt for password

* Adds option based inputs for login and register commands

* Password can also be provided as an option

Co-authored-by: Satyarth <satyarth.sampath@gojek.com>
2022-05-24 14:25:48 +01:00
noyez
e5df809dd2
Noyez zsh histdb import (#393)
* Attempting to implement zsh-histdb import

Import compiles passes tests, but doesn't run b/c of async runtime.
zsh-histdb uses sqlite, and sqlx-rs is async, but import code is sync.

* More working on importing histdb

* Rewriting tests and using `Vec<u8>` instead of `String`

 - Rewriting tests to eliminate depencency on local file system
 - Using `Vec<u8>` for command strings instead of `String` to eliminate
   the utf8 errors i was seeing previously. Seems to be working.

* Running fmt

Co-authored-by: Bradley Noyes <b@noyes.dev>
2022-05-20 07:36:53 +01:00
Sam Lanning
b08e254343
Improve default fish keybindings (#420)
binding on "up" can conflict with the default fish keybindings as when
in tab-completion mode, you are supposed to be able to use arrow keys
to navigate the grid of suggestions, however pressing "up" will open
the tui instead.

This attempts to work around it by tracking when the user is probably in
a tab completion mode by setting a variable that we use to determine
whether to open atuin or perform the default fish up action
2022-05-20 07:25:36 +01:00
Ellie Huxtable
4096c6ee8c
Update README.md
Several people have asked why the bindings weren't setup after installing via their package manager

I imagine they skip straight to the install section with the name of their pkg tool, without reading the rest of the documentation.

This should hopefully make that a bit more clear! Albeit while introducing more repetition
2022-05-19 23:34:29 +01:00
Ubiquitous Photon
cd2a3ab7d5
Add fish shell to key binding docs (#418)
Add the missing fish shell part into the documentation for ATUIN_NOBIND.

Binding to up is pretty problematic in fish, as if you want to navigate the pager for auto-suggestions, you tend to get a bit stuck.
2022-05-19 21:04:45 +00:00
dependabot[bot]
b2782110ff
Bump clap_complete from 3.1.3 to 3.1.4 (#397)
Bumps [clap_complete](https://github.com/clap-rs/clap) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v3.1.3...clap_complete-v3.1.4)

---
updated-dependencies:
- dependency-name: clap_complete
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-17 10:16:54 +01:00
dependabot[bot]
ee66c0a165
Bump axum from 0.5.5 to 0.5.6 (#415)
Bumps [axum](https://github.com/tokio-rs/axum) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/tokio-rs/axum/releases)
- [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/axum/compare/axum-v0.5.5...axum-v0.5.6)

---
updated-dependencies:
- dependency-name: axum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-17 10:16:42 +01:00
dependabot[bot]
4297e26358
Bump tokio from 1.18.1 to 1.18.2 (#396)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.18.1 to 1.18.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.18.1...tokio-1.18.2)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-16 21:31:39 +00:00
dependabot[bot]
dbd9ca5371
Bump clap from 3.1.16 to 3.1.18 (#401)
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.16 to 3.1.18.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.16...v3.1.18)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-16 22:20:16 +01:00
dependabot[bot]
a7c9d19d0d
Bump tower-http from 0.3.2 to 0.3.3 (#399)
Bumps [tower-http](https://github.com/tower-rs/tower-http) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/tower-rs/tower-http/releases)
- [Commits](https://github.com/tower-rs/tower-http/compare/tower-http-0.3.2...tower-http-0.3.3)

---
updated-dependencies:
- dependency-name: tower-http
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-16 22:20:11 +01:00
dependabot[bot]
3b79f6860f
Bump axum from 0.5.4 to 0.5.5 (#402)
Bumps [axum](https://github.com/tokio-rs/axum) from 0.5.4 to 0.5.5.
- [Release notes](https://github.com/tokio-rs/axum/releases)
- [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/axum/compare/axum-v0.5.4...axum-v0.5.5)

---
updated-dependencies:
- dependency-name: axum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-16 22:19:41 +01:00
Jakub Jirutka
f340771012
Cleanup dependencies – disable unnecessary or unused features (#407)
* Disable unnecessary features of config crate, keep only toml

The atuin documentation only mentions the TOML format for configuration
files, but the config crate supports many other formats by default,
which increases the binary size by about 300 kiB.

* Disable unused features of cli-table crate

This doesn't seem to have noticeable effect on the binary size, but
disabling them cleans up the dependency tree a bit.
2022-05-16 22:14:04 +01:00
Jakub Jirutka
ab294cde34
Don't pollute shell environment - remove 'id' variable (#408) 2022-05-16 22:13:17 +01:00
Jakub Jirutka
14b30606a5
Allow to build atuin server without client (#404) 2022-05-13 06:57:27 +01:00
Jakub Jirutka
5e4e8d1152
Don't create config dir for server in default location if not needed (#406)
...respect ATUIN_CONFIG_DIR.

The current behaviour is problematic when running atuin server as a
system service with config dir in /etc/atuin.
2022-05-13 06:07:46 +01:00