Again we don't have any major new features this time (unless you count the support for alt-backspace for deleting words in the commit message editor, which is one of my favorite additions), but lots of smaller quality-of-life improvements and bug fixes. The most notable one is probably the fix for the stale index.lock problem, which was a very long-standing bug that seemed to affect some users much more than others for some reason.
What's Changed
Enhancements 🔥
- Add confirmation for hard reset by @stefanhaller in #4704
- Provide user config defaults for UI-changeable settings by @stefanhaller in #4717
- Improve mouse handling of suggestions panel by @stefanhaller in #4726
- Add new command "Checkout previous branch" by @kyu08 in #4728
- Add confirmation for nuking the working tree by @DawidPietrykowski in #4727
- Support Alt+Backspace for word deletion in text areas by @rtzll in #4741
- Don't use hunk mode for added or deleted files even when useHunkModeInStagingView config is on by @stefanhaller in #4758
- Show [0] keybinding in main view title by @stefanhaller in #4754
- Draw divergence from base branch right-aligned in branches view by @stefanhaller in #4785
- Enable hunk staging mode by default by @stefanhaller in #4780
Fixes 🔧
- Fix scrolling hunk into view when selecting next hunk by @stefanhaller in #4709
- Fix stale main view content when entering/exiting filtering view by @stefanhaller in #4719
- Detect double-clicks properly by @stefanhaller in #4725
- Fix commit searching during rebase or in divergence from upstream view by @stefanhaller in #4730
- Fix amending commits whose commit message is empty by @aidancz in #4732
- Several small fixes to filtering mode (by path or author) by @stefanhaller in #4749
- Show diff for renamed file when filtering by path by @stefanhaller in #4750
- Allow rewording or dropping commits in filtering mode by @stefanhaller in #4756
- Fix index out of bounds panic when repository has massive tags by @chojs23 in #4776
- When pressing
a
to stage all files, don't include untracked files when showing only tracked files by @stefanhaller in #4779 - Fix commit hash colors when filtering by path or aythor by @stefanhaller in #4789
- Improve temp dir handling by @stefanhaller in #4784
- Terminate git processes more gracefully to avoid the stale index.lock problem by @stefanhaller in #4782
Maintenance ⚙️
- Raise sponsors PRs as a draft by @jesseduffield in #4694
- Update the peter-evans/create-pull-request action to v7 by @stefanhaller in #4695
- Update release workflow by @stefanhaller in #4703
- Clean up the .gitignore file by @stefanhaller in #4706
- Remove unused code and texts by @stefanhaller in #4715
- Remove deprecated edit configs by @stefanhaller in #4716
- Bump minimum required git version to 2.32 by @stefanhaller in #4718
- Use a better way of pinning the version of golangci-lint by @stefanhaller in #4733
- Make the minimum required git version a placeholder in the error text by @stefanhaller in #4778
- refactor: use slices.Equal to simplify code by @jishudashu in #4764
Docs 📖
- Fix broken markdown in auto-generated keybindings documentation by @KEY60228 in #4690
- Remove the homebrew tap from the readme by @stefanhaller in #4705
I18n 🌎
- Update translations from Crowdin by @stefanhaller in #4791
Performance Improvements 📊
- Fix performance regression on startup in repos with many tags by @stefanhaller in #4777
New Contributors
- @KEY60228 made their first contribution in #4690
- @DawidPietrykowski made their first contribution in #4727
- @rtzll made their first contribution in #4741
- @chojs23 made their first contribution in #4776
- @jishudashu made their first contribution in #4764
Full Changelog: v0.53.0...v0.54.0