aboutsummaryrefslogtreecommitdiff
path: root/.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt
diff options
context:
space:
mode:
authorJack Jamison <jackqjamison@gmail.com>2026-07-05 01:19:30 -0400
committerJack Jamison <jackqjamison@gmail.com>2026-07-05 01:19:30 -0400
commitbdf9a71ab7baa2b1de9abcfd5df1a9107a55d141 (patch)
treec4524e6c41aa5107211103401dabfaefc81aa882 /.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt
parentfe3984f541bd32bdfa418afb305b614176b55ca0 (diff)
add a bunch of emacs packages HELP
Diffstat (limited to '.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt')
-rw-r--r--.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt437
1 files changed, 437 insertions, 0 deletions
diff --git a/.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt b/.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt
new file mode 100644
index 0000000..d7fa73c
--- /dev/null
+++ b/.config/emacs/lisp/magit/docs/RelNotes/2.9.0.txt
@@ -0,0 +1,437 @@
+Magit v2.9.0 Release Notes
+==========================
+
+Released 7 December 2016 by Jonas Bernoulli.
+
+We are pleased to announce the release of Magit version 2.9.0,
+representing 250 commits by 18 people over 15 weeks.
+
+Also see https://emacsair.me/2016/12/07/magit-2.9.
+
+Breaking changes since v2.8.0
+-----------------------------
+
+* For historic reasons "RET" behaved differently in `magit-refs-mode'
+ than anywhere else. "RET" is one of Magit's most essential key
+ bindings and users quickly learn that regardless of what is actually
+ at point, it always shows more information about that thing in
+ another buffer. It can be very confusing if the references buffer
+ breaks this convention.
+
+ Now `magit-visit-ref' behaves just like `magit-show-commit' even in
+ `magit-refs-mode' buffers. By default at least; you can easily
+ revert this change using:
+
+ (setq magit-visit-ref-behavior '(checkout-any focus-on-ref))
+
+ However we recommend that you instead press "b b RET" to checkout
+ the reference at point, just like you always had to do in other
+ buffers. And "C-u y o RET" to make commit counts and lists of
+ cherries commits relative to the reference at point.
+
+ Furthermore the option `magit-visit-ref-create' was removed. If you
+ previously had that set to `t', then you can achieve the same using:
+
+ (add-to-list 'magit-visit-ref-behavior 'create-branch)
+
+ However we recommend that you instead press "b c RET RET", just like
+ you always had to do in other buffers. #2868
+
+* The option `magit-popup-show-common-commands' now defaults to `nil'.
+
+ This was done to make popups less noisy but increases the odds
+ that some users will never become aware of the common commands.
+ To counter that, the usage instructions displayed in the echo area
+ now also mention the key that can be used to show these commands
+ temporarily. #2868
+
+ You can easily revert this change using:
+
+ (setq magit-popup-show-common-commands t)
+
+* The option `magit-popup-use-prefix-argument' defaults to `default'
+ now, meaning that the use of a prefix argument causes the popup's
+ default action to be invoked directly without the popup being shown
+ first.
+
+ Previously the use of a prefix argument did not invoke the popup
+ or its default action, and instead informed users that they had to
+ choose what behavior they wanted and that they had to set the option
+ accordingly. Doing that was necessary three years ago, when the
+ default behavior changed when "magit-key-mode.el" was replaced with
+ "magit-popup.el". Now we don't need that safety net anymore. #2868
+
+* If, and only if, point is on a removed line in a diff, then "RET"
+ now jumps to the last commit which still had that line, not the
+ commit which removed that line. Staged changes are excluded from
+ this new behavior because in that case it seems favorable to always
+ visit the file in the working tree to make further changes. #2755
+
+ You can easily revert this change using:
+
+ (setq magit-diff-visit-previous-blob nil)
+
+* The margin that by default is displayed in pure log buffers and
+ optionally in some other buffers that contain logs is now more
+ flexible and easier to customize and to change on the fly.
+
+ The popup that "L" is bound to now features three commands that
+ for changing the appearance of the margin: `magit-toggle-margin',
+ `magit-toggle-margin-details' and `magit-cycle-margin-style'.
+
+ The binding for `magit-toggle-margin' has changed from "L t" to the
+ simpler "L L". You can easily revert this change using:
+
+ (magit-change-popup-key 'magit-log-refresh-popup :action ?L ?t)
+ (magit-change-popup-key 'magit-margin-popup :action ?L ?t)
+
+ For each mode that supports the margin there now exists a dedicated
+ option named `magit-*-margin', which controls whether the margin is
+ shown initially, whether the author name is displayed in addition
+ to the committer date, and how that committer date is formatted.
+ All of these options can be found in the new `magit-margin' Custom
+ group.
+
+ It is now possible to show the actual committer date, using a time
+ format of your choosing. Previously the only option was to display
+ the age of the commit.
+
+ The old options that were previously used to configure the margin
+ have been removed. If you have customized `magit-log-show-margin',
+ `magit-reflog-show-margin' and/or `magit-refs-show-margin', then you
+ now have to customize the respective new variable whose names do not
+ contain "-show". The same applies if you have previously changed
+ the value of `magit-log-margin-spec'. Unfortunately this cannot be
+ automated because the format of the values has changed and because
+ the old customizations do not unambiguously map to the new options.
+
+ You might also want to customize the options `magit-status-margin',
+ `magit-stashes-margin' and `magit-log-select-margin', for all of
+ which no corresponding `magit-*-show-margin' used to exist. Another
+ new option is `magit-refs-margin-for-tags'.
+
+ If you choose to display the commit dates instead of the commit
+ ages in all supported modes, then you should set `magit-log-margin'
+ before loading `magit'. If you do that then the default values of
+ the other `magit-*-margin' options will use the same commit date
+ style without you having to customize each option individually.
+ #2885, #2792
+
+* By default Git-Commit no longer complains about a summary line that
+ is too long by some standards. You can easily revert this change
+ using: 2f115d51
+
+ (add-to-list 'git-commit-style-convention-checks
+ 'overlong-summary-line)
+
+* In buffers used to write commit messages `fill-column' is no longer
+ set to 72. Instead the default value 70 is used (or whatever local
+ or global value is set up through other means). You can easily
+ revert this change using: #2848, #2852
+
+ (setq git-commit-fill-column 72)
+
+* When it takes too long to parse diffs, then Magit used to stop
+ expanding diff sections after one second. This was a constant
+ source of confusion and one second is a very long time anyway, so
+ this did not really help hiding the slowness, so this kludge was
+ effectively dropped. You can easily revert this change using:
+
+ (setq magit-diff-expansion-threshold 1.0)
+
+ By the way, improving performance will soon be a priority again.
+ #2886
+
+Changes since v2.8.0
+--------------------
+
+* Magit has a new shiny logo! It was created by Dmitriy A. from
+ Prospect One. Thanks a lot! https://prospectone.io/portfolio/magit
+
+* The new option `magit-branch-adjust-remote-upstream-alist' can be
+ used to configure what branch to use as upstream when branching a
+ remote branch. Without setting this option the upstream ends up
+ being the same branch as the one referred to by the push-remote.
+ 85c3053d
+
+* The per-refresh cache, which is used to save calls to git because
+ that is surprisingly slow on Windows, has been improved for calls to
+ `git config'. Instead of just avoiding identical calls to `git
+ config' as for other sub-commands, we now call `git config --list'
+ only once per refresh to obtain a list of all variables and their
+ values. #2743
+
+* When visiting a file or blob buffer by pressing "RET" while point is
+ inside a diff, then the position this jumps to is now accurate (even
+ when jumping to the file in the working tree from a diff that wasn't
+ about changes in the working tree). #2828
+
+* When visiting a file or blob buffer by pressing "RET" while point is
+ inside a diff, then the buffer may be widened but only if necessary.
+ If it isn't necessary to widen the buffer to jump to the appropriate
+ location, because that position falls into the narrowed region, then
+ that the buffer isn't widened. #2804, #2818
+
+* Hunk refinement is now faster. Users who previously set
+ `magit-diff-refine-hunk' to `nil' due to performance issues may
+ find that it now works well even when set to `all'. #2834
+
+* The new options `magit-diff-highlight-hunk-region-functions' and
+ `magit-diff-unmarked-lines-keep-foreground' (which was previously
+ defined as an undocumented variable) allow tuning the appearance
+ of the hunk-internal region.
+
+ The new function `magit-diff-highlight-hunk-region-using-face',
+ provides a new style; it makes the hunk-internal region bold (or
+ italic). I recommend you customize the above option to use this
+ function instead of one of the functions mentioned below.
+
+ The new functions `magit-diff-highlight-hunk-region-using-overlays'
+ and `magit-diff-highlight-hunk-region-using-underline' draw one-pixel
+ lines before and after the hunk-internal region. Both of these
+ functions have (different) glitches and due to limitations of Emacs'
+ display engine it is not possible to fix those. #2293, #2758, #2791
+
+* Added command `magit-find-git-config-file' and variants to make it
+ easier to open a file located in the git directory when ".git" is
+ a regular file whose contents describe the location of the real git
+ directory. 8664223c
+
+* Added command `magit-emacs-Q-command' to make troubleshooting and
+ bug reporting easier for users not installing from the git
+ repository. #2856
+
+* The command `magit-branch-spinoff' learned to remove only a subset
+ of commits from the previously current branch, instead of resetting
+ it to its upstream, when the region selects commits reachable from
+ HEAD. 1e652b87
+
+* The command `magit-branch-delete' now falls back to deleting the
+ tracking branch when the user attempts to delete a remote branch
+ which does not actually exist on the remote anymore. #2778
+
+* The command `magit-diff-dwim' learned about additional cases. On
+ a non-current branch it now shows the diff for "CURRENT...BRANCH"
+ (instead of "BRANCH..CURRENT") and inside a stash buffer it shows
+ the diff for the commit at point. #2812
+
+* The command `magit-push', which "o" is bound to in the push popup,
+ now offers the push-branch as default choice. Only if that is not
+ set does it default to the upstream as before. And when pushing a
+ commit that is reachable from HEAD, then it offers to push to the
+ push-branch or upstream of the current branch (which still has to
+ be forced explicitly). #2820
+
+* Log commands now support completion of refs in the "refs/tags" and
+ "refs/pull" namespaces. #2878
+
+* Added option `magit-no-confirm-default' to allow specifying commands
+ which should just use the default choice instead of having the user
+ confirm that by pressing RET. I recommend you don't use this, but
+ if you think that the defaults are so good that you always want to
+ use them, then this might make it a bit easier for you. #2741
+
+* Added option `magit-slow-confirm' for users who are afraid they
+ would answer `y-or-n-p' questions to quickly. One action, deleting
+ all stashes, now defaults to having to be confirmed with "yes RET".
+ #2752
+
+* Added option `magit-view-git-manual-method' to allow following links
+ to the Git Info manual by visiting the respective manpage instead.
+ de38266a
+
+* The option `magit-branch-prefer-remote-upstream' now also supports
+ regexps as members instead of only complete branch names. #2823
+
+* The option `magit-branch-read-upstream-first' used to be a boolean.
+ Now it supports a third value `fallback', which means to read the
+ upstream first like `t', but if the value provided by the user does
+ not reference an existing revision, then it is treated as the name of
+ the new branch and the upstream is read using the second prompt, as
+ if the value of this option were `nil'. #2741
+
+* When deleting a stash, the hash is now logged to the process log
+ buffer in addition to *Messages*, making it more likely that a
+ user who accidentally deleted a stash would find the information
+ required to undo that. #2746
+
+* The environment variable `INSIDE_EMACS' is now set when calling git.
+ #2789
+
+* `magit-define-popup' now allows specifying `:max-action-columns' per
+ section by using a function that returns a different value based on
+ the heading, which is passed as argument. 964fcbe0
+
+* Added support for new gpg status letters X, Y, R, and E. #2845
+
+* Added `hl-line-mode' to `magit-repolist-hook' and
+ `magit-submodule-list-hook' and defined those hooks explicitly.
+ 9f806732
+
+* Added the `--gpg-sign=' option to the revert popup. 916e4599
+
+* Added the `--sort=' option to the show-refs popup. (Use "C-u y" to
+ show the popup instead of invoking its default action as "y" does.)
+ 8ab81f06
+
+* Added new faces `git-rebase-comment-heading'
+ and `git-rebase-comment-hash'. #2769
+
+* `whitespace-mode' is not compatible with Magit buffers, where it is
+ now actively prevented from being turned on by the user. #2821
+
+Fixes since v2.8.0
+------------------
+
+* The command `magit-list-repositories' failed on empty repositories.
+ 09fac022
+
+* The Git variable `pull.rebase' was ignored when determining whether
+ the current branch is being rebased onto its upstream in order to
+ display that information in the status buffer. 9c946ee3
+
+* On 32-bit systems `magit-format-log-margin' failed because it tried
+ to truncate a time float that was too large for that. #2765
+
+* On Emacs v25.1 the hunk-internal region flashed briefly on
+ mouse-down-1 events and the delimiting horizontal lines could end
+ up having the height of a regular line instead of just a single
+ pixel. #2758
+
+* On Windows, when using a `windows-nt' Emacs together with a cygwin
+ Git, we failed to instruct Emacs to not use dos shell quoting when
+ calling git. And if Git wasn't available, then that caused an
+ error, which prevented Magit from being loaded. #2842
+
+* The encoding of commit messages is controlled by the Git variable
+ `i18n.logOutputEncoding' but we failed to take that into account.
+ Fixes by setting `i18n.logOutputEncoding' to UTF-8, but only inside
+ Magit and only for `window-nt'. #2738, #2813
+
+* It wasn't taken into account, until a few days after the release,
+ that as of Git v2.11, the default abbreviation size is no longer
+ hardcoded as 7 but instead scales with the repository size. #2880
+
+* File and directory local variables were not honored in the buffers
+ used to write commit messages. #2852
+
+* The caching mechanism that is supposed to ensure that sections of
+ unpulled and unpushed commits remain collapsed even when they
+ disappear was broken for a while. 0ad041c4
+
+* Process sentinels did not in all cases ensure that the correct
+ buffer was current before doing something that assumes that this is
+ the case. Almost always that did not matter because it was the case
+ anyway, but if other timers are running then it is possible that
+ those make the wrong buffer current. #2836
+
+* Process sentinels and filters used when blaming assumed that the
+ `exit' process status indicates success. #2836
+
+* The commands `magit-clone' and `magit-init' did not work over Tramp.
+ #2806, #2807
+
+* The commands `magit-worktree-checkout' and `magit-worktree-branch'
+ did not expand the path they pass to git, which is necessary because
+ git does not know the meaning of "~/". #2796
+
+* The commands which create fixup/squash commands and then immediately
+ squash them into the target commit did not remove `--gpg-sign' or
+ add `--no-gpg-sign'. Signing such commits is not only unnecessary;
+ unless the passphrase was cached earlier, trying to sign resulted in
+ the process indefinitely waiting for the passphrase to arrive with
+ no way for the user to actually provide it. #2799
+
+* Depending on the value of `magit-save-repository-buffers' the user
+ might have been asked whether s/he wants to save "git-rebase-todo",
+ which is never necessary and just a distraction. #2770, #2771
+
+* The function `magit-save-repository-buffers' did not follow symlinks.
+ #2843
+
+* Directories whose names begin with a period were filtered out when
+ using `magit-repository-directories' to calculate a list of repos.
+ #2830
+
+* The user name and email, which are displayed when reading a gpg key
+ from the user, were not stripped from the chosen value before being
+ handed off to git. #2761
+
+* When the upstream of the current branch is a remote whose url isn't
+ configured then that caused an error when refreshing the status
+ buffer. #2858
+
+* Buffers visiting a blob used the file's `default-directory'
+ even when that directory did not exist in the working tree. The
+ top-level directory is now used as `default-directory' when the
+ subdirectory does not exist. cfe46766
+
+* When visiting a directory by displaying a Dired buffer, we used to
+ display a buffer for the parent of the directory in question and
+ placed point on the name of the directory. But the intention always
+ was to show the Dired buffer for the directory itself. 5665ba94
+
+* Visiting or deleting a submodule listed inside "Modules" failed.
+ The latter is now done by de-initalizing the module. c26b746e
+
+* In the list of commits that are being rebased in the status buffer,
+ HEAD was sometimes prefixed with "same" when "stop" would have been
+ correct. #2877
+
+* The highlighting of a non-empty second line in a commit message was
+ not automatically updated. #2777
+
+* When `--force-with-lease' was added to the `magit-push-popup',
+ `--force' was removed, but sometimes the former just isn't enough.
+ be39a9ba
+
+* The face `magit-diff-file-heading-highlight' used to inherit from
+ `magit-diff-file-heading', which by default makes text bold. That
+ resulted in the complete current heading to be bold, but only the
+ file-name part is supposed to be bold. a4b52516
+
+* The manual stated that "DEL" in Git Rebase mode was bound to
+ `magit-diff-show-or-scroll-down', which was not the case. A new
+ command `git-rebase-show-or-scroll-down` has been added and bound
+ to "DEL" to provide this functionality. #2863
+
+* The function `magit-repolist-status' did not expand the filename
+ which may be necessary when listing submodules. cc8c1385
+
+* The macro `magit-with-temp-index' did honor the refresh cache, even
+ though its BODY may contain calls to git that are identical to
+ outside calls during the same refresh, but which are expected to
+ return a different value due to the use of a different index. #2883
+
+* The log margin did not show the author of stashes. #2846
+
+* The status header about the upstream did not take
+ `branch.NAME.rebase' into account. e65f15d0
+
+* Highlighting overlays could not be garbage collected until after a
+ refresh. #2888
+
+This release also contains typofixes, documentation updates,
+code clean-ups, and other small bug fixes and improvements.
+
+Authors
+-------
+
+ 196 Jonas Bernoulli
+ 21 Kyle Meyer
+ 12 Noam Postavsky
+ 4 Alexander Gramiak
+ 2 Adam Porter
+ 2 Marco Wahl
+ 2 Sean Allred
+ 1 Allen
+ 1 Basil L. Contovounesios
+ 1 Chillar Anand
+ 1 Graham Dobbins
+ 1 Joakim Jalap
+ 1 Josiah Schwab
+ 1 Keshav Kini
+ 1 Marian Schubert
+ 1 Philipp Stephani
+ 1 Tunc Uzlu
+ 1 York Zhao