Skip to content

Commit 8a36cd8

Browse files
committed
Ninth batch for 2.11
Signed-off-by: Junio C Hamano <[email protected]>
1 parent 1172e16 commit 8a36cd8

File tree

1 file changed

+40
-23
lines changed

1 file changed

+40
-23
lines changed

Documentation/RelNotes/2.11.0.txt

Lines changed: 40 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,16 @@ Performance, Internal Implementation, Development Support etc.
133133
* The codepath in "git fsck" to detect malformed tree objects has
134134
been updated not to die but keep going after detecting them.
135135

136+
* We call "qsort(array, nelem, sizeof(array[0]), fn)", and most of
137+
the time third parameter is redundant. A new QSORT() macro lets us
138+
omit it.
139+
140+
* "git pack-objects" in a repository with many packfiles used to
141+
spend a lot of time looking for/at objects in them; the accesses to
142+
the packfiles are now optimized by checking the most-recently-used
143+
packfile first.
144+
(merge c9af708b1a jk/pack-objects-optim-mru later to maint).
145+
136146

137147
Also contains various documentation updates and code clean-ups.
138148

@@ -174,35 +184,28 @@ notes for details).
174184
we are sending an object C, we want a tag B that directly points at
175185
C but also a tag A that points at the tag B. We used to miss the
176186
intermediate tag B in some cases.
177-
(merge b773dde jk/pack-tag-of-tag later to maint).
178187

179188
* Update Japanese translation for "git-gui".
180-
(merge 02748bc sy/git-gui-i18n-ja later to maint).
181189

182190
* "git fetch http::/site/path" did not die correctly and segfaulted
183191
instead.
184-
(merge d63ed6e jk/fix-remote-curl-url-wo-proto later to maint).
185192

186193
* "git commit-tree" stopped reading commit.gpgsign configuration
187194
variable that was meant for Porcelain "git commit" in Git 2.9; we
188195
forgot to update "git gui" to look at the configuration to match
189196
this change.
190-
(merge f14a310 js/git-gui-commit-gpgsign later to maint).
191197

192198
* "git add --chmod=+x" added recently lacked documentation, which has
193199
been corrected.
194-
(merge 7ef7903 et/add-chmod-x later to maint).
195200

196201
* "git log --cherry-pick" used to include merge commits as candidates
197202
to be matched up with other commits, resulting a lot of wasted time.
198203
The patch-id generation logic has been updated to ignore merges to
199204
avoid the wastage.
200-
(merge 7c81040 jk/patch-ids-no-merges later to maint).
201205

202206
* The http transport (with curl-multi option, which is the default
203207
these days) failed to remove curl-easy handle from a curlm session,
204208
which led to unnecessary API failures.
205-
(merge 2abc848 ew/http-do-not-forget-to-call-curl-multi-remove-handle later to maint).
206209

207210
* There were numerous corner cases in which the configuration files
208211
are read and used or not read at all depending on the directory a
@@ -221,13 +224,11 @@ notes for details).
221224
* Performance tests done via "t/perf" did not use the same set of
222225
build configuration if the user relied on autoconf generated
223226
configuration.
224-
(merge cd5c281 ks/perf-build-with-autoconf later to maint).
225227

226228
* "git format-patch --base=..." feature that was recently added
227229
showed the base commit information after "-- " e-mail signature
228230
line, which turned out to be inconvenient. The base information
229231
has been moved above the signature line.
230-
(merge 480871e jt/format-patch-base-info-above-sig later to maint).
231232

232233
* More i18n.
233234
(merge 43073f8 va/i18n later to maint).
@@ -239,21 +240,18 @@ notes for details).
239240
than nice. As the underlying commands used inside "git rebase"
240241
would fail with a more meaningful error message and advice text
241242
when the bogus ident matters, this extra check was removed.
242-
(merge 1e461c4 jk/rebase-i-drop-ident-check later to maint).
243243

244244
* "git gc --aggressive" used to limit the delta-chain length to 250,
245245
which is way too deep for gaining additional space savings and is
246246
detrimental for runtime performance. The limit has been reduced to
247247
50.
248-
(merge 07e7dbf jk/reduce-gc-aggressive-depth later to maint).
249248

250249
* Documentation for individual configuration variables to control use
251250
of color (like `color.grep`) said that their default value is
252251
'false', instead of saying their default is taken from `color.ui`.
253252
When we updated the default value for color.ui from 'false' to
254253
'auto' quite a while ago, all of them broke. This has been
255254
corrected.
256-
(merge 14d16e2 mm/config-color-ui-default-to-auto later to maint).
257255

