builtin/clone: avoid failure with GIT_DEFAULT_HASH
[git.git] / Documentation / RelNotes / 2.19.2.txt
blob759e6ca95738e1149f065f622de8ec9fb52a68fc
1 Git v2.19.2 Release Notes
2 =========================
4 Fixes since v2.19.1
5 -------------------
7  * "git interpret-trailers" and its underlying machinery had a buggy
8    code that attempted to ignore patch text after commit log message,
9    which triggered in various codepaths that will always get the log
10    message alone and never get such an input.
12  * "git rebase -i" did not clear the state files correctly when a run
13    of "squash/fixup" is aborted and then the user manually amended the
14    commit instead, which has been corrected.
16  * When fsmonitor is in use, after operation on submodules updates
17    .gitmodules, we lost track of the fact that we did so and relied on
18    stale fsmonitor data.
20  * Fix for a long-standing bug that leaves the index file corrupt when
21    it shrinks during a partial commit.
23  * Further fix for O_APPEND emulation on Windows
25  * A corner case bugfix in "git rerere" code.
27  * "git add ':(attr:foo)'" is not supported and is supposed to be
28    rejected while the command line arguments are parsed, but we fail
29    to reject such a command line upfront.
31  * "git rebase" etc. in Git 2.19 fails to abort when given an empty
32    commit log message as result of editing, which has been corrected.
34  * The code to backfill objects in lazily cloned repository did not
35    work correctly, which has been corrected.
37  * Update error messages given by "git remote" and make them consistent.
39  * "git update-ref" learned to make both "--no-deref" and "--stdin"
40    work at the same time.
42  * Recently added "range-diff" had a corner-case bug to cause it
43    segfault, which has been corrected.
45  * The recently introduced commit-graph auxiliary data is incompatible
46    with mechanisms such as replace & grafts that "breaks" immutable
47    nature of the object reference relationship.  Disable optimizations
48    based on its use (and updating existing commit-graph) when these
49    incompatible features are in use in the repository.
51  * The mailmap file update.
53  * The code in "git status" sometimes hit an assertion failure.  This
54    was caused by a structure that was reused without cleaning the data
55    used for the first run, which has been corrected.
57  * A corner-case bugfix.
59  * A partial clone that is configured to lazily fetch missing objects
60    will on-demand issue a "git fetch" request to the originating
61    repository to fill not-yet-obtained objects.  The request has been
62    optimized for requesting a tree object (and not the leaf blob
63    objects contained in it) by telling the originating repository that
64    no blobs are needed.
66  * The codepath to support the experimental split-index mode had
67    remaining "racily clean" issues fixed.
69  * "git log --graph" showing an octopus merge sometimes miscounted the
70    number of display columns it is consuming to show the merge and its
71    parent commits, which has been corrected.
73  * The implementation of run_command() API on the UNIX platforms had a
74    bug that caused a command not on $PATH to be found in the current
75    directory.
77  * A mutex used in "git pack-objects" were not correctly initialized
78    and this caused "git repack" to dump core on Windows.
80  * Under certain circumstances, "git diff D:/a/b/c D:/a/b/d" on
81    Windows would strip initial parts from the paths because they
82    were not recognized as absolute, which has been corrected.
84  * The receive.denyCurrentBranch=updateInstead codepath kicked in even
85    when the push should have been rejected due to other reasons, such
86    as it does not fast-forward or the update-hook rejects it, which
87    has been corrected.
89  * "git repack" in a shallow clone did not correctly update the
90    shallow points in the repository, leading to a repository that
91    does not pass fsck.
93  * Operations on promisor objects make sense in the context of only a
94    small subset of the commands that internally use the revisions
95    machinery, but the "--exclude-promisor-objects" option were taken
96    and led to nonsense results by commands like "log", to which it
97    didn't make much sense.  This has been corrected.
99  * The "container" mode of TravisCI is going away.  Our .travis.yml
100    file is getting prepared for the transition.
102  * Our test scripts can now take the '-V' option as a synonym for the
103    '--verbose-log' option.
105  * A regression in Git 2.12 era made "git fsck" fall into an infinite
106    loop while processing truncated loose objects.
108 Also contains various documentation updates and code clean-ups.