* Magit v3.3.0 Release Notes

Released 4th October 2021 by Jonas Bernoulli.

I am pleased to announce the release of Magit version 3.3.0,
representing 88 commits by 6 contributors over two month.

Also see https://emacsair.me/2021/10/04/magit-3.3.

** Breaking changes

- The last remaining alphabetic keys (both lower- and uppercase) are
  now bound in ~magit-mode-map~.  ~H~ to ~magit-describe-section~, ~j~ to the
  new ~magit-status-quick~ (or ~magit-status-jump~ in status buffers), ~J~
  to the new ~magit-display-repository-buffer~, ~Q~ to ~magit-git-command~
  and ~Z~ to ~magit-worktree~, and once Forge is loaded, then ~N~ to
  ~forge-dispatch~.  (~Z~ used to be bound to ~magit-stash~, which now is
  only available on ~z~.)  #4259, 9bec1c54a, e401bd4d3

- ~I~ is now bound to ~magit-init~ instead of ~magit-gitignore~, which
  continues to be available on ~i~.  Users of the ~magit-imerge~ package
  (which previously bound ~i~) should consult its library header for a
  suggestion on how to resolve the resulting conflict.  b54b537db

** Changes since v3.2.0

- No longer automatically add ~--full-history~ when showing a log for a
  single file that isn't being tracked anymore.  #4381

- ~magit-stash-both~ now asks before discarding merge state.  #4345

- Several infix arguments, which previously could only be disabled
  or have a numeric value, can now also be enabled without having
  an explicit numeric value.  #4379

- Added ~-Xignore-space-change~ and ~-Xignore-all-space~ to ~magit-merge~.
  Like most newly added expert arguments they have to be explicitly
  [[https://magit.vc/manual/transient/Enabling-and-Disabling-Suffixes.html][revealed]].  #4387

- Added new command ~magit-status-quick~, which shows the status buffer
  but avoids refreshing it for performance reasons.  #4259

- Added new commands ~magit-display-repository-buffer~ (bound to ~j~ in
  Magit buffers) and ~magit-switch-to-repository-buffer~ (bound to ~J~)
  and variants for switching to any existing Magit buffer belonging
  to the current repository.  #4259

- Added new command ~magit-dired-am-apply-patches~ for use in Dired.
  #4094.

- Rearranged ~magit-patch~ and added a binding for ~magit-am~.  8ec3a1a21,
  8cadf302b

- Added new command ~magit-help~ (bound to ~h~ in ~magit-dispatch~), which
  simply shows Magit's Info manual.  5bba62629

- When listing entries for Imenu, then remove entry counts from group
  titles for the benefit of third-party packages that need stable
  titles.  #4477

- Include Forge's ~pullreq~ and ~issue~ sections when listing entries for
  Imenu.  f4016f734

- Bound ~imenu~ in the ~magit-status-jump~ prefix.  678df30c3

- Added new transient prefix command ~magit-bundle~, which provides
  support for ~git bundle~.  #4392

- When minibuffer completion allows for a branch or a commit to be
  selected and the former is preferred and thus offered as default
  then, if possible, offer the commit at point as the first choice
  initially accessible with ~next-history-element~.  #4291

- Bound ~magit-refs-set-show-commit-count~ in the ~magit-show-refs~
  prefix.  2fe42f63d

- Added new option ~magit-commit-diff-inhibit-same-window~.  #4132

- Added support for invoking Smerge's "keep" commands when point is on
  a hunk in a Magit buffer.  They can be invoked using the same key
  bindings as in file-visiting buffers or ~RET~, ~u~, ~b~ and ~l~.  #4458

- Added new command ~magit-remote-unshallow~.  #4480

- Added new option ~git-commit-use-local-message-ring~.  #4503

** Fixes since v3.2.0

- Make ~magit-branch-remote-head~ and ~magit-branch-current~ fall back
  to ~:inverse-video~ when the ~:box~ attribute isn't support, i.e., in
  a terminal.  If this change does not have any effect for you then
  your theme probably changes these faces and should stop doing so.
  #4206

- In some cases refreshing a buffer caused the cursor to jump to a
  different position.  #4148

- ~magit-convert-filename-for-git~ did not expand absolute filenames,
  which is necessary because Git does not understand ~~/~.  de1dc8e74

- ~magit-rebase~ did not enable ~--autostash~ by default but the
  documentation says it does.  421be65a3

- ~magit-clone-read-repository~ did not convert filenames before passing
  them to Git.  4aa7d2928

- Due to a regression in v2.90.0, ~magit-wip-log~ and
  ~magit-wip-log-current~ failed to extract the previous tips of the
  wip refs from the reflog (which is relevant when
  ~~magit-wip-merge-branch~ is nil).  c327824b0

- An old attempt to avoid needlessly updating section highlighting
  did not actually succeed.  #3976

- An error occurred when first showing a status buffer and
  ~which-function-mode~ is enabled because that caused Imenu to collect
  items at a time when that is not possible yet.  #4481

- A change in Git v2.32.0 made it necessary to explicitly filter out
  directories when committing to wip worktree refs.  #4499

- Fixed appearance of Gravatar images by forcing their size instead
  relying the service to return the promised size as advertised.
  8771401d4

- ~git-commit-setup~ enabled the major-mode after setting local
  variables, which caused non-permanent variables to be reset.
  ece2cb84d

* Authors

    76  Jonas Bernoulli
     8  Kyle Meyer
     1  Daniel Nagy
     1  Franklin Delehelle
     1  Jonathon McKitrick
     1  Lin Sun