258256
* The pretty-format specifier "%C(auto)" used by the "log" family of
259257
commands to enable coloring of the output is taught to also issue a
@@ -262,15 +260,13 @@ notes for details).
262260

263261
* A shell script example in check-ref-format documentation has been
264262
fixed.
265-
(merge 92dece7 ep/doc-check-ref-format-example later to maint).
266263

267264
* "git checkout <word>" does not follow the usual disambiguation
268265
rules when the <word> can be both a rev and a path, to allow
269266
checking out a branch 'foo' in a project that happens to have a
270267
file 'foo' in the working tree without having to disambiguate.
271268
This was poorly documented and the check was incorrect when the
272269
command was run from a subdirectory.
273-
(merge b829b94 nd/checkout-disambiguation later to maint).
274270

275271
* Some codepaths in "git diff" used regexec(3) on a buffer that was
276272
mmap(2)ed, which may not have a terminating NUL, leading to a read
@@ -283,15 +279,12 @@ notes for details).
283279
internal directory structure we assumed HomeBrew uses, which was a
284280
no-no. The procedure has been updated to ask HomeBrew things we
285281
need to know to fix this.
286-
(merge f86f49b ls/travis-homebrew-path-fix later to maint).
287282

288283
* When "git rebase -i" is given a broken instruction, it told the
289284
user to fix it with "--edit-todo", but didn't say what the step
290285
after that was (i.e. "--continue").
291-
(merge 37875b4 rt/rebase-i-broken-insn-advise later to maint).
292286

293287
* Documentation around tools to import from CVS was fairly outdated.
294-
(merge 106b672 jk/doc-cvs-update later to maint).
295288

296289
* "git clone --recurse-submodules" lost the progress eye-candy in
297290
recent update, which has been corrected.
@@ -311,7 +304,6 @@ notes for details).
311304
* In the codepath that comes up with the hostname to be used in an
312305
e-mail when the user didn't tell us, we looked at ai_canonname
313306
field in struct addrinfo without making sure it is not NULL first.
314-
(merge c375a7efa3 jk/ident-ai-canonname-could-be-null later to maint).
315307

316308
* "git worktree", even though it used the default_abbrev setting that
317309
ought to be affected by core.abbrev configuration variable, ignored
@@ -361,12 +353,37 @@ notes for details).
361353
has seen a micro-optimization.
362354
(merge e94ce1394e sg/ref-filter-parse-optim later to maint).
363355

356+
* When we started cURL to talk to imap server when a new enough
357+
version of cURL library is available, we forgot to explicitly add
358+
imap(s):// before the destination. To some folks, that didn't work
359+
and the library tried to make HTTP(s) requests instead.
360+
(merge d2d07ab861 ak/curl-imap-send-explicit-scheme later to maint).
361+
362+
* The ./configure script generated from configure.ac was taught how
363+
to detect support of SSL by libcurl better.
364+
(merge 924b7eb1c9 dp/autoconf-curl-ssl later to maint).
365+
366+
* The command-line completion script (in contrib/) learned to
367+
complete "git cmd ^mas<HT>" to complete the negative end of
368+
reference to "git cmd ^master".
369+
(merge 49416ad22a cp/completion-negative-refs later to maint).
370+
371+
* The existing "git fetch --depth=<n>" option was hard to use
372+
correctly when making the history of an existing shallow clone
373+
deeper. A new option, "--deepen=<n>", has been added to make this
374+
easier to use. "git clone" also learned "--shallow-since=<date>"
375+
and "--shallow-exclude=<tag>" options to make it easier to specify
376+
"I am interested only in the recent N months worth of history" and
377+
"Give me only the history since that version".
378+
(merge cccf74e2da nd/shallow-deepen later to maint).
379+
380+
* It is a common mistake to say "git blame --reverse OLD path",
381+
expecting that the command line is dwimmed as if asking how lines
382+
in path in an old revision OLD have survived up to the current
383+
commit.
384+
(merge e1d09701a4 jc/blame-reverse later to maint).
385+
364386
* Other minor doc, test and build updates and code cleanups.
365-
(merge e78d57e bw/pathspec-remove-unused-extern-decl later to maint).
366-
(merge ce25e4c rs/checkout-some-states-are-const later to maint).
367-
(merge a8342a4 rs/strbuf-remove-fix later to maint).
368-
(merge b56aa5b rs/unpack-trees-reduce-file-scope-global later to maint).
369-
(merge 5efc60c mr/vcs-svn-printf-ulong later to maint).
370387
(merge a22ae75 rs/cocci later to maint).
371388
(merge 45ccef87b3 rs/copy-array later to maint).
372389
(merge 8201688ecd dt/mailinfo later to maint).

0 commit comments

Comments
 (0)