2.0.0 (2026-01-09)
⚠ BREAKING CHANGES
- config: remove support for custom highlight names
- setup: make optional
- target Nvim 0.11, drop testing for 0.9.5
Features
- actions.blame: add
BlameOptsparameter (30ec2bb) - actions: add show_commit (6e3ee68)
- add basic gh integration (aa49c96), closes #839
- add diffthis options (93f882f), closes #1314
- blame: do not show hunk if it was added in commit (0ddad02)
- blame: general improvements (7bf01f0)
- cache: add support for fetching line ranges (#1414) (5813e48)
- config: remove support for custom highlight names (74fce28)
- diffthis: add some rename detection (8dec8da)
- enable new sign calc (40e235f)
- enhance status formatting with color codes (e9cfaa0)
- improve context for logging (4b2c9ab)
- minor improvements to logging (d62e3ee)
- move watchers to repo objects (2bf0f73)
- overhaul repo watcher (a772850)
- remove border from preview_config default (9a75d9f), closes #1241
- set buffer name for blame window (588264b)
- setqflist: improve text in list (b014331)
- setup: make optional (6933bee), closes #1222
- show: add navigation mappings (1ee5c1f)
- show: adjust output to include tree and parent (9dfa82c)
- support for statuscolumn (b2094c6)
- win_width: accept winid param (ace6c6c)
Bug Fixes
- #1246 (17ab794)
- #1274 (550757c)
- #1277 (c5a39b2)
- #1280 (4e1337a)
- #1300 (7ce11ab)
- #1307 (ab9e05d)
- #1312 (5624b5e)
- #1372 (83e29aa)
- #1384 (cc2e664)
- #1388 (c7d37ca)
- #1440 (5cdd276)
- #1457 (6a8dbf0), closes #1458
- actions: allow bufnr to be 0 (0d46562), closes #1422
- add a 2s timeout to the git lock (1bfeabd)
- add explicit tostring() for thread in string.format() for Lua 5.1 compatibility (#1461) (d6482eb)
- add WinResized handler to update blame window extmarks (ecd3717)
- all toggle actions didn't refresh highlight in non-active buffers (50a635b)
- always schedule after git commands (11b67da), closes #1425 #1460
- async: raise errors when they happen (ee7e50d)
- attach through symlinks (2ac55db)
- attach: do not attach to files in resolved gitdir (c80e0b4), closes #1218
- attach: don't skip all
.git*files at the root of the repo (362fe61) - blame incompatible neovim function (#1406) (400cfab)
- blame_line{full=true} stop work (27c3f37)
- blame: always update current_line_blame on WinResized (ea7c05f)
- blame: check valid buf (58e3e52)
- blame: close blame window on bufhidden (91f39eb)
- blame: do no expand hunk text (425cb39)
- blame: do not show stale blames popup (0c68263)
- blame: do not unpack hunk linespec (731b581)
- blame: get gh blame info asynchronously (a434c8c)
- blame: handle bad git-blame output (07d4263), closes #1332
- blame: handle partial lines in blame output (3d01bad), closes #1236
- blame: not stale if enter popup before result popup.update (bf77caa)
- blame: remove link highlight on whitespace (89f7507)
- blame: set nolist in the blame window (6067670)
- cache: correct condition for range blame (3f5ffea)
- calculate staged color dynamically adjust based on background (d16d4ed)
- check cwd before running rev-parse (a3f64d4), closes #1331
- check preview popup before navigating (e399f97)
- Close blame buffer on closure of source buffer (130beac)
- correct hl group (b79047e)
- cygpath output handling for MSYS2 environments (#1463) (8690d7a)
- do not attach if buffer is a directory (392b9da)
- do not attach to fugitive tree buffers (472f752)
- do not error if no gh remotes (736f51d)
- emmylua fixes (7bbc674)
- emmylua fixes (c9165bb)
- error when
Gitsigns next_hunk target=all(4666d04) - error: #1277 (9cd665f)
- errors nil ref (43b0c85)
- force release lock if we waiting for more than 4 seconds (24d4c92)
- handle files outside of repo (1796c7c), closes #1117 #1296 #1297
- handle when files are removed from index (fd50977)
- handle_blame_info: do not consider
wrap/nowrapforright_align/eol(75879cd) - make update lock disabled by default (8270378)
- more robust timer closing (72acb69)
- nvim<0.11 has no
&winborder(2f0f65e) - popup: don't move window when resizing (20ad441)
- prevent inline hunk preview from folding (02eafb1)
- preview_hunk format (8bdaccd)
- preview: set border to none for inline preview (7cfd88d)
- react to config changes more robustly (c4dbc36)
- remove border from docs (be7640c)
- remove clear_env=true for system calls (03fb621), closes #1350
- remove duplicated phrase in comments of util.lua (18ec9a8)
- repo memory leak (1fcaddc)
- respect winborder when creating popups (ce5e1b5)
- scm-rockspec: add 'plugin' to copy_directories (cdafc32)
- set more buf options in commit buffers (c8ddbdb)
- show: handle numeric branch name (0b3ac7a)
- tests for nightly (00f1418)
- tracking multiple branch changes (#1266) (2149fc2)
- type errors from emmylua (5f1b1e2)
- type errors from emmylua (d1c3d5a)
- type fixes (24ecb13)
- types: add on_attach return type (8b729e4)
- util.flatten: iterator table in order (45086b3)
- vim.ui.select with Snacks (f780609)
- watcher: invalidate the cache earlier (d600d39)
- when diff dos format with unix format (8820595)
- windows: #1250 (140ac64)
- word_diff: align inline preview highlights (684270f)
- word_diff: no "No newline at end of file" shown in popup (6bd2949)
Performance Improvements
Continuous Integration
- target Nvim 0.11, drop testing for 0.9.5 (3c76f7f)