@@ -90,6 +90,29 @@ UI, Workflows & Features
9090
9191 * Documentation for "git ls-files" did not refer to core.quotePath.
9292
93+ * The experimental "split index" feature has gained a few
94+ configuration variables to make it easier to use.
95+
96+ * From a working tree of a repository, a new option of "rev-parse"
97+ lets you ask if the repository is used as a submodule of another
98+ project, and where the root level of the working tree of that
99+ project (i.e. your superproject) is.
100+
101+ * The pathspec mechanism learned to further limit the paths that
102+ match the pattern to those that have specified attributes attached
103+ via the gitattributes mechanism.
104+
105+ * Our source code has used the SHA1_HEADER cpp macro after "#include"
106+ in the C code to switch among the SHA-1 implementations. Instead,
107+ list the exact header file names and switch among implementations
108+ using "#ifdef BLK_SHA1/#include "block-sha1/sha1.h"/.../#endif";
109+ this helps some IDE tools.
110+
111+ * The start-up sequence of "git" needs to figure out some configured
112+ settings before it finds and set itself up in the location of the
113+ repository and was quite messy due to its "chicken-and-egg" nature.
114+ The code has been restructured.
115+
93116
94117Performance, Internal Implementation, Development Support etc.
95118
@@ -134,11 +157,9 @@ Performance, Internal Implementation, Development Support etc.
134157 against a server that does not authenticate without a username
135158 (i.e. not using Kerberos etc., which makes http.emptyAuth
136159 pointless).
137- (merge 40a18fc77c jk/http-auth later to maint).
138160
139161 * Windows port wants to use OpenSSL's implementation of SHA-1
140162 routines, so let them.
141- (merge 2cfc70f0de jh/mingw-openssl-sha1 later to maint).
142163
143164 * The t/perf performance test suite was not prepared to test not so
144165 old versions of Git, but now it covers versions of Git that are not
@@ -147,13 +168,24 @@ Performance, Internal Implementation, Development Support etc.
147168
148169 * Add 32-bit Linux variant to the set of platforms to be tested with
149170 Travis CI.
150- (merge 88dedd5e72 js/travis-32bit-linux later to maint).
151171
152172 * "git branch --list" takes the "--abbrev" and "--no-abbrev" options
153173 to control the output of the object name in its "-v"(erbose)
154174 output, but a recent update started ignoring them; fix it before
155175 the breakage reaches to any released version.
156176
177+ * Picking two versions of Git and running tests to make sure the
178+ older one and the newer one interoperate happily has now become
179+ possible.
180+ (merge bd4d9d993c jk/interop-test later to maint).
181+
182+ * "uchar [40]" to "struct object_id" conversion continues.
183+
184+ * "git tag --contains" used to (ab)use the object bits to keep track
185+ of the state of object reachability without clearing them after
186+ use; this has been cleaned up and made to use the newer commit-slab
187+ facility.
188+
157189
158190Also contains various documentation updates and code clean-ups.
159191
@@ -227,19 +259,16 @@ notes for details).
227259 * When a redirected http transport gets an error during the
228260 redirected request, we ignored the error we got from the server,
229261 and ended up giving a not-so-useful error message.
230- (merge 8e27391a5f jt/http-base-url-update-upon-redirect later to maint).
231262
232263 * The patch subcommand of "git add -i" was meant to have paths
233264 selection prompt just like other subcommand, unlike "git add -p"
234265 directly jumps to hunk selection. Recently, this was broken and
235266 "add -i" lost the paths selection dialog, but it now has been
236267 fixed.
237- (merge c852bd54bd jk/add-i-patch-do-prompt later to maint).
238268
239269 * Git v2.12 was shipped with an embarrassing breakage where various
240270 operations that verify paths given from the user stopped dying when
241271 seeing an issue, and instead later triggering segfault.
242- (merge ce83eadd9a js/realpath-pathdup-fix later to maint).
243272
244273 * There is no need for Python only to give a few messages to the
245274 standard error stream, but we somehow did.
@@ -248,11 +277,9 @@ notes for details).
248277 * The code to parse "git log -L..." command line was buggy when there
249278 are many ranges specified with -L; overrun of the allocated buffer
250279 has been fixed.
251- (merge aaae0bf787 ax/line-log-range-merge-fix later to maint).
252280
253281 * The command-line parsing of "git log -L" copied internal data
254282 structures using incorrect size on ILP32 systems.
255- (merge 07f546cda5 vn/line-log-memcpy-size-fix later to maint).
256283
257284 * "git diff --quiet" relies on the size field in diff_filespec to be
258285 correctly populated, but diff_populate_filespec() helper function
@@ -289,9 +316,27 @@ notes for details).
289316 when unexpected error happened, which has been fixed.
290317 (merge d1a13d3fcb jk/push-deadlock-regression-fix later to maint).
291318
319+ * "Dumb http" transport used to misparse a nonsense http-alternates
320+ response, which has been fixed.
321+ (merge d61434ae81 jk/http-walker-buffer-underflow-fix later to maint).
322+
323+ * "git add -p <pathspec>" unnecessarily expanded the pathspec to a
324+ list of individual files that matches the pathspec by running "git
325+ ls-files <pathspec>", before feeding it to "git diff-index" to see
326+ which paths have changes, because historically the pathspec
327+ language supported by "diff-index" was weaker. These days they are
328+ equivalent and there is no reason to internally expand it. This
329+ helps both performance and avoids command line argument limit on
330+ some platforms.
331+ (merge 7288e12cce jk/add-i-use-pathspecs later to maint).
332+
333+ * "git status --porcelain" is supposed to give a stable output, but a
334+ few strings were left as translatable by mistake.
335+ (merge b9e2bc560a mg/status-porcelain-no-i18n later to maint).
336+
292337 * Other minor doc, test and build updates and code cleanups.
293- (merge 2cfa83574c mm/two-more-xstrfmt later to maint).
294338 (merge b803ae4427 ps/docs-diffcore later to maint).
295339 (merge bcd886d897 ew/markdown-url-in-readme later to maint).
296340 (merge b2d593a779 rj/remove-unused-mktemp later to maint).
297341 (merge 3255e512a8 jk/ewah-use-right-type-in-sizeof later to maint).
342+ (merge dfa3ad3238 rs/blame-code-cleanup later to maint).
0 commit comments