aboutsummaryrefslogtreecommitdiffstats
path: root/crates (unfollow)
Commit message (Collapse)Author
2026-02-11feat: Add original-input-empty keybind condition (#3171)Michelle Tilley
This PR adds a keybind condition called `original-input-empty` that is true when the TUI was invoked from an empty prompt line; users can use this to change behavior based on the original prompt's contents; for example: ```toml [keymap.emacs] "esc" = [ { when = "original-input-empty", action = "return-query" }, { action = "return-original" } ] ``` Thanks Hazilo in Discord for the suggestion.
2026-02-11fix(shell): fix ATUIN_SESSION errors in tmux popup (#3170)Kkoi
This PR fixes: + #3154 + #3164 + #3166 It changes the following: + Pass ATUIN_SESSION to tmux popup + Use `command rm` to bypass user-defined configs + Disable tmux popup by default ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2026-02-11feat: expand keybinding system with vim motions, media keys, and inspector ↵Michelle Tilley
improvements (#3161) Addresses the keybinding audit (#3157): - Add missing vim-normal bindings: 0, $, w, b, e, x, dd, D, C - Add new CursorWordEnd action for vim 'e' motion - Add VimChangeToEnd action for vim 'C' motion - Add Media key support (play, pause, stop, volume, etc.) - Refactor inspector keymap to be minimal but respect enter_accept and provide vim-style j/k navigation for vim users - Add $ to special character parsing - Replace eprintln! with tracing::warn! for config errors - Document shifted punctuation keys and media keys To be rebased once #3158 is merged
2026-02-11fix(tui): enter in vim normal mode, shift-tab keybind (#3158)Michelle Tilley
Fixes #3156 Fixes #3085 * `Enter` was not bound in the default vim-normal mode keybinds * `Shift-tab` can be reported as `BackTab`; we convert this at detection time to `shift-tab` * `Insert` key was not handled Verified fixes locally.
2026-02-09chore(deps): Update to tiny-bip39 2.0.0 (#3151)Cristian Le
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing I don't know why the previous PR https://github.com/atuinsh/atuin/pull/2643 got auto-closed after a rebase, so I am re-creating it.
2026-02-09chore(release): prepare for release 18.12.0 (#3152)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-08fix(powershell): display search stderr (#3146)Lucas Trzesniewski
This shows stderr output from `atuin search -i` in PowerShell: The output looks like this: <img width="628" height="149" alt="image" src="https://github.com/user-attachments/assets/c0a4bc9a-5d57-415f-a5b4-9c497744c6e0" /> Currently reproducible with the following config: ```toml [keymap.emacs] "foo" = "bar" "=" = "bar" ``` I started by using `Start-Process` in the first commit, but then rewrote it entirely as using a `Process` object directly should be more stable (`Start-Process` already [caused issues](https://github.com/atuinsh/atuin/pull/2543#issuecomment-2647555114) in the past). This fixes the PowerShell part of #3134 ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-02-08fix: remove invalid IF EXISTS from sqlite drop column migration (#3145)Ryan
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing ## Summary SQLite doesn't support an `IF NOT EXISTS` on `ALTER TABLE` > https://www.sqlite.org/lang_altertable.html ``` atuin | Caused by: atuin | Other(while executing migration 20260127000000: error returned from database: (code: 1) near "exists": syntax error atuin | atuin | Caused by: atuin | 0: error returned from database: (code: 1) near "exists": syntax error atuin | 1: (code: 1) near "exists": syntax error ``` The fix works on my setup Ref: https://github.com/atuinsh/atuin/pull/3108#pullrequestreview-3713606584 Signed-off-by: Sped0n <hi@sped0n.com>
2026-02-06fix: issue with shift and modifier keys (#3143)Ellie Huxtable
resolves #3142 <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-06feat(tui): add clear-to-start/end actions (#3141)依云
e.g. bash has these mapped to Ctrl-u/k. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-02-05chore(release): prepare for release 18.12.0-beta.4 (#3139)Michelle Tilley
2026-02-05fix(tui): space and F1-F24 keys not handled properly by new keybind system ↵Michelle Tilley
(#3138) Fixes two keymap issues introduced in #3127: 1. Space key does nothing - Pressing space in the search input didn't insert a space character 2. F12 not recognized - Function keys (F1-F24) couldn't be used in `[keymap]` config
2026-02-05chore(release): prepare for release 18.12.0-beta.3 (#3136)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-05fix: tab behaving like enter, eprintln (#3135)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> Resolves #3134 Otherwise, I would like to figure out a nicer way for both logging, and for surfacing user-facing errors from the tui. perhaps similar to our current method of shell communication (`__atuin_accept`, etc), just providing an error for the shell integration to log ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-05chore(release): prepare for release 18.12.0-beta.2 (#3133)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-05feat: Add new custom keybinding system for search TUI (#3127)Michelle Tilley
2026-02-04feat(dotfiles): add sort and filter options to alias/var list (#3131)Ethan
groundwork for #2155. These functions can be reused when building the interactive TUI. Adds `--sort-by`, `--reverse`, `--name`, and `--value` flags to `atuin dotfiles alias list` and `atuin dotfiles var list`. Also adds `--exports-only` and `--shell-only` for vars. happy to expand (or reduce?) on this if needed. <details> <summary>**Demo/Examples:**</summary> `$atuin dotfiles alias list --reverse` ```bash vim=nvim py=python3 ll=ls -la k=kubectl gs=git status gp=git push gd=git diff gc=git commit dc=docker-compose d=docker ``` `$atuin dotfiles alias list --sort-by value` ```bash d=docker dc=docker-compose gc=git commit gd=git diff gp=git push gs=git status k=kubectl ll=ls -la vim=nvim py=python3 ``` `$atuin dotfiles alias list -n g` ```bash gc=git commit gd=git diff gp=git push gs=git status ``` `$atuin dotfiles var list --exports-only` ```bash export EDITOR=vim export LANG=en_US.UTF-8 export PAGER=less export RUST_BACKTRACE=1 ``` </details> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-02-04feat: replace several files with a sqlite db (#3128)Ellie Huxtable
These files have been known to have corruption issues. SQLite will perform better across filesystems for reads/writes across threads, and will lock as expected. I've also put the session file in there, though I'm 50/50 on it - I'll be replacing it with keyring storage asap anyway. The key file is _not_ included. It should ~never be changed, and should be easy for the user to secure + manage themselves In the future, instead of creating more files, we can just use this as a kv store Resolves https://github.com/atuinsh/atuin/issues/2336, resolves https://github.com/atuinsh/atuin/issues/1650 ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-03feat: Add a parameter to the sync to specify the download/upload page (#2408)Matthias Bilger
This adds a parameter to change the upload/download page size, this could help if one gets a '413' in a selfhosted scenario. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: Ellie Huxtable <ellie@elliehuxtable.com>
2026-02-03fix(search): allow hyphen-prefixed query args like `---` (#3129)Ellie Huxtable
Resolves #3028 ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-03fix: use directories crate for home dir resolution (#3125)Ellie Huxtable
Previously, home_dir() read $HOME directly and panicked if it wasn't set. This could happen in environments like `nix develop -i` which strip the environment. The directories crate (already a dependency) falls back to getpwuid_r when $HOME is not set, resolving the home directory from /etc/passwd. Fixes #3123 <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-02fix: halt sync loop if server returns an empty page (#3122)Ellie Huxtable
We had an issue where the server was returning an empty page, when it should not, and causing the client to keep looping While such bugs should not happen, putting the client into a loop does not help ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-02-02docs: update the `[keys]` docs (#3114)Lucas Trzesniewski
This is related to: - #3090 - #1906 --- ## No longer relevant: ~I often just hold the backspace key to clear the query line in Atuin, and the change in #3090 makes it no longer possible: it accepts the current history entry instead.~ 🤯 ~It may be a muscle memory thing, but it also feels wrong to me for the left key to accept the current entry. I'd prefer for it to do nothing when the cursor is at the start of the line (I've set `exit_past_line_start = false` in my config).~ ~This PR makes the new behavior configurable: it adds an `accept_past_empty_line` setting (naming is *hard*, feel free to find a better name) which lets you disable it. It also updates the `[keys]` docs.~ BTW wouldn't setting the `accept_past_line_start` and `accept_with_backspace` settings to `true` (maybe by default) have the same effect as what #3090 introduced? ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-02-02fix: larger exit column width on Windows (#3119)Lucas Trzesniewski
The default width of the `exit` column is 3, which matches the 0-255 values on Linux. However, on Windows it is a 32-bit integer, and can be anything from -2147483648 to 2147483647. Popular tools such as `winget` apparently make use of that. Here's an example with `columns = ["exit", "time", "duration", "directory", "command"]`: <img width="647" height="416" alt="image" src="https://github.com/user-attachments/assets/d73b0487-3c77-4049-8487-01b2aab29a44" /> This PR changes the default column width to 11 on Windows to match these values. The result is: <img width="601" height="412" alt="image" src="https://github.com/user-attachments/assets/b4b95f40-f223-400d-83c4-74d71e070b3e" /> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-02-02fix(powershell): preserve `$LASTEXITCODE` (#3120)Lucas Trzesniewski
`$LASTEXITCODE` is an [automatic variable](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-7.5#lastexitcode) in PowerShell which holds the exit code of the last *native* program which has run. It's a close equivalent to `$?` in bash (PowerShell also has [its own `$?` variable](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-7.5#section-1), but it's a boolean). Atuin is a native program, and the `PSConsoleHostReadLine` function calls `atuin history start`, which resets this variable to 0 (or to something else if it fails). This PR resets this variable to its previous value, as it is that one which the user will expect. Before: <img width="453" height="225" alt="image" src="https://github.com/user-attachments/assets/5fc781d3-dbba-4737-b2ec-7ba73739d006" /> After: <img width="460" height="212" alt="image" src="https://github.com/user-attachments/assets/a2db9bca-343c-48fc-ab45-167e0dd6f7f9" /> Default behavior (without a profile file or Atuin): <img width="351" height="147" alt="image" src="https://github.com/user-attachments/assets/47d6aa28-1ea9-4e55-9879-98359ad3fbcf" /> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-01-30chore(deps): update whoami dependency to v2 (#3118)Ben Beasley
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> In the [2.0.0](https://github.com/ardaku/whoami/releases/tag/v2.0.0) series, `whoami` removed all infallible function variants, and removed the `fallible` module, moving those functions to the root module. Therefore, I replaced `whoami::fallible::hostname` with `whoami::hostname` (the same function with the same signature, just moved to the root module). For `whoami::username`, the infallible function that `atuin` was using before is gone, and we must add error handling. I chose to fall back to the string `"unknown-user"` if getting the username fails, just as `"unknown-host"` is already the fallback when getting the hostname fails. This seemed reasonable to me, but it’s worth double-checking if there could be any unintended consequences, especially if `unknown-user` happens to be a real, valid username on the system. The alternatives I can see would be to panic on failure or to amend the signature of `get_username()` and all of its call sites with some kind of more graceful error handling (what?). ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-01-29Revert "feat: left arrow/backspace on empty to start edit" (#3115)Ellie Huxtable
Reverts atuinsh/atuin#3090 Can be achieved by setting ``` accept_past_line_start = true accept_with_backspace = true ```
2026-01-28chore(release): prepare for release 18.12.0-beta.1 (#3113)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-28feat: move atuin-server to its own binary (#3112)Ellie Huxtable
A combined binary was an early dev decision, when I thought most users would be self hosting. It is now clear that in actual fact, most users do not self host. So let's avoid forcing every user to have a copy of the server literally linked in, and let's stop building server deps over and over. The deployment for this shouldn't change. `dist` will build a binary for this automatically, and will also add it to the installer. The latter is perhaps something we should explore changing too! <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-28feat: add option to use tmux display-popup (#3058)Kkoi
This is a "continuation" of #1177 - which was a draft that used FIFOs (named pipes) to get output from the popup, however this causes popup not being closed properly, so in this PR I use tmpfile to store the result and read after popup closes. @ellie could you review this PR please? P.S. Thank you @immae for sharing your idea! ## Feature + Option to use tmux popup window in `config.toml` + Customize window width/height in `config.toml` + Tmux display-popup for `zsh, bash, fish` ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-01-27fix: new session on shlvl change (#3111)Ellie Huxtable
eg, the user uses tmux, runs zsh again as a nested session, etc ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-27chore(deps): audit ssl deps (#3110)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-27fix: custom data dir test on windows (#3109)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-27feat: remove user verification functionality (#3108)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing --------- Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-01-27chore(deps): cleanup of dep versions (#3106)Ellie Huxtable
Ensure we aren't using multiple versions, etc <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-27fix: do not set ATUIN_SESSION if it is already set (#3107)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-27fix(ui): align cursor when expand column is in the middle (#3103)依云
Also change the trailing space of each column to be drawn in `render_row` instead so that each column is separated by a space no matter how they are ordered. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-01-27feat: support setting a custom data dir in config (#3105)Ellie Huxtable
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing
2026-01-27chore(deps): Update to ratatui 0.30.0 (#3104)Tobias Genannt
<!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-01-26fix: do not hit sync v1 endpoints for statusEllie Huxtable
resolves #3054
2026-01-26clippy clappyEllie Huxtable
2026-01-25fix for inverse matchinglilydjwg
2026-01-25fix for 'termlilydjwg
2026-01-25feat(ui): highlight fulltext search as fulltext search instead of fuzzy searchlilydjwg
also parse query in one place
2026-01-24fix(ui): align cursor with the expand column (usually the command)lilydjwg
2026-01-24fix(ui): time column can take up to 9 cellslilydjwg
2026-01-24fix(ui): don't draw a leading space for commandlilydjwg
2026-01-23feat: add more vim movement bindings for navigation (#3041)Yan Ivnitskiy
Add vim-style movement commands to vim_normal keymap mode: - Ctrl+u/d: half-page up/down - Ctrl+b/f: full-page up/down - G: jump to visual bottom of history - gg: jump to visual top of history (multi-key sequence) - H/M/L: jump to top/middle/bottom of visible screen Also adds `offset()` getter to ListState for H/M/L functionality, and includes tests for the new bindings. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23chore!: remove total_history from api index response (#3094)Ellie Huxtable
Remove the expensive and inaccurate `total_history` field from the API index endpoint. The query `select sum(total) from total_history_count_user` ran on every request but is no longer relevant. The underlying table remains for per-user cached counts used by `/sync/count`. ## Checks - [x] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [x] I have checked that there are no existing pull requests for the same thing
2026-01-22chore(deps)!: update tls deps, remove built-in tls server support (#3091)Ellie Huxtable
Update reqwest from 0.12 to 0.13 and remove the built-in TLS termination from atuin-server. Users should use a reverse proxy (nginx, caddy, traefik) for TLS/HTTPS support instead. This removes: - axum-server and rustls dependencies - The [tls] configuration section - The launch_with_tls function Also updates metrics-exporter-prometheus from 0.17 to 0.18. The reverse proxy approach is standard and provides better flexibility for certificate management. I'd rather keep our server stack as minimal as possible. <!-- Thank you for making a PR! Bug fixes are always welcome, but if you're adding a new feature or changing an existing one, we'd really appreciate if you open an issue, post on the forum, or drop in on Discord --> ## Checks - [ ] I am happy for maintainers to push small adjustments to this PR, to speed up the review cycle - [ ] I have checked that there are no existing pull requests for the same thing