diff options
| author | Jonas Bernoulli <jonas@bernoul.li> | 2024-08-05 20:15:46 +0200 |
|---|---|---|
| committer | Jonas Bernoulli <jonas@bernoul.li> | 2024-08-05 20:15:46 +0200 |
| commit | db165bb2bcff77a138de62683cec867ba2220eda (patch) | |
| tree | 20a1ecfccf21ce4eafeb3cf9e1568186de044fa3 /docs/RelNotes | |
| parent | eb0b81e71d04615b3db96d0bb7feb755a998d2fa (diff) | |
Update release notes
Diffstat (limited to 'docs/RelNotes')
| -rw-r--r-- | docs/RelNotes/4.0.0.org | 481 |
1 files changed, 245 insertions, 236 deletions
diff --git a/docs/RelNotes/4.0.0.org b/docs/RelNotes/4.0.0.org index 682e81e..85e57ad 100644 --- a/docs/RelNotes/4.0.0.org +++ b/docs/RelNotes/4.0.0.org @@ -1,28 +1,144 @@ * Magit v4.0.0 Release Notes (unreleased) ** Breaking changes +- Dropped support for Emacs 25. 7c794201c4 + - Removed several functions, variables and variable values that were obsoleted in past releases: - - bc18ba942f Remove ~git-commit-fill-column~, obsolete since v2.11.0 - - 6b4f7f5811 Remove ~magit-section-when~, obsolete since v2.90.0 - - a8c92cc35d Remove face aliases, obsolete since v2.12.0 and v3.0.0 - - ed8067830f Remove variables and functions obsolete since v3.3.0 - - 553968346d ~magit-branch-rename-push-target~: Remove support for obsolete value - - b47efecfe6 ~magit-branch-name-format~: Remove support for obsolete %-sequence - -- Completed switch to new ~magit-completing-read-multiple~ implementation. + - bc18ba942f Removed ~git-commit-fill-column~, obsolete since v2.11.0 + - 6b4f7f5811 Removed ~magit-section-when~, obsolete since v2.90.0 + - a8c92cc35d Removed face aliases, obsolete since v2.12.0 and v3.0.0 + - ed8067830f Removed variables and functions obsolete since v3.3.0 + - 553968346d Removed support for obsolete ~magit-branch-rename-push-target~ values + - b47efecfe6 Removed support for obsolete %-sequence in ~magit-branch-name-format~ + +- Removed library ~magit-libgit.el~, which was only a proof-of-concept, without + Magit actually making use of it. Packagers were discouraged from including + this library in the Magit package, but many disregarded that. Because that + caused issues for many users, it had to be removed. c9fd81217c, 703dfe5812 + +- Completed the switch to a new ~magit-completing-read-multiple~ implementation. a162b8a71e ** Changes since v3.3.0 -- Added new function ~git-commit-turn-on-orglink~ intended for use in +- Added many context menus, which can be invoked using the mouse or a key + (~menu~ by default) and are a great way to discover context sensitive commands. + Context menus were added in Emacs 28.1 and are disabled by default. Enable + ~context-menu-mode~ or set ~magit-section-show-context-menu-for-emacs<28~ to ~t~, + if you are still using an older release. [[https://github.com/magit/magit/issues/4645][#4645]] + +- The menu-bar menu, which was severely neglected for many years, finally got a + makeover. It no longer offers a completely random subset of Magit's features. + Now it can be used to invoke most of the commands that could also be invoked + using ~magit-dispatch~; but by means of a small furry animal. 5641d3749c + +- Rewrote Imenu support, which resulted in a few new features and much less + code. 4727dcbe22 ff + +- Move imenu and bookmark support to the independently distributed ~magit-section~ + package, so that it can be used by third-party packages, without having to + depend on the ~magit~ package. [[https://github.com/magit/magit/issues/5104][#5104]] + +- One does not simply change key bindings; at least not as a package maintainer. + ~magit-define-global-key-bindings~ used to be a boolean, now it can be set to + ~recommended~, to opt in to new easier top-level bindings, which do not require + changing modifiers mid-sequence. 8b1f599de4 + +- For the longest time (which is why I don't consider this a bug fix) toggling + a section caused point to move to the beginning of that section. Stop doing + that, unless absolutely necessary. 9d8d5e5603 + +- Added support for displaying errors that occur when washing a section. + Use that for diff and log buffers, so users can investigate what went wrong. + 78a979fde5, 2bd3db69d6, d05b1ed381, a760dd1078 + +- Massively reduced the expansion of the essential macro ~magit-insert-section~, + moving most work to new support functions. [[https://github.com/magit/magit/issues/5130][#5130]] 13e4422584..058ca81497, + ee6fbba360..e2ca80a26e, 3695493ce8..f7cba11588 + +- Avoid expensive and/or unnecessary work, including: + - 8606488578 magit-save-repository-buffers: Rev-parse only once per directory + - ff4710afa6 Deprecate magit-git-dir to avoid needlessly repeating work + - e94b6ebfdb [[https://github.com/magit/magit/issues/4900][#4900]] Record diff-type in magit-diff-mode buffers + - 6852936364 [[https://github.com/magit/magit/issues/4768][#4768]] magit-wip-mode: Speedup activation by avoiding duplicated work + - 241b327b7a [[https://github.com/magit/magit/issues/4974][#4974]] Don't use markers in log buffers + - d536ef9e21 Don't preserve visibility in log buffers + - Limit use of log graphs and signature verification. 545a64c3ee, e32cec06a4 + - d73a3b11db Record child sections in reverse in log buffers + - 6014320c3e magit-module-confirm: Use refresh cache + - fef45b274e magit-insert-child-count: Minor performance tweak + - 4ec4d0272e magit-insert-section--finish: Optimize propertizing leaf sections + - 54d969b62f magit-insert-section--finish: Optimize for leaf sections + - 5544bac955 magit-insert-section--finish: Avoid unnecessary work for root section + - ~magit-turn-on-auto-revert-mode-if-desired~ performs cheaper checks first now. + [[https://github.com/magit/magit/issues/4591][#4591]] + - For performance reasons the "margin" style sadly had to be removed from + ~magit-blame-styles~. 608242086e + +- Added new commands ~git-commit-co-developed~ and ~git-commit-insert-trailer~ + (menu) [[https://github.com/magit/magit/issues/4810][#4810]], ~git-commit-search-message-backward~ and + ~git-commit-search-message-forward~ [[https://github.com/magit/magit/issues/4537][#4537]], ~git-rebase-update-ref~ [[https://github.com/magit/magit/issues/4776][#4776]], + ~magit-back-to-indentation~ [[https://github.com/magit/magit/issues/5183][#5183]], ~magit-git-mergetool~ [[https://github.com/magit/magit/issues/4128][#4128]], + ~magit-jump-to-ignored~ 550d99d86d, ~magit-log-related~ c33ed664e6, + ~magit-mouse-toggle-section~ 949b4a47a4, ~magit-profile-refresh-buffer~ + d520ce3306, ~magit-repolist-fetch~ [[https://github.com/magit/magit/issues/4453][#4453]], ~magit-repolist-find-file-other-frame~ + [[https://github.com/magit/magit/issues/4453][#4453]], ~magit-repolist-mark~ and ~magit-repolist-unmark~ [[https://github.com/magit/magit/issues/4453][#4453]], + ~magit-smerge-keep-all~ [[https://github.com/magit/magit/issues/4756][#4756]], ~magit-stage-buffer-file~ ebd7a0635d, + ~magit-stash-push~ (menu) [[https://github.com/magit/magit/issues/4583][#4583]], ~magit-toggle-git-debug~ 2ed5a06d08, + ~magit-unstage-buffer-file~ ebd7a0635d, ~magit-update-default-branch~ 59833692ed, + and others. + + - Added new transient menu ~magit-sparse-checkout~, which provides an interface + to the ~git sparse-checkout~ command, introduced in Git v2.25. [[https://github.com/magit/magit/issues/4102][#4102]] + + - Added new command ~magit-clone-sparse~, which makes it possible to clone + a repository and then immediately enable a sparse checkout, avoiding a + checkout of the full working tree. [[https://github.com/magit/magit/issues/4102][#4102]] + + - Added new command ~magit-stash-push~, which allows specifying a list of + files to be stashed. [[https://github.com/magit/magit/issues/4583][#4583]] + + - Added new command ~magit-ediff-resolve-all~, an alternative to + ~magit-ediff-resolve-rest~ (formerly known as ~magit-ediff-resolve~). The + new option ~magit-ediff-dwim-resolve-function~ controls which is used by + ~magit-ediff-dwim~ (another new command, ~magit-git-mergetool~, can also be + used). [[https://github.com/magit/magit/issues/4348][#4348]] + + - ~magit-refresh-buffer~ is now defined as a command. 26eac2bcb0 + +- Added new infix arguments: + - Added ~--diff-merges~ to ~magit-diff~ and ~magit-diff-refresh~. [[https://github.com/magit/magit/issues/4989][#4989]] + - Added ~--ff-only~ to ~magit-pull~. f766f68f78 + - Added ~--filter~ to ~magit-clone~ (hidden by default) to support partial + cloning, a feature that is available as of Git v2.17. [[https://github.com/magit/magit/issues/4102][#4102]] + - Added ~--force-rebase~ to ~magit-rebase~. 73b44644f6 + - Added ~--force~ to ~magit-fetch~ and ~magit-pull~. [[https://github.com/magit/magit/issues/5162][#5162]] + - Added ~--ignore-date~ to ~magit-rebase~. 7f03f572d5 + - Added ~--update-refs~ to ~magit-rebase~. 2fee806a01 + +- Added new hooks ~git-commit-post-finish-hook-timeout~ [[https://github.com/magit/magit/issues/4828][#4828]], + ~magit-post-clone-hook~ [[https://github.com/magit/magit/issues/4849][#4849]], ~magit-post-create-buffer-hook~ 26eec13943, and + ~magit-wash-message-hook~ 594bd14614. + +- Added new options ~git-commit-cd-to-toplevel~ [[https://github.com/magit/magit/issues/4973][#4973]], + ~magit-ediff-dwim-resolve-function~ 5a7519fd3d, ~magit-log-color-graph-limit~ + 545a64c3ee, ~magit-log-merged-commit-count~ [[https://github.com/magit/magit/issues/4711][#4711]], + ~magit-log-show-signatures-limit~ e32cec06a4, ~magit-openpgp-default-signing-key~ + 4eed9e1a45, ~magit-process-timestamp-format~ [[https://github.com/magit/magit/issues/4920][#4920]], + ~magit-revision-insert-related-refs-display-alist~ [[https://github.com/magit/magit/issues/4885][#4885]], + ~magit-section-show-context-menu-for-emacs<28~ 0168be9366, and + ~magit-verbose-messages~ 7fbf89cb52. + +- Added new faces ~git-rebase-action~ [[https://github.com/magit/magit/issues/4544][#4544]], ~magit-branch-warning~ bf3bcbe051, and + ~magit-section-child-count~ [[https://github.com/magit/magit/issues/4599][#4599]]; and added built-in faces ~diff-refine-added~ + and ~diff-refine-removed~ to the ~magit-faces~ custom group. + +- Added new function ~git-commit-turn-on-orglink~, intended for use in ~git-commit-setup-hook~. d122f15edd - ~git-commit.el~ no longer depends on ~dash~. bb7b7a4020 -- Renamed ~magit-keep-region-overlay~ to ~magit-section-keep-region-overlay~. - 7a94132384 - - Some repository and submodule list columns got a bit fancier. 3f3980735f 451438dc90 @@ -34,99 +150,43 @@ - ~magit-diff-dwim~ uses a more useful range when showing unpushed and unpulled changes. 9413847c1a -- Added new face ~git-rebase-action~ to allow customization of the face used for - the action words in git-rebase-todo files. #4544 - -- Added built-in faces ~diff-refine-added~ and ~diff-refine-removed~ to the - ~magit-faces~ Custom group. 6da7771b61 - -- When invoked with a prefix argument ~magit-fetch-modules~ now acts as a +- When invoked with a prefix argument, ~magit-fetch-modules~ now acts as a transient prefix command. fd5b9eadf3 -- Added new face ~magit-branch-warning~ and improved related faces. bf3bcbe051 ff - - ~magit-cherry-branch~ now supports using a detached HEAD as source. ff3269814c - ~git-commit-save-message~ now reports whether the message was actually saved. dfe3d03a14 -- Added new commands ~git-commit-search-message-backward~ and - ~git-commit-search-message-forward~. #4537 - -- Added ~--ff-only~ to ~magit-pull~. f766f68f78 - - Make use of ~with-connection-local-variables~, and for older Emacsen use a - stripped down implementation. #4568 - -- Added new functions ~version>~ and ~version=~ using the names ~magit-version>~ and - ~magit-version=~. My brain is too small to always get yoda conditions right, - while the Emacs maintainers have huge brains, and as a consequence have - rejected the addition of these functions on grounds of them being unnecessary. - I don't want to make such mistakes anymore, so I am forced to define these - functions myself. I guess this makes me a Sith. c8c2efd014, 6e86f36ead - -- Added ~--ignore-date~ to ~magit-rebase~. 7f03f572d5 + stripped down implementation. [[https://github.com/magit/magit/issues/4568][#4568]] -- Added new command ~magit-log-related~. c33ed664e6 - -- New transient ~magit-sparse-checkout~ provides an interface to the - ~git sparse-checkout~ command, introduced in Git v2.25. #4102 - -- New command ~magit-clone-sparse~ makes it possible to clone a repository and - then immediately enable a sparse checkout, avoiding a checkout of the full - working tree. #4102 - -- The ~magit-clone~ transient now includes ~--filter~ (hidden by default) to support - partial cloning, a feature that is available as of Git v2.17. #4102 - -- Added new command ~magit-stash-push~, which allows specifying a list of files to - be stashed. #4583 - -- Added some forward compatibility for SHA-256. #4585 +- Added some forward compatibility for SHA-256. [[https://github.com/magit/magit/issues/4585][#4585]] - Added ~magit-mode-bury-buffer~ to ~magit-dispatch~. 5a2624985a -- Added ~--force-rebase~ to ~magit-rebase~. 73b44644f6 - - ~magit-tag-release~ learned to extract the version string from the HEAD commit's message. 429d5c55e8 -- ~magit-turn-on-auto-revert-mode-if-desired~ performs cheaper checks first now. - #4591 - -- Added new face ~magit-section-child-count~. #4599 - - Improved version display and sorting in repository list buffers. 53199f2dd5, 68be0584f4 - Added support for marking repositories in repository list buffers and acting - on the marked repositories. #4453 + on the marked repositories. [[https://github.com/magit/magit/issues/4453][#4453]] - Improved internals of the version/feature check caches. On the user visible side, teach ~magit-zap-caches~ to zap everything, when invoked with a prefix - argument. #4603 - -- Rewrote Imenu support, which resulted in a few new features and much less - code. 4727dcbe22 ff - -- For performance reasons the "margin" style sadly had to be removed from - ~magit-blame-styles~. 608242086e + argument. [[https://github.com/magit/magit/issues/4603][#4603]] - When blaming, neighboring chunks about the same commit are now combined into - just one chunk. #4030 - -- Added new command ~magit-git-mergetool~. #4128 + just one chunk. [[https://github.com/magit/magit/issues/4030][#4030]] - Taught ~magit-diff-dwim~ about commits of submodules shown in the status buffer - of the super-repository. #4151 + of the super-repository. [[https://github.com/magit/magit/issues/4151][#4151]] - A cherry pick or revert can now be continued when there are unstaged changes as long as there are no unresolved conflicts, a behavior that more closely - matches the command line behavior. #4615 - -- For the longest time (which is why I don't consider this a bug fix) toggling - a section caused point to move to the beginning of that section. Stop doing - that unless absolutely necessary. 9d8d5e5603 + matches the command-line behavior. [[https://github.com/magit/magit/issues/4615][#4615]] - ~magit-ediff-read-files~ now tries to detect renames in one-file logs. b32521d543 @@ -134,171 +194,117 @@ - Increased use of section type, keymap and binding inheritance. 70b34f08ab -- The menu-bar menu, which was severely neglected for many years, finally got a - makeover. It no longer offers a completely random subset of Magit's features. - Now it can be used to invoke most of the commands that could also be invoked - using ~magit-dispatch~; but by means of a small furry animal. 5641d3749c - -- Added many context menus, which can be invoked using the mouse or a key - (~menu~ by default) and are a great way to discover context sensitive commands. - Unfortunately this isn't enabled by default. In Emacs 28 and greater, the - new global mode ~context-menu-mode~ has to be enabled. Set - ~magit-section-show-context-menu-for-emacs<28~ to ~t~ if you are still using an - older release. #4645 - - Depend on the Compat package, allowing me to use convenient features that were added to Emacs over the last few years, without having to wait another few - years until everybody has updated to a reasonably recent Emacs release. + years, until everybody has updated to a reasonably recent Emacs release. 571b4346c1 -- Added new option ~magit-openpgp-default-signing-key~. 4eed9e1a45 - -- Added new command ~magit-toggle-git-debug~. 2ed5a06d08 - - Tag messages and signatures are now turned into sections in commit buffers. 476383fc8f -- Work has began on making internal circular dependencies a thing of the past. +- Work has began on making internal circular dependencies between Magit + libraries a thing of the past. - The help text displayed in ~git-rebase-mode~ buffers got a makeover. 670dad14b5 ff -- Added new command ~magit-ediff-resolve-all~, an alternative to - ~magit-ediff-resolve-rest~ (formerly known as ~magit-ediff-resolve~). The - new option ~magit-ediff-dwim-resolve-function~ controls which is used by - ~magit-ediff-dwim~ (the new command ~magit-git-mergetool~ is another option). - #4348 - -- Improve the diff shown while committing. #3246 +- Improved the diff to be shown while committing is determined. [[https://github.com/magit/magit/issues/3246][#3246]] - ~magit-reverse~ is now permitted in diff buffers between HEAD and - the working tree. e94b6ebfdb #5090 + the working tree. e94b6ebfdb [[https://github.com/magit/magit/issues/5090][#5090]] -- Register a ~bookmark-handler-type~ for our handler. adf5848ea7 - -- Added new option ~magit-log-merged-commit-count~. #4711 +- Registered a ~bookmark-handler-type~ for our handler. adf5848ea7 - No longer exit transient while toggling margin or cycling styles. bf0ef3826b - ~magit-clone-url-format~ can now be configured to an alist to support servers - that employ different URL schemes. #4738 - -- a12018e9f8 #4741 Enable cloning repositories in Sourcehut by name -- 564cff8a40 #4751 magit-diff-wash-diffstat: Improve file rename identification -- bbf95a330d #4756 smerge-keep-all: New command -- ce0746ab9f #4743 diff: Mention when a file is a binary -- 1c51352e6f #4785 magit-branch-delete: Improve suggested branch for checkout -- 5d6c01e293 #4767 magit-commit-squash-internal: Restore window conf after showing diff -- 2fee806a01 magit-rebase: Add --update-refs + that employ different URL schemes. [[https://github.com/magit/magit/issues/4738][#4738]] + +- Repositories hosted on Sourcehut can now be cloned by name. [[https://github.com/magit/magit/issues/4741][#4741]] + +- 564cff8a40 [[https://github.com/magit/magit/issues/4751][#4751]] magit-diff-wash-diffstat: Improve file rename identification +- ce0746ab9f [[https://github.com/magit/magit/issues/4743][#4743]] diff: Mention when a file is a binary +- 1c51352e6f [[https://github.com/magit/magit/issues/4785][#4785]] magit-branch-delete: Improve suggested branch for checkout +- 5d6c01e293 [[https://github.com/magit/magit/issues/4767][#4767]] magit-commit-squash-internal: Restore window conf after showing diff - 74d14c2d10 magit-log-reflog-re: Handle "rewritten during rebase" -- 2653432bb5 #4776 git-rebase: Support update-ref action -- 161ab48520 #4810 git-commit: Add "Co-developed-by" header +- 2653432bb5 [[https://github.com/magit/magit/issues/4776][#4776]] git-rebase: Support update-ref action +- 161ab48520 [[https://github.com/magit/magit/issues/4810][#4810]] git-commit: Add "Co-developed-by" header - 99d9b3008a magit-long-lived-branches: New variable -- 8fd16d3406 #4828 git-commit-post-finish-hook-timeout: New option -- 59833692ed magit-update-default-branch: New command -- cd6fbe2887 #4837 magit-branch-read-args: Read another name if chosen branch exists -- fc9bf407ab #4849 magit-clone: Add hook `magit-post-clone-hook' -- 410e4583e0 #4181 Enable navigating broken sections -- 384b70921f #4885 magit-revision-insert-related-refs-exclude: New option - -+ 8606488578 magit-save-repository-buffers: Rev-parse only once per directory -- ff4710afa6 Deprecate magit-git-dir to avoid needlessly repeating work -- e94b6ebfdb #4900 Record diff-type in magit-diff-mode buffers - -- b7daf6a2ff #4905 magit-branch-delete: Improve "also on remote?" prompt -- 6852936364 #4768 magit-wip-mode: Speedup activation by avoiding duplicated work -- dd2e870b13 #4823 magit-save-repository-buffers: Wip commit all files at once - -- b2c4a26b5b #4923 magit-diff-show-or-scroll: Also handle tags -- 85d0554f4f #4920 Optionally display process start time in margin of process buffers -- 2f3740ab68 #4786 If bisect was invoked with --first-parent, use it for rest log too -- 25dbf32d86 #4781 Perform checkouts asynchronously +- cd6fbe2887 [[https://github.com/magit/magit/issues/4837][#4837]] magit-branch-read-args: Read another name if chosen branch exists +- 410e4583e0 [[https://github.com/magit/magit/issues/4181][#4181]] Enable navigating broken sections +- b7daf6a2ff [[https://github.com/magit/magit/issues/4905][#4905]] magit-branch-delete: Improve "also on remote?" prompt +- dd2e870b13 [[https://github.com/magit/magit/issues/4823][#4823]] magit-save-repository-buffers: Wip commit all files at once +- b2c4a26b5b [[https://github.com/magit/magit/issues/4923][#4923]] magit-diff-show-or-scroll: Also handle tags +- 85d0554f4f [[https://github.com/magit/magit/issues/4920][#4920]] Optionally display process start time in margin of process buffers +- 2f3740ab68 [[https://github.com/magit/magit/issues/4786][#4786]] If bisect was invoked with --first-parent, use it for rest log too +- 25dbf32d86 [[https://github.com/magit/magit/issues/4781][#4781]] Perform checkouts asynchronously - 152478b01f magit-branch-or-commit-at-point: Get from unpushed/unpulled sections -- 7fbf89cb52 magit-verbose-messages: New option - e38500b590 git-commit-header-line-format: New variable - 09f600fdcd..ebd7a0635d Improved commands for staging and unstaging files. - -- 8b1f599de4 Provide different sets of global key bindings that the user can - choose from by setting option ~magit-define-global-key-bindings~. - -- 8b3acf7473 #4962 Fix killing process if user input is aborted -- 2c2b34d7ac #4966 magit-file-{ignore,tracked}-p: Convert filename for git -- decd5f40dd #4970 magit-stash-pop: Use pop instead of apply -- 4ca7b95f28 magit-diff-type: Fix in logs when section isn't provided as argument +- 2c2b34d7ac [[https://github.com/magit/magit/issues/4966][#4966]] magit-file-{ignore,tracked}-p: Convert filename for git +- decd5f40dd [[https://github.com/magit/magit/issues/4970][#4970]] magit-stash-pop: Use pop instead of apply - b3f7e24616 magit-map-sections: New function - -+ 241b327b7a #4974 Don't use markers in log buffers -- d536ef9e21 Don't preserve visibility in log buffers -- 545a64c3ee magit-log-color-graph-limit: New option -- e32cec06a4 magit-log-show-signatures-limit: New option -- d73a3b11db Record child sections in reverse in log buffers -- 6014320c3e magit-module-confirm: Use refresh cache - - 667deaa74e magit-stage-file: Support staging ignored files -- d46270cb65 #4990 git-commit-setup-font-lock: Set comment-end to the empty string +- d46270cb65 [[https://github.com/magit/magit/issues/4990][#4990]] git-commit-setup-font-lock: Set comment-end to the empty string - 7d4092f00b Apply stash even if "git stash apply" cannot do it -- 186414ae41 #4998 When inserting pseudo header, always prompt with a prefix argument -- ace5ca4401 #4999 magit--imenu-goto-function: New function -- 27099441a0 #5000 Offer textual range at point as next history element -- 141dd46798 #4989 diff: Make --diff-merges option available +- 186414ae41 [[https://github.com/magit/magit/issues/4998][#4998]] When inserting pseudo header, always prompt with a prefix argument +- ace5ca4401 [[https://github.com/magit/magit/issues/4999][#4999]] magit--imenu-goto-function: New function +- 27099441a0 [[https://github.com/magit/magit/issues/5000][#5000]] Offer textual range at point as next history element - ae7f5e9fb4 magit-log-refresh: No longer exit transient after any margin command -- dd14e0c3c6 #5027 git-commit: Ignore leading comment when inserting headers +- dd14e0c3c6 [[https://github.com/magit/magit/issues/5027][#5027]] git-commit: Ignore leading comment when inserting headers - b436ad3830 git-commit: Replace the term "(pseudo) header" with "trailer" - 72fbb3a579 magit-stash-read-message: Provide a default instead of magic -- 51f04d6826 #5042 magit-branch-reset: Offer commit at point as history element - -- 26eac2bcb0 magit-refresh-buffer: Define as a command - -- fb1a3c487e #5051 magit-sequencer-abort: Require confirmation +- 51f04d6826 [[https://github.com/magit/magit/issues/5042][#5042]] magit-branch-reset: Offer commit at point as history element +- fb1a3c487e [[https://github.com/magit/magit/issues/5051][#5051]] magit-sequencer-abort: Require confirmation - 4efecc80a6 magit-log-move-to-revision: Default to fixup target if any - 025c48ed68 magit-section-lineage: Optionally return objects instead of types - 8a3674b427 completion: Prevent Vertico from sorting completion candidates -- 09961f67a4 #5097 git-commit-turn-on-flyspell: Don't check below cut-line +- 09961f67a4 [[https://github.com/magit/magit/issues/5097][#5097]] git-commit-turn-on-flyspell: Don't check below cut-line - 0032ffca8d magit-branch: Add global variable suffixes by default - -- 76c14efc78 #5104 Move bookmark functionality from magit-mode to magit-section -- eca60f310d #5104 Move imenu functionality from magit-mode to magit-section - - 8a3c1ccdda magit-section-cycle: Pivot to tab-next if there is a binding conflict - -- 28bcd29db5 #5107 magit--shell-command: Use magit-with-editor -- 4d378d91d2 #4973 git-commit-cd-to-toplevel: New option - -[TODO Merge other binding items into this one?] -- Added new infix arguments and suffixes to the transient prefix commands - ~magit-pull~, ~magit-rebase~ and ~magit-dispatch~. Likewise added new commands to - keymaps ~magit-stashes-section-map~. +- 28bcd29db5 [[https://github.com/magit/magit/issues/5107][#5107]] magit--shell-command: Use magit-with-editor +- f49584599c Hide placeholder commands from execute-completing-read +- e37c9ea4de Make discouraged use of git-commit-mode-hook safer and more convenient +- d98e935ed7 [[https://github.com/magit/magit/issues/5134][#5134]] magit-{browse,visit}-thing: Handle raw URL links +- 22fd8f8594 git-commit: Disable auto-filling for summary line +- f3b6864969 magit-insert-heading: Add optional CHILD-COUNT argument +- 6359e5c98f magit-hack-dir-local-variables: New function +- d1e2beb866 magit-file-checkout: Support selecting a directory +- 538cb2f90b [[https://github.com/magit/magit/issues/5176][#5176]] magit-file-section-indent: New variable +- 86509cb09e magit-run-git: Return exit-code +- 1fdb30cc1a [[https://github.com/magit/magit/issues/5188][#5188]] magit-log-select: Place cursor on first non-squash commit +- eb0b81e71d [[https://github.com/magit/magit/issues/5109][#5109]] Remove obsolete advice for Tramp ** Fixes since v3.3.0 -- ~magit-status-quick~ wasn't autoloaded. #4519 +- ~magit-status-quick~ wasn't autoloaded. [[https://github.com/magit/magit/issues/4519][#4519]] - Magit's version could not be detected if it was installed using Straight. - #4526 + [[https://github.com/magit/magit/issues/4526][#4526]] - Automatic saving of file-visiting buffers was broken inside remote - repositories that are accessed using Tramp. #4292 + repositories that are accessed using Tramp. [[https://github.com/magit/magit/issues/4292][#4292]] - Worktree commands and listing worktrees in the status buffer were broken - inside remote repositories that are accessed using Tramp. #4326 + inside remote repositories that are accessed using Tramp. [[https://github.com/magit/magit/issues/4326][#4326]] - Due to a regression in v3.3.0 setting the mark did not highlight the current and only selected section until a second section is selected. 348d9b9861 -- A diff header added in a new Git release wasn't handled yet. #4531 +- A diff header added in a new Git release wasn't handled yet. [[https://github.com/magit/magit/issues/4531][#4531]] - Fixed calculation of gravatar image size. ecfaa325a3 - ~magit-branch-checkout~ refreshed the buffer before all work was done. a14f847d97 -- Section highlighing was not always updated when it should have, and sometimes +- Section highlighting was not always updated when it should have, and sometimes it was done needlessly. aba0a59611, 41fcb24761, 10b5407131 - ~magit-dispatch~ contained a binding that conflicted with that of ~transient-help~. f85c4efb52 -- ~magit-diff-wash-submodule~ didn't account for empty commit messages. #4538 +- ~magit-diff-wash-submodule~ didn't account for empty commit messages. [[https://github.com/magit/magit/issues/4538][#4538]] - Empty face definitions weren't defined properly, resulting in "rouge" faces. a66b86d511 @@ -306,40 +312,40 @@ - ~magit-remote-at-point~ could return invalid values on branch sections. 2039619696 -- Fixed a regression in ~magit-log-maybe-update-blob-buffer~. #4552 +- Fixed a regression in ~magit-log-maybe-update-blob-buffer~. [[https://github.com/magit/magit/issues/4552][#4552]] - The helper function ~magit-current-blame-chunk~ passed the directory visited by a Dired buffer to ~git blame~, leading to some commands (e.g., ~magit-checkout~) - erroring when called from a Dired buffer. #4560 + erroring when called from a Dired buffer. [[https://github.com/magit/magit/issues/4560][#4560]] -- ~magit-convert-filename-for-git~ needed yet another tweak on Windows. #4557 +- ~magit-convert-filename-for-git~ needed yet another tweak on Windows. [[https://github.com/magit/magit/issues/4557][#4557]] - For Helm users, calling ~magit-stash-drop~ on the "Stashes" section has been - broken since v3.0.0. #4571 + broken since v3.0.0. [[https://github.com/magit/magit/issues/4571][#4571]] -- ~magit-list-refs~ failed to list a poorly named ~head~ branch. #4576 +- ~magit-list-refs~ failed to list a poorly named ~head~ branch. [[https://github.com/magit/magit/issues/4576][#4576]] - ~magit-rebase~ offered arguments that aren't supported by the Git version in use. 5e70f10566 -- ~magit-generate-changelog~ wasn't autoloaded. #4581 +- ~magit-generate-changelog~ wasn't autoloaded. [[https://github.com/magit/magit/issues/4581][#4581]] - Failed to specify ~:test~ when calling ~cl-set-difference~ with strings. d899f0e7a6 -- ~magit-section-show-child-count~ broke on commits that have no children. #4598 +- ~magit-section-show-child-count~ broke on commits that have no children. [[https://github.com/magit/magit/issues/4598][#4598]] - ~magit-fetch-modules~ offered the ~--all~ argument, but that wasn't useful. dc11ba7b29 - ~magit-discard~ didn't properly handle conflicts resulting from a file being - renamed on both sides. #4225 + renamed on both sides. [[https://github.com/magit/magit/issues/4225][#4225]] - Since v3.0.0, ~magit-pull-from-pushremote~ has failed on non-fast-forward - merges. #4604 + merges. [[https://github.com/magit/magit/issues/4604][#4604]] - ~magit-insert-revision-message~ got tripped up by messages that begin with a - commit hash. #4602 + commit hash. [[https://github.com/magit/magit/issues/4602][#4602]] - ~git-commit.el~ didn't always use ~magit-git-executable~, instead hard coding "git", even if Magit is available. 77255776cb @@ -348,21 +354,21 @@ handle global value. 0f96d39834 - ~magit-blame--make-highlight-overlay~ put the highlighting on the wrong line. - #4620 + [[https://github.com/magit/magit/issues/4620][#4620]] - A regression from v3.2.0 broke visiting a file when that file has a mode - change and point is on the file or the mode change section. #4623 + change and point is on the file or the mode change section. [[https://github.com/magit/magit/issues/4623][#4623]] - Module sections used the wrong keymap. 94aca04dc8 -- In-progress cherry-picks were not always recognized. #4646 +- In-progress cherry-picks were not always recognized. [[https://github.com/magit/magit/issues/4646][#4646]] - Locating remote executables was broken. 4d1d00e6fa - The use of external diff tools was not prevented everywhere we need the - ability to feed the output back to ~git apply~. #4664 + ability to feed the output back to ~git apply~. [[https://github.com/magit/magit/issues/4664][#4664]] -- The revision syntax for matching commit message was not supported. #4662 +- The revision syntax for matching commit message was not supported. [[https://github.com/magit/magit/issues/4662][#4662]] - ~magit-current-blame-chunk~ errored at eob. 437dfe95e9 @@ -373,71 +379,74 @@ - 84922c3997 magit-show-commit: Fix handling of current buffer's file - 71f7d1df1d magit-diff-wash-hunk: Handle one line edge case -- 1b0474b590 #4693 Highlight trailing whitespace on lines using dos eol style -- 4b8eab3af1 #4697 magit-{branch-or,}commit-at-point: Only use blame chunk when blaming -- 9b48dd7e36 #4702 Prefer 'git log --no-walk' to 'git show --no-patch' +- 1b0474b590 [[https://github.com/magit/magit/issues/4693][#4693]] Highlight trailing whitespace on lines using dos eol style +- 4b8eab3af1 [[https://github.com/magit/magit/issues/4697][#4697]] magit-{branch-or,}commit-at-point: Only use blame chunk when blaming +- 9b48dd7e36 [[https://github.com/magit/magit/issues/4702][#4702]] Prefer 'git log --no-walk' to 'git show --no-patch' - 64cca91341 magit-push: Fix magit-push-implicitly--desc - 5f5e065e1e magit-list-worktrees: Always include path in returned value - c1def98185 magit--minibuf-default-add-commit: Fix position of commit - c92dee94e9 magit-save-repository-buffers: Handle let-bound default-directory -- 9a69e3d479 #4765 magit-blame--make-margin-overlays: Fix beginning of each overlay +- 9a69e3d479 [[https://github.com/magit/magit/issues/4765][#4765]] magit-blame--make-margin-overlays: Fix beginning of each overlay - 557ab2c062 magit-diff-wash-diff: Fix headers for "git log -L --no-prefix" - 8158b484ae magit-list-module-paths: Ensure they are relative to top-level -- 87e68e0a8e #4803 magit-tag-release: Fix case when no default is detected -- a3d3758b26 #4807 magit-file-rename: Fix initial-input for destination -- 2a5815fee1 #4806 git-commit-font-lock-keywords-1: Use more restrictive keyword regexp +- 87e68e0a8e [[https://github.com/magit/magit/issues/4803][#4803]] magit-tag-release: Fix case when no default is detected +- a3d3758b26 [[https://github.com/magit/magit/issues/4807][#4807]] magit-file-rename: Fix initial-input for destination +- 2a5815fee1 [[https://github.com/magit/magit/issues/4806][#4806]] git-commit-font-lock-keywords-1: Use more restrictive keyword regexp - Commands that use optional third-party Git extensions didn't consider that extension executables may be installed in Git's exec path instead of a - directory in ~exec-path~. #4812 + directory in ~exec-path~. [[https://github.com/magit/magit/issues/4812][#4812]] - ~magit-show-commit~ showed the incorrect commit when called on a chunk generated - by ~magit-blame-reverse~. #4834 + by ~magit-blame-reverse~. [[https://github.com/magit/magit/issues/4834][#4834]] -- 2286a63974 #3624 Fix applying changes over Tramp from Windows +- 2286a63974 [[https://github.com/magit/magit/issues/3624][#3624]] Fix applying changes over Tramp from Windows - fa0997797b magit-process-filter: Suppress bogus error when aborting emacsclient - 76fe394953 magit-log-merged: Fix incorrect calculation of distance from tip - 6d325d90ba Revert "git-commit-setup: Enable mode after setting local variables" - 467bb21f7d magit-commit-diff-1: Take --allow-empty into account -- 97a95f7007 #4883 magit-revision-fill-summary-line: Use revision buffer's window width -- 8586e49d81 #4891 magit-auto-revert-mode: Leave disabled in one more case +- 97a95f7007 [[https://github.com/magit/magit/issues/4883][#4883]] magit-revision-fill-summary-line: Use revision buffer's window width +- 8586e49d81 [[https://github.com/magit/magit/issues/4891][#4891]] magit-auto-revert-mode: Leave disabled in one more case - 5bd6c15089 magit-save-repository-buffers: Guard against disappeared repository -- dec25b407b #4898 magit-log-set-commit-limit: Modify copy of magit-buffer-log-args -- 1d4bf64f33 #4903 magit-insert-remote-branches: Fix Git 2.40 compatibility - -- Support displaying errors that occur when washing a section. - 78a979fde5, 2bd3db69d6, d05b1ed381, a760dd1078 - -- beb3d6cae2 #4787 magit-wash-bisect-log: Ignore '# status:' lines - (new in Git v2.37.0) -- dd649baf7c #4922 diff: Fix visiting removed lines of renamed file -- 3224b1765f #4744 Keep cursor from getting stuck in invisible text -- 9c66514b2c #4940 magit-restore-window-configuration: Select buffer -- 031b9fad42 #4949 magit-display-repository-buffer: Fix doing so -- a003d3c11c #4954 magit-clone-internal: correctly get origin value from args -- 93d30c5459 #4976 magit-cygwin-mount-points: Don't use cygwin hack remotely -- 027bae37ae #4988 git-commit-setup: Fix auto-mode-alist for remote files -- 889ed3111a #4977 Allow un-/staging binary files when whitespace is being ignored -- 7a1d503470 #5005 git-commit-insert-header: Fix determining location -- 18d1b13675 #5006 magit-process-finish: Avoid unnecessary magit-process-buffer call +- dec25b407b [[https://github.com/magit/magit/issues/4898][#4898]] magit-log-set-commit-limit: Modify copy of magit-buffer-log-args +- 1d4bf64f33 [[https://github.com/magit/magit/issues/4903][#4903]] magit-insert-remote-branches: Fix Git 2.40 compatibility +- beb3d6cae2 [[https://github.com/magit/magit/issues/4787][#4787]] magit-wash-bisect-log: Ignore '# status:' lines +- dd649baf7c [[https://github.com/magit/magit/issues/4922][#4922]] diff: Fix visiting removed lines of renamed file +- 3224b1765f [[https://github.com/magit/magit/issues/4744][#4744]] Keep cursor from getting stuck in invisible text +- 9c66514b2c [[https://github.com/magit/magit/issues/4940][#4940]] magit-restore-window-configuration: Select buffer +- 031b9fad42 [[https://github.com/magit/magit/issues/4949][#4949]] magit-display-repository-buffer: Fix doing so +- a003d3c11c [[https://github.com/magit/magit/issues/4954][#4954]] magit-clone-internal: correctly get origin value from args +- 8b3acf7473 [[https://github.com/magit/magit/issues/4962][#4962]] Fix killing process if user input is aborted +- 4ca7b95f28 magit-diff-type: Fix in logs when section isn't provided as argument +- 93d30c5459 [[https://github.com/magit/magit/issues/4976][#4976]] magit-cygwin-mount-points: Don't use cygwin hack remotely +- 027bae37ae [[https://github.com/magit/magit/issues/4988][#4988]] git-commit-setup: Fix auto-mode-alist for remote files +- 889ed3111a [[https://github.com/magit/magit/issues/4977][#4977]] Allow un-/staging binary files when whitespace is being ignored +- 7a1d503470 [[https://github.com/magit/magit/issues/5005][#5005]] git-commit-insert-header: Fix determining location +- 18d1b13675 [[https://github.com/magit/magit/issues/5006][#5006]] magit-process-finish: Avoid unnecessary magit-process-buffer call - 3329bf0f4f magit-list-refs: Exclude all symbolic references -- 139f603cb8 #5021 magit-hunk-section-map: Honor smerge-command-prefix again -- c6a62accc5 #5029 magit-jump-*-pushremote: Restore functionality +- 139f603cb8 [[https://github.com/magit/magit/issues/5021][#5021]] magit-hunk-section-map: Honor smerge-command-prefix again +- c6a62accc5 [[https://github.com/magit/magit/issues/5029][#5029]] magit-jump-*-pushremote: Restore functionality - If applying a patch series with ~git am~ failed, the status buffer incorrectly - repeated already applied patches in the list of remaining patches. #5024 + repeated already applied patches in the list of remaining patches. [[https://github.com/magit/magit/issues/5024][#5024]] - b187753717 magit-insert-section-body: Ensure parent sections get extended - ~magit-bisect-run~ is supposed to abort if there are uncommitted changes or if the revisions are flipped (like ~magit-bisect-start~ does), but these checks were unintentionally dropped in Magit - v3.1.0. #5070 + v3.1.0. [[https://github.com/magit/magit/issues/5070][#5070]] - debb9723d9 Support staging hunks over Tramp again -- c3b7fd7dc4 #5076 magit-status-setup-buffer: Ensure correct position when narrowed +- c3b7fd7dc4 [[https://github.com/magit/magit/issues/5076][#5076]] magit-status-setup-buffer: Ensure correct position when narrowed - 8fd3cce75c magit-completing-read: Support using function as COLLECTION -- fc485bae0d #5092 magit-insert-remote-branches: Skip HEAD if not symref -- 36be3d66ed #5102 magit-tag-release: Use magit-run-git-with-editor +- fc485bae0d [[https://github.com/magit/magit/issues/5092][#5092]] magit-insert-remote-branches: Skip HEAD if not symref +- 36be3d66ed [[https://github.com/magit/magit/issues/5102][#5102]] magit-tag-release: Use magit-run-git-with-editor - 65ecb9c5fc Only hook up git-commit-setup-font-lock-in-buffer once mode is enabled -- 0e8f25a8d8 #5094 elpa/elpa/magit magit--git-wash: Support commands whose non-zero status isn't an error +- 0e8f25a8d8 [[https://github.com/magit/magit/issues/5094][#5094]] elpa/elpa/magit magit--git-wash: Support commands whose non-zero status isn't an error +- faa308fccd [[https://github.com/magit/magit/issues/5122][#5122]] magit-module-confirm: Never require confirmation with prefix argument +- ea02c8e634 magit-log-buffer-file: Support using the region in blobs again +- ea0f07e549 [[https://github.com/magit/magit/issues/5158][#5158]] magit-section--enable-long-lines-shortcuts: Fix warning +- 9d4192b7b1 [[https://github.com/magit/magit/issues/5116][#5116]] Fix visiting file from buffer created with magit-diff-paths +- ad68015aa1 [[https://github.com/magit/magit/issues/5178][#5178]] magit-confirm: Directly support two rounds of prompt formatting +- f31cf79b27 [[https://github.com/magit/magit/issues/5175][#5175]] magit-parse-git-async: Discard stderr for now |
