Commit Graph

378 Commits

Author SHA1 Message Date
7436e4ff65 feature-flags (#328)
* use feature flags

* fmt

* fix features

* update ci

* fmt

Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2022-04-22 20:14:23 +00:00
508d4f4761 History filter (#329)
* Add history filters, and hotkey toggle

Switch between different search modes to narrow down the history you
want - global search for all history, host for all history from your
current machine, session for the current shell session, and directory
for the current directory

The default can be configured via `filter_mode`

* Update docs

* Add context
2022-04-22 21:05:02 +01:00
02c70deecb refactor (#327) 2022-04-22 19:24:38 +01:00
a9d1ece0cb Added docker-compose.yml (#325)
Also added section to how to run your own server.

Co-authored-by: Lars Chr. Duus Hausmann <lars.chr@duus-hausmann.dk>
2022-04-22 08:41:55 +00:00
b8bdd837eb Bump clap from 3.1.10 to 3.1.11 (#323)
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.10 to 3.1.11.
- [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.10...v3.1.11)

---
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-04-22 09:02:11 +01:00
52a3d0c0d8 Bump tracing from 0.1.33 to 0.1.34 (#324)
Bumps [tracing](https://github.com/tokio-rs/tracing) from 0.1.33 to 0.1.34.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.33...tracing-0.1.34)

---
updated-dependencies:
- dependency-name: tracing
  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-04-22 09:01:47 +01:00
79597b07c3 Bump clap_complete from 3.1.1 to 3.1.2 (#316)
Bumps [clap_complete](https://github.com/clap-rs/clap) from 3.1.1 to 3.1.2.
- [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.1...clap_complete-v3.1.2)

---
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-04-21 22:13:53 +01:00
5aca6114d4 Allow for larger commands (#321)
Followup: Limit command length client side too
2022-04-21 18:54:58 +01:00
9085485a4f tracing (#315)
* enable tracing on server

* fmt

* instrument handlers
2022-04-21 18:07:33 +01:00
98d70fbf76 treat popos as ubuntu (#319) 2022-04-21 17:26:35 +01:00
d57f549855 refactor commands for better separation (#313)
* refactor commands for better separation

* fmt
2022-04-21 09:12:56 +00:00
24e2971787 Fix SQL cache query (#318)
I just deployed the older version and it was falling back on the full
count. Turns out this is because it won't upcast from INT4 to INT8
automatically, and it has to be manual

At some point the underlying total should be changed to int8, but also I
highly doubt anyone will have enough shell history to fill an int4 lol
2022-04-21 09:19:54 +01:00
fe05d86bfa Fix delete trigger (#317)
I've tested this again by deleting my full history and re-syncing, all
good.
2022-04-21 09:12:51 +01:00
48747e3b7c A few minor tweaks (#314)
* use bail macro

replace client database errors

remove dead code

* fix test
2022-04-21 08:05:57 +01:00
ed4e07d2e6 Use the count cache (#312)
* Use the count cache

By default read from the count cache - if there is no value there, then
do a full COUNT. The cache will be filled when the user posts up some
more history

* clean up server db error handling

Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2022-04-21 08:03:39 +01:00
6e11b8e0ed Bump clap from 3.1.9 to 3.1.10 (#309)
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.9 to 3.1.10.
- [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.9...v3.1.10)

---
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-04-20 09:10:27 +01:00
44e417d2fc Bump axum from 0.5.1 to 0.5.3 (#310)
Bumps [axum](https://github.com/tokio-rs/axum) from 0.5.1 to 0.5.3.
- [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.1...axum-v0.5.3)

---
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-04-20 09:10:05 +01:00
b98a378861 Add count trigger (#308)
This can be used in a later PR to optimise our database usage
significantly. Avoiding COUNT will be fantastic for our CPU usage, and
therefore sync times.
2022-04-19 18:19:21 +01:00
7fe523acd2 Bump sqlx from 0.5.11 to 0.5.13 (#305)
Bumps [sqlx](https://github.com/launchbadge/sqlx) from 0.5.11 to 0.5.13.
- [Release notes](https://github.com/launchbadge/sqlx/releases)
- [Changelog](https://github.com/launchbadge/sqlx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/launchbadge/sqlx/compare/v0.5.11...v0.5.13)

---
updated-dependencies:
- dependency-name: sqlx
  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-04-19 09:18:37 +01:00
c5ab2a46fa Bump clap from 3.1.8 to 3.1.9 (#306)
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.8 to 3.1.9.
- [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.8...v3.1.9)

---
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-04-19 09:17:50 +01:00
55f66c8ad5 Bump cli-table from 0.4.6 to 0.4.7 (#297)
Bumps [cli-table](https://github.com/devashishdxt/cli-table) from 0.4.6 to 0.4.7.
- [Release notes](https://github.com/devashishdxt/cli-table/releases)
- [Commits](https://github.com/devashishdxt/cli-table/compare/0.4.6...0.4.7)

---
updated-dependencies:
- dependency-name: cli-table
  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-04-14 09:16:55 +01:00
69279d2338 Bump config from 0.13.0 to 0.13.1 (#303)
Bumps [config](https://github.com/mehcode/config-rs) from 0.13.0 to 0.13.1.
- [Release notes](https://github.com/mehcode/config-rs/releases)
- [Changelog](https://github.com/mehcode/config-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mehcode/config-rs/compare/0.13.0...0.13.1)

---
updated-dependencies:
- dependency-name: config
  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-04-14 09:15:36 +01:00
d94cdaea3e README: add MacPorts installation instructions (#302)
https://ports.macports.org/port/atuin/
2022-04-13 22:49:38 +00:00
f4240aa62b Initial implementation of calendar API (#298)
This can be used in the future for sync so that we can be more
intelligent with what we're doing, and only sync up what's needed

I'd like to eventually replace this with something more like a merkle
tree, hence the hash field I've exposed, but that can come later

Although this does include a much larger number of count queries, it
should also be significantly more cache-able. I'll follow up with that
later, and also follow up with using this for sync :)
2022-04-13 18:29:18 +01:00
3c5fbc5734 provide better error messages (#300) 2022-04-13 18:08:49 +01:00
bc45bab273 remove default db uri (#299) 2022-04-13 18:08:21 +01:00
4897f4a242 Bump rmp-serde from 0.15.5 to 1.0.0 (#264)
Bumps [rmp-serde](https://github.com/3Hren/msgpack-rust) from 0.15.5 to 1.0.0.
- [Release notes](https://github.com/3Hren/msgpack-rust/releases)
- [Commits](https://github.com/3Hren/msgpack-rust/commits/rmp-serde/v1.0.0)

---
updated-dependencies:
- dependency-name: rmp-serde
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-13 12:50:50 +01:00
5b2e828c7f Bump directories from 3.0.2 to 4.0.1 (#246)
Bumps [directories](https://github.com/soc/directories-rs) from 3.0.2 to 4.0.1.
- [Release notes](https://github.com/soc/directories-rs/releases)
- [Commits](https://github.com/soc/directories-rs/commits)

---
updated-dependencies:
- dependency-name: directories
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-13 12:50:02 +01:00
016386ce4d Bump urlencoding from 1.3.3 to 2.1.0 (#208)
Bumps [urlencoding](https://github.com/kornelski/rust_urlencoding) from 1.3.3 to 2.1.0.
- [Release notes](https://github.com/kornelski/rust_urlencoding/releases)
- [Commits](https://github.com/kornelski/rust_urlencoding/commits)

---
updated-dependencies:
- dependency-name: urlencoding
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-13 12:49:33 +01:00
a95018cc90 goodbye warp, hello axum (#296) 2022-04-12 23:06:19 +01:00
3b7ed7caff fix env config parsing (#295)
* fix env config parsing

* fmt
2022-04-12 21:47:07 +01:00
ac0d29f6dc Release v0.8.1 (#291)
f861893 Update to clap 3.1.x (#289)
e8f7aac Add compact mode (#288)
1e04c4c Add rust-version to Cargo.toml (#287)
222e52b Update Dockerfile
fae118a Improve fuzzy search (#279)
7cde55a Add code of conduct (#281)
d270798 Update config-rs (#280)
3248883 Update README.md
7f58741 Fix `history list --cwd` errors (#278)
e117b62 Update fish bindings. (#265)
4223ac6 Restore bash 4.2 compatibility, only add hook once (#271)
7651f89 Add support for blesh  (#267)
c2dd332 fix: get install.sh working on UbuntuWSL (#260)
84403a3 Bump reqwest from 0.11.7 to 0.11.9 (#261)
5005cf7 Bump serde_json from 1.0.73 to 1.0.75 (#262)
7fa3e1c Do not crash if the history timestamp is in the future (#250)
8d21506 use sqlite grouping rather than subquery (#181)
d36ff13 Replace dpkg with apt (#248)
v0.8.1
2022-04-12 09:32:19 +01:00
f861893293 Update to clap 3.1.x (#289) 2022-04-07 06:32:11 +01:00
e8f7aaccef Add compact mode (#288) 2022-04-04 20:59:01 -07:00
1e04c4c079 Add rust-version to Cargo.toml (#287) 2022-04-04 14:22:56 -07:00
222e52be3d Update Dockerfile 2022-03-18 19:28:55 +00:00
fae118a46b Improve fuzzy search (#279)
* Add SearchMode fzf.

Add a new search mode "fzf" that tries to mimic the search syntax of
https://github.com/junegunn/fzf#search-syntax
This search mode splits the query into terms where each term is matched
individually. Terms can have operators like prefix, suffix, exact match
only and can be inverted. Additionally, smart-case matching is
performed: if a term contains a non-lowercase letter the match will be
case-sensitive.

* PR feedback.

 - Use SearchMode::Fuzzy instead of SearchMode::Fzf
 - update docs
 - re-order tests so previous fuzzy tests come first, add more tests for each operator

* PR comments: remove named arguments, match expression

* PR comments: macro -> async func
2022-03-18 11:37:27 +00:00
7cde55a751 Add code of conduct (#281) 2022-03-17 21:43:54 +00:00
d270798277 Update config-rs (#280)
* Update config-rs

Also fix our call to current_dir

This should resolve #195

Thanks @conradludgate for the upstream fix!

* Format
2022-03-17 21:26:57 +00:00
32488830b8 Update README.md 2022-03-17 21:21:27 +00:00
7f587418da Fix history list --cwd errors (#278) 2022-03-13 19:53:49 +00:00
e117b622fe Update fish bindings. (#265) 2022-02-15 23:21:28 +00:00
4223ac6943 Restore bash 4.2 compatibility, only add hook once (#271) 2022-02-15 22:54:25 +00:00
7651f89261 Add support for blesh (#267)
* Fix intendation

* Add support for blesh

See https://github.com/akinomyoga/ble.sh/wiki/Manual-%C2%A71-Introduction#user-content-fn-blehook for more details
2022-01-25 18:33:25 +00:00
c2dd3322c4 fix: get install.sh working on UbuntuWSL (#260) 2022-01-18 23:07:57 +00:00
84403a3aef Bump reqwest from 0.11.7 to 0.11.9 (#261)
Bumps [reqwest](https://github.com/seanmonstar/reqwest) from 0.11.7 to 0.11.9.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.11.7...v0.11.9)

---
updated-dependencies:
- dependency-name: reqwest
  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-01-18 23:01:31 +00:00
5005cf70c3 Bump serde_json from 1.0.73 to 1.0.75 (#262)
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.73 to 1.0.75.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.73...v1.0.75)

---
updated-dependencies:
- dependency-name: serde_json
  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-01-18 23:01:09 +00:00
7fa3e1c0f4 Do not crash if the history timestamp is in the future (#250)
Resolve #189

We were throwing an OutOfRangeError. This occurs when you attempt to
convert to a duration, and your input is <0. A value in the future would
have done this. This is especially noticeable during DST...
2021-12-20 05:52:07 +00:00
8d215060a1 use sqlite grouping rather than subquery (#181) 2021-12-19 10:29:01 +00:00
d36ff138ab Replace dpkg with apt (#248)
dpkg is a backend tool not supposed to be used by end users for installing debs.
Also apt installs potentials dependencies.
2021-12-19 10:13:13 +00:00