···44Updates since v2.30
55-------------------
6677+Backward incompatible and other important changes
88+99+ * The "pack-redundant" command, which has been left stale with almost
1010+ unusable performance issues, now warns loudly when it gets used, as
1111+ we no longer want to recommend its use (instead just "repack -d"
1212+ instead).
1313+1414+ * The development community has adopted Contributor Covenant v2.0 to
1515+ update from v1.4 that we have been using.
1616+1717+718UI, Workflows & Features
819920 * The "--format=%(trailers)" mechanism gets enhanced to make it
···2940 * "git maintenance" learned to drive scheduled maintenance on
3041 platforms whose native scheduling methods are not 'cron'.
31424343+ * After expiring a reflog and making a single commit, the reflog for
4444+ the branch would record a single entry that knows both @{0} and
4545+ @{1}, but we failed to answer "what commit were we on?", i.e. @{1}
4646+4747+ * "git bundle" learns "--stdin" option to read its refs from the
4848+ standard input. Also, it now does not lose refs whey they point
4949+ at the same object.
32503351Performance, Internal Implementation, Development Support etc.
3452···39574058 * The topological walk codepath is covered by new trace2 stats.
41596060+ * Update the Code-of-conduct to version 2.0 from the upstream (we've
6161+ been using version 1.4).
6262+6363+ * "git mktag" validates its input using its own rules before writing
6464+ a tag object---it has been updated to share the logic with "git
6565+ fsck".
6666+6767+ * Two new ways to feed configuration variable-value pairs via
6868+ environment variables have been introduced, and the way
6969+ GIT_CONFIG_PARAMETERS encodes variable/value pairs has been tweaked
7070+ to make it more robust.
7171+7272+ * Tests have been updated so that they do not to get affected by the
7373+ name of the default branch "git init" creates.
7474+7575+ * "git fetch" learns to treat ref updates atomically in all-or-none
7676+ fashion, just like "git push" does, with the new "--atomic" option.
7777+42784379Fixes since v2.30
4480-----------------
···71107 * Fix for procedure to building CI test environment for mac.
72108 (merge 3831132ace jc/macos-install-dependencies-fix later to maint).
73109110110+ * The implementation of "git branch --sort" wrt the detached HEAD
111111+ display has always been hacky, which has been cleaned up.
112112+ (merge 4045f659bd ab/branch-sort later to maint).
113113+114114+ * Newline characters in the host and path part of git:// URL are
115115+ now forbidden.
116116+ (merge 6aed56736b jk/forbid-lf-in-git-url later to maint).
117117+118118+ * "git diff" showed a submodule working tree with untracked cruft as
119119+ "Submodule commit <objectname>-dirty", but a natural expectation is
120120+ that the "-dirty" indicator would align with "git describe --dirty",
121121+ which does not consider having untracked files in the working tree
122122+ as source of dirtiness. The inconsistency has been fixed.
123123+124124+ * When more than one commit with the same patch ID appears on one
125125+ side, "git log --cherry-pick A...B" did not exclude them all when a
126126+ commit with the same patch ID appears on the other side. Now it
127127+ does.
128128+ (merge c9e3a4e76d jk/log-cherry-pick-duplicate-patches later to maint).
129129+74130 * Other code cleanup, docfix, build fix, etc.
75131 (merge 505a276596 pk/subsub-fetch-fix-take-2 later to maint).
76132 (merge 33fc56253b fc/t6030-bisect-reset-removes-auxiliary-files later to maint).
···89145 (merge 52fc4f195c dl/p4-encode-after-kw-expansion later to maint).
90146 (merge 4eb56b56e7 bc/doc-status-short later to maint).
91147 (merge a4a1ca22ef tb/local-clone-race-doc later to maint).
148148+ (merge 6a8c89d053 ma/more-opaque-lock-file later to maint).