What's cooking (2020/04 #03)
Junio C Hamano committed
Apr 28, 2020 at 16:31 UTC
d4f20befc63a71177f0736931e4f433897ee29f4
1 file changed
+842
-676
whats-cooking.txt
+842
-676
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Apr 2020, #02; Mon, 20)
4
-X-master-at: 048abe1751e6727bfbacf7b80466d78e04631f94
5
-X-next-at: 435bf60bd57ed99bd0d44f7afa315bac6c9e97ab
3
+Subject: What's cooking in git.git (Apr 2020, #03; Tue, 28)
4
+X-master-at: 86ab15cb154862b6fa5cc646dac27532f881e1fb
5
+X-next-at: 6140810f5a86d69e4bee74d360b936fb4a8a3b1f
6
7
-What's cooking in git.git (Apr 2020, #02; Mon, 20)
7
+What's cooking in git.git (Apr 2020, #03; Tue, 28)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,11 +12,10 @@ Here are the topics that have been cooking. Commits prefixed with
12
'+' are in 'next'. The ones marked with '.' do not appear in any of
13
the integration branches, but I am still holding onto them.
14
15
-Having to issue two security fixes on a pair of very similar issues
16
-was embarrassing, but hopefully that's behind us. Let's restart
17
-merging things down. I am hoping that we can merge all topics
18
-marked to be merged to 'next' by early next week, so please make
19
-loud noises if I mistakenly marked stuff that are not yet ready.
15
+Quite a few topics have been merged to 'next' and also to 'master'.
16
+There are a few more important topics that need to be merged down to
17
+'master' before we're comfortable cutting the next maintenance
18
+update but hopefully we'd get there during this week.
19
20
You can find the changes described here in the integration branches
21
of the repositories listed at
@@ -24,117 +23,70 @@ of the repositories listed at
23
http://git-blame.blogspot.com/p/git-public-repositories.html
24
25
--------------------------------------------------
27
-[New Topics]
28
-
29
-* eb/mboxrd-doc (2020-04-15) 1 commit
30
- - Documentation: explain "mboxrd" pretty format
31
-
32
- Doc update.
33
-
34
- Will merge to 'next'.
35
-
36
-
37
-* mt/grep-cquote-path (2020-04-20) 1 commit
38
- - grep: follow conventions for printing paths w/ unusual chars
39
-
40
- "git grep" did not quote a path with unusual character like other
41
- commands (like "git diff", "git status") do, but did quote when run
42
- from a subdirectory, both of which has been corrected.
43
-
44
- Will merge to 'next'.
45
-
46
-
47
-* tb/diff-tree-with-notes (2020-04-20) 1 commit
48
- - diff-tree.c: load notes machinery when required
49
-
50
- "git diff-tree --pretty --notes" used to hit an assertion failure,
51
- as it forgot to initialize the notes subsystem.
26
+[Graduated to "master"]
27
53
- Will merge to 'next'.
54
-
55
-
56
-* tm/zsh-complete-switch-restore (2020-04-17) 1 commit
57
- - complete: zsh: add missing sub cmd completion candidates
58
-
59
- zsh command line completion (in contrib/) update.
60
-
61
- Will merge to 'next'.
62
-
63
-
64
-* vd/range-diff-with-custom-pretty-format-fix (2020-04-15) 2 commits
65
- - range-diff: avoid negative string precision
66
- - range-diff: fix a crash in parsing git-log output
67
-
68
- "git range-diff" fixes.
69
-
70
- Will merge to 'next'.
71
- cf. <20200416010734.GE36156@syl.local>
72
-
73
-
74
-* dl/test-must-fail-fixes-4 (2020-04-20) 8 commits
75
- - t9902: don't use `test_must_fail __git_*`
76
- - t9819: don't use test_must_fail with p4
77
- - t9164: use test_must_fail only on git commands
78
- - t9160: use test_path_is_missing()
79
- - t9141: use test_path_is_missing()
80
- - t7508: don't use `test_must_fail test_cmp`
81
- - t7408: replace incorrect uses of test_must_fail
82
- - t6030: use test_path_is_missing()
83
-
84
- Test clean-up.
85
-
86
- Will merge to 'next'.
28
+* ag/rebase-merge-allow-ff-under-abbrev-command (2020-03-30) 2 commits
29
+ (merged to 'next' on 2020-04-15 at b4679f7c7c)
30
+ + t3432: test `--merge' with `rebase.abbreviateCommands = true', too
31
+ + sequencer: don't abbreviate a command if it doesn't have a short form
32
88
---------------------------------------------------
89
-[Stalled]
33
+ "git rebase" with the merge backend did not work well when the
34
+ rebase.abbreviateCommands configuration was set.
35
91
-* mk/use-size-t-in-zlib (2018-10-15) 1 commit
92
- - zlib.c: use size_t for size
36
94
- The wrapper to call into zlib followed our long tradition to use
95
- "unsigned long" for sizes of regions in memory, which have been
96
- updated to use "size_t".
37
+* ag/sequencer-i18n-messages (2020-03-28) 1 commit
38
+ (merged to 'next' on 2020-04-15 at d6b38d12cf)
39
+ + sequencer: mark messages for translation
40
98
---------------------------------------------------
99
-[Cooking]
41
+ Message fix.
42
101
-* jk/use-quick-lookup-in-clone-for-tag-following (2020-04-01) 1 commit
102
- (merged to 'next' on 2020-04-15 at 11d6110e99)
103
- + clone: use "quick" lookup while following tags
43
105
- The logic to auto-follow tags by "git clone --single-branch" was
106
- not careful to avoid lazy-fetching unnecessary tags, which has been
107
- corrected.
44
+* ak/run-command-on-cygwin-fix (2020-03-27) 1 commit
45
+ (merged to 'next' on 2020-04-15 at 9e98b82a7f)
46
+ + run-command: trigger PATH lookup properly on Cygwin
47
109
- Will merge to 'master'.
48
+ Utitiles run via the run_command() API were not spawned correctly
49
+ on Cygwin, when the paths to them are given as a full path with
50
+ backslashes.
51
52
112
-* ds/commit-graph-expiry-fix (2020-04-01) 1 commit
113
- (merged to 'next' on 2020-04-20 at 4afb3de947)
114
- + commit-graph: fix buggy --expire-time option
53
+* ar/test-style-fixes (2020-03-22) 2 commits
54
+ (merged to 'next' on 2020-04-15 at 50ed75bccf)
55
+ + t: fix whitespace around &&
56
+ + t9500: remove spaces after redirect operators
57
116
- "git commit-graph write --expire-time=<timestamp>" did not use the
117
- given timestamp correctly, which has been corrected.
58
+ Style fixes.
59
119
- Will merge to 'master'.
60
61
+* bc/constant-memequal (2020-04-22) 2 commits
62
+ (merged to 'next' on 2020-04-22 at 6d2b10b1e7)
63
+ + receive-pack: compilation fix
64
+ (merged to 'next' on 2020-04-20 at 31180dae7d)
65
+ + builtin/receive-pack: use constant-time comparison for HMAC value
66
122
-* ds/t5319-touch-fix (2020-04-01) 1 commit
123
- (merged to 'next' on 2020-04-20 at 41ccdb3fcd)
124
- + t5319: replace 'touch -m' with 'test-tool chmtime'
67
+ Validation of push certificate has been made more robust against
68
+ timing attacks.
69
126
- Tests update to use "test-chmtime" instead of "touch -t".
70
128
- Will merge to 'master'.
71
+* bc/faq (2020-03-30) 1 commit
72
+ (merged to 'next' on 2020-04-15 at 2d4c46ca7a)
73
+ + docs: add a FAQ
74
75
+ Doc update.
76
131
-* en/sequencer-reflog-action (2020-04-07) 1 commit
132
- (merged to 'next' on 2020-04-15 at 6c635bdaa1)
133
- + sequencer: honor GIT_REFLOG_ACTION
77
135
- "git rebase -i" did not leave the reflog entries correctly.
78
+* bk/p4-pre-edit-changelist (2020-02-14) 7 commits
79
+ (merged to 'next' on 2020-04-15 at 3e7cecd445)
80
+ + git-p4: add RCS keyword status message
81
+ + git-p4: add p4 submit hooks
82
+ + git-p4: restructure code in submit
83
+ + git-p4: add --no-verify option
84
+ + git-p4: add p4-pre-submit exit text
85
+ + git-p4: create new function run_git_hook
86
+ + git-p4: rewrite prompt to be Windows compatible
87
137
- Will merge to 'master'.
88
+ "git p4" learned four new hooks and also "--no-verify" option to
89
+ bypass them (and the existing "p4-pre-submit" hook).
90
91
92
* dd/no-gpg-sign (2020-04-03) 6 commits
@@ -149,98 +101,118 @@ of the repositories listed at
101
"git rebase" learned the "--no-gpg-sign" option to countermand
102
commit.gpgSign the user may have.
103
152
- Will merge to 'master'.
104
105
+* dd/test-with-busybox (2020-03-26) 8 commits
106
+ (merged to 'next' on 2020-04-15 at 8177191066)
107
+ + t5703: feed raw data into test-tool unpack-sideband
108
+ + t4124: tweak test so that non-compliant diff(1) can also be used
109
+ + t7063: drop non-POSIX argument "-ls" from find(1)
110
+ + t5616: use rev-parse instead to get HEAD's object_id
111
+ + t5003: skip conversion test if unzip -a is unavailable
112
+ + t5003: drop the subshell in test_lazy_prereq
113
+ + test-lib-functions: test_cmp: eval $GIT_TEST_CMP
114
+ + t4061: use POSIX compliant regex(7)
115
+ (this branch is used by dd/ci-swap-azure-pipelines-with-github-actions.)
116
155
-* en/rebase-doc-hooks-called-by-accident (2020-04-05) 1 commit
156
- (merged to 'next' on 2020-04-20 at 1011f8a876)
157
- + git-rebase.txt: add another hook to the hooks section, and explain more
117
+ Various tests have been updated to work around issues found with
118
+ shell utilities that come with busybox etc.
119
159
- "git rebase" happens to call some hooks meant for "checkout" and
160
- "commit" by this was not a designed behaviour than historical
161
- accident. This has been documented.
120
163
- Will merge to 'master'.
121
+* dl/libify-a-few (2020-03-24) 2 commits
122
+ (merged to 'next' on 2020-04-20 at 84eb704a32)
123
+ + Lib-ify prune-packed
124
+ + Lib-ify fmt-merge-msg
125
126
+ Code in builtin/*, i.e. those can only be called from within
127
+ built-in subcommands, that implements bulk of a couple of
128
+ subcommands have been moved to libgit.a so that they could be used
129
+ by others.
130
166
-* jk/fast-import-use-hashmap (2020-04-06) 1 commit
167
- (merged to 'next' on 2020-04-20 at 76e8908efe)
168
- + fast-import: replace custom hash with hashmap.c
131
170
- The custom hash function used by "git fast-import" has been
171
- replaced with the one from hashmap.c, which gave us a nice
172
- performance boost.
132
+* dl/test-must-fail-fixes-3 (2020-03-27) 8 commits
133
+ (merged to 'next' on 2020-04-15 at dd0130c158)
134
+ + t5801: teach compare_refs() to accept !
135
+ + t5612: stop losing return codes of git commands
136
+ + t5612: don't use `test_must_fail test_cmp`
137
+ + t5607: reorder `nongit test_must_fail`
138
+ + t5550: simplify no matching line check
139
+ + t5512: stop losing return codes of git commands
140
+ + t5512: stop losing git exit code in here-docs
141
+ + t5512: don't use `test_must_fail test_cmp`
142
174
- Will merge to 'master'.
143
+ Test clean-up continues.
144
145
177
-* js/t0007-typofix (2020-04-05) 1 commit
178
- (merged to 'next' on 2020-04-15 at ac9f86e08f)
179
- + t0007: fix a typo
146
+* dl/wrapper-fix-indentation (2020-03-28) 1 commit
147
+ (merged to 'next' on 2020-04-15 at e6b9c16b1b)
148
+ + wrapper: indent with tabs
149
181
- Typofix in a test script.
150
+ Coding style fix.
151
183
- Will merge to 'master'.
152
153
+* dr/doc-recurse-submodules (2020-04-06) 5 commits
154
+ (merged to 'next' on 2020-04-20 at 601e10f9a1)
155
+ + doc: --recurse-submodules mostly applies to active submodules
156
+ + doc: be more precise on (fetch|push).recurseSubmodules
157
+ + doc: explain how to deactivate submodule.recurse completely
158
+ + doc: document --recurse-submodules for reset and restore
159
+ + doc: list all commands affected by submodule.recurse
160
186
-* jt/avoid-prefetch-when-able-in-diff (2020-04-07) 4 commits
187
- (merged to 'next' on 2020-04-20 at 02b52c34bf)
188
- + diff: restrict when prefetching occurs
189
- + diff: refactor object read
190
- + diff: make diff_populate_filespec_options struct
191
- + promisor-remote: accept 0 as oid_nr in function
161
+ Documentation updates around the "--recurse-submodules" option.
162
193
- "git diff" in a partial clone learned to avoid lazy loading blob
194
- objects in more casese when they are not needed.
163
196
- Will merge to 'master'.
164
+* dr/midx-avoid-int-underflow (2020-03-28) 1 commit
165
+ (merged to 'next' on 2020-04-15 at eb2343a5eb)
166
+ + midx.c: fix an integer underflow
167
168
+ When fed a midx that records no objects, some codepaths tried to
169
+ loop from 0 through (num_objects-1), which, due to integer
170
+ arithmetic wrapping around, made it nonsense operation with out of
171
+ bounds array accesses. The code has been corrected to reject such
172
+ an midx file.
173
199
-* lx/submodule-clear-variables (2020-04-02) 1 commit
200
- (merged to 'next' on 2020-04-20 at c18cd924c9)
201
- + git-submodule.sh: setup uninitialized variables
174
203
- The "git submodule" command did not initialize a few variables it
204
- internally uses and was affected by variable settings leaked from
205
- the environment.
175
+* ds/commit-graph-expiry-fix (2020-04-01) 1 commit
176
+ (merged to 'next' on 2020-04-20 at 4afb3de947)
177
+ + commit-graph: fix buggy --expire-time option
178
207
- Will merge to 'master'.
179
+ "git commit-graph write --expire-time=<timestamp>" did not use the
180
+ given timestamp correctly, which has been corrected.
181
182
210
-* pb/pull-fetch-doc (2020-04-05) 2 commits
211
- (merged to 'next' on 2020-04-15 at cf530f230f)
212
- + pull doc: correct outdated description of an example
213
- + pull doc: refer to a specific section in 'fetch' doc
183
+* ds/doc-clone-filter (2020-03-22) 1 commit
184
+ (merged to 'next' on 2020-04-15 at 16276689b3)
185
+ + clone: document --filter options
186
215
- The more aggressive updates to remote-tracking branches we had for
216
- the past 7 years or so were not reflected in the documentation,
217
- which has been corrected.
187
+ Doc update.
188
219
- Will merge to 'master'.
189
190
+* ds/log-exclude-decoration-config (2020-04-16) 2 commits
191
+ (merged to 'next' on 2020-04-22 at 7dc5fae7d9)
192
+ + log: add log.excludeDecoration config option
193
+ + log-tree: make ref_filter_match() a helper method
194
222
-* dd/ci-swap-azure-pipelines-with-github-actions (2020-04-10) 14 commits
223
- (merged to 'next' on 2020-04-20 at 40d0486c23)
224
- + ci: let GitHub Actions upload failed tests' directories
225
- + ci: add a problem matcher for GitHub Actions
226
- + tests: when run in Bash, annotate test failures with file name/line number
227
- + ci: retire the Azure Pipelines definition
228
- + README: add a build badge for the GitHub Actions runs
229
- + ci: configure GitHub Actions for CI/PR
230
- + ci: run gem with sudo to install asciidoctor
231
- + ci: explicit install all required packages
232
- + ci: fix the `jobname` of the `GETTEXT_POISON` job
233
- + ci/lib: set TERM environment variable if not exist
234
- + ci/lib: allow running in GitHub Actions
235
- + ci/lib: if CI type is unknown, show the environment variables
236
- + Merge branch 'dd/ci-musl-libc' into HEAD
237
- + Merge branch 'dd/test-with-busybox' into HEAD
238
- (this branch uses dd/ci-musl-libc and dd/test-with-busybox.)
195
+ The "--decorate-refs" and "--decorate-refs-exclude" options "git
196
+ log" takes have learned a companion configuration variable
197
+ log.excludeDecoration that sits at the lowest priority in the
198
+ family.
199
240
- Update the CI configuration to use GitHub Actions, retiring the one
241
- based on Azure Pipelines.
200
243
- Will merge to 'master'.
201
+* ds/revision-show-pulls (2020-04-10) 1 commit
202
+ (merged to 'next' on 2020-04-15 at 89b4d86a3a)
203
+ + revision: --show-pulls adds helpful merges
204
+
205
+ "git log" learned "--show-pulls" that helps pathspec limited
206
+ history views; a merge commit that takes the whole change from a
207
+ side branch, which is normally omitted from the output, is shown
208
+ in addition to the commits that introduce real changes.
209
+
210
+
211
+* ds/t5319-touch-fix (2020-04-01) 1 commit
212
+ (merged to 'next' on 2020-04-20 at 41ccdb3fcd)
213
+ + t5319: replace 'touch -m' with 'test-tool chmtime'
214
+
215
+ Tests update to use "test-chmtime" instead of "touch -t".
216
217
218
* eb/format-patch-no-encode-headers (2020-04-07) 1 commit
@@ -252,76 +224,30 @@ of the repositories listed at
224
directly be fed to e-mail programs. A new option has been added
225
to produce these headers in raw.
226
255
- Will merge to 'master'.
256
-
257
-
258
-* js/mingw-fixes (2020-04-10) 3 commits
259
- (merged to 'next' on 2020-04-15 at 11a3d39d2b)
260
- + mingw: help debugging by optionally executing bash with strace
261
- + mingw: do not treat `COM0` as a reserved file name
262
- + mingw: use modern strftime implementation if possible
263
-
264
- Misc fixes for Windows.
265
-
266
- Will merge to 'master'.
267
-
268
-
269
-* js/stash-p-fix (2020-04-08) 2 commits
270
- (merged to 'next' on 2020-04-20 at 435bf60bd5)
271
- + stash -p: (partially) fix bug concerning split hunks
272
- + t3904: fix incorrect demonstration of a bug
227
274
- Allowing the user to split a patch hunk while "git stash -p" does
275
- not work well; a band-aid has been added to make this (partially)
276
- work better.
277
-
278
- Will merge to 'master'.
279
-
280
-
281
-* js/subtree-doc-update-to-asciidoctor-2 (2020-04-08) 1 commit
282
- (merged to 'next' on 2020-04-20 at db1ed7a858)
283
- + subtree: fix build with AsciiDoctor 2
284
-
285
- Doc markup update.
286
-
287
- Will merge to 'master'.
288
-
289
-
290
-* pw/rebase-i-more-options (2020-04-07) 7 commits
291
- - SQUASH??? - avoid test numbering crashes
292
- - t3433: improve coverage
293
- - Revert "sequencer: allow callers of read_author_script() to ignore fields"
294
- - rebase -i: fix --committer-date-is-author-date
295
- - t3433: only compare commit dates
296
- - t3433: remove loops from tests
297
- - Revert "Revert "Merge branch 'ra/rebase-i-more-options'""
298
-
299
- "git rebase -i" learns a bit more options.
300
-
301
- Expecting a reroll.
302
- cf. <43d06bc0-b2ee-0ae6-f22c-9850e4033d45@gmail.com>
228
+* eb/mboxrd-doc (2020-04-15) 1 commit
229
+ (merged to 'next' on 2020-04-22 at 8935542c17)
230
+ + Documentation: explain "mboxrd" pretty format
231
232
+ Doc update.
233
305
-* bc/constant-memequal (2020-04-09) 1 commit
306
- (merged to 'next' on 2020-04-20 at 31180dae7d)
307
- + builtin/receive-pack: use constant-time comparison for HMAC value
234
309
- Validation of push certificate has been made more robust against
310
- timing attacks.
311
-
312
- Will merge to 'master'.
235
+* en/pull-do-not-rebase-after-fast-forwarding (2020-03-27) 1 commit
236
+ (merged to 'next' on 2020-04-15 at 3aa725ff45)
237
+ + pull: avoid running both merge and rebase
238
239
+ "git pull --rebase" tried to run a rebase even after noticing that
240
+ the pull results in a fast-forward and no rebase is needed nor
241
+ sensible, for the past few years due to a mistake nobody noticed.
242
315
-* ds/revision-show-pulls (2020-04-10) 1 commit
316
- (merged to 'next' on 2020-04-15 at 89b4d86a3a)
317
- + revision: --show-pulls adds helpful merges
243
319
- "git log" learned "--show-pulls" that helps pathspec limited
320
- history views; a merge commit that takes the whole change from a
321
- side branch, which is normally omitted from the output, is shown
322
- in addition to the commits that introduce real changes.
244
+* en/rebase-doc-hooks-called-by-accident (2020-04-05) 1 commit
245
+ (merged to 'next' on 2020-04-20 at 1011f8a876)
246
+ + git-rebase.txt: add another hook to the hooks section, and explain more
247
324
- Will merge to 'master'.
248
+ "git rebase" happens to call some hooks meant for "checkout" and
249
+ "commit" by this was not a designed behaviour than historical
250
+ accident. This has been documented.
251
252
253
* en/rebase-no-keep-empty (2020-04-11) 3 commits
@@ -336,7 +262,43 @@ of the repositories listed at
262
opposed to the ones that become empty because of rebasing). The
263
interactive rebase also marks commits that are empty in the todo.
264
339
- Will merge to 'master'.
265
+
266
+* en/sequencer-reflog-action (2020-04-07) 1 commit
267
+ (merged to 'next' on 2020-04-15 at 6c635bdaa1)
268
+ + sequencer: honor GIT_REFLOG_ACTION
269
+
270
+ "git rebase -i" did not leave the reflog entries correctly.
271
+
272
+
273
+* jc/allow-strlen-substitution-in-shell-scripts (2020-03-29) 1 commit
274
+ (merged to 'next' on 2020-04-15 at 262424efdc)
275
+ + CodingGuidelines: allow ${#posix} == strlen($posix)
276
+
277
+ Coding guideline update.
278
+
279
+
280
+* jc/doc-test-leaving-early (2020-03-29) 1 commit
281
+ (merged to 'next' on 2020-04-20 at 4bd94585d1)
282
+ + t/README: suggest how to leave test early with failure
283
+
284
+ Document the recommended way to abort a failing test early (e.g. by
285
+ exiting a loop), which is to say "return 1".
286
+
287
+
288
+* jc/gnu-hurd-lets-fread-read-dirs (2020-04-22) 1 commit
289
+ (merged to 'next' on 2020-04-22 at 8cd50b8150)
290
+ + config.mak.uname: Define FREAD_READS_DIRECTORIES for GNU/Hurd
291
+
292
+ GNU/Hurd is also among the ones that need the fopen() wrapper.
293
+
294
+
295
+* jc/log-no-mailmap (2020-03-16) 3 commits
296
+ (merged to 'next' on 2020-04-20 at b43968e73e)
297
+ + log: give --[no-]use-mailmap a more sensible synonym --[no-]mailmap
298
+ + clone: reorder --recursive/--recurse-submodules
299
+ + parse-options: teach "git cmd -h" to show alias as alias
300
+
301
+ "git log" learns "--[no-]mailmap" as a synonym to "--[no-]use-mailmap"
302
303
304
* jc/missing-ref-store-fix (2020-04-09) 2 commits
@@ -348,8 +310,6 @@ of the repositories listed at
310
about a full year without anybody noticing, which has been
311
corrected.
312
351
- Will merge to 'master'.
352
-
313
314
* jk/config-use-size-t (2020-04-10) 6 commits
315
(merged to 'next' on 2020-04-20 at 4af9fea74f)
@@ -364,7 +324,92 @@ of the repositories listed at
324
length of various pieces of text it parsed, which has been updated
325
to use the correct type (i.e. size_t) throughout.
326
367
- Will merge to 'master'.
327
+
328
+* jk/credential-parsing-end-of-host-in-URL (2020-04-15) 1 commit
329
+ (merged to 'next' on 2020-04-15 at 55bc3eb7cb)
330
+ + credential: treat "?" and "#" in URLs as end of host
331
+
332
+ Parsing of URL for the credential helper has been corrected.
333
+
334
+
335
+* jk/fast-import-use-hashmap (2020-04-06) 1 commit
336
+ (merged to 'next' on 2020-04-20 at 76e8908efe)
337
+ + fast-import: replace custom hash with hashmap.c
338
+
339
+ The custom hash function used by "git fast-import" has been
340
+ replaced with the one from hashmap.c, which gave us a nice
341
+ performance boost.
342
+
343
+
344
+* jk/harden-protocol-v2-delim-handling (2020-03-29) 3 commits
345
+ (merged to 'next' on 2020-04-15 at c983535405)
346
+ + test-lib-functions: simplify packetize() stdin code
347
+ + upload-pack: handle unexpected delim packets
348
+ + test-lib-functions: make packetize() more efficient
349
+
350
+ The server-end of the v2 protocol to serve "git clone" and "git
351
+ fetch" was not prepared to see a delim packets at unexpected
352
+ places, which led to a crash.
353
+
354
+
355
+* jk/oid-array-cleanups (2020-03-30) 7 commits
356
+ (merged to 'next' on 2020-04-15 at d6155cd023)
357
+ + oidset: stop referring to sha1-array
358
+ + ref-filter: stop referring to "sha1 array"
359
+ + bisect: stop referring to sha1_array
360
+ + test-tool: rename sha1-array to oid-array
361
+ + oid_array: rename source file from sha1-array
362
+ + oid_array: use size_t for iteration
363
+ + oid_array: use size_t for count and allocation
364
+
365
+ Code cleanup.
366
+
367
+
368
+* jk/p5310-drop-non-bitmap-timing (2020-03-27) 1 commit
369
+ (merged to 'next' on 2020-04-15 at 7aac76cab2)
370
+ + p5310: stop timing non-bitmap pack-to-disk
371
+
372
+ Perf-test update.
373
+
374
+
375
+* jk/t3419-drop-expensive-tests (2020-03-22) 1 commit
376
+ (merged to 'next' on 2020-04-15 at a17ac8f996)
377
+ + t3419: drop EXPENSIVE tests
378
+
379
+ Test update.
380
+
381
+
382
+* jk/test-cleanup (2020-03-27) 2 commits
383
+ (merged to 'next' on 2020-04-15 at bce8b2d5ed)
384
+ + t/lib-*.sh: drop executable bit
385
+ + t/lib-credential.sh: drop shebang line
386
+
387
+ Test cleanup.
388
+
389
+
390
+* jk/use-quick-lookup-in-clone-for-tag-following (2020-04-01) 1 commit
391
+ (merged to 'next' on 2020-04-15 at 11d6110e99)
392
+ + clone: use "quick" lookup while following tags
393
+
394
+ The logic to auto-follow tags by "git clone --single-branch" was
395
+ not careful to avoid lazy-fetching unnecessary tags, which has been
396
+ corrected.
397
+
398
+
399
+* jm/gitweb-fastcgi-utf8 (2020-03-29) 1 commit
400
+ (merged to 'next' on 2020-04-15 at adb7f2373a)
401
+ + gitweb: fix UTF-8 encoding when using CGI::Fast
402
+
403
+ Gitweb update.
404
+
405
+
406
+* jn/demote-proto2-from-default (2020-04-22) 1 commit
407
+ (merged to 'next' on 2020-04-22 at 1a5e0b221a)
408
+ + Revert "fetch: default to protocol version 2"
409
+
410
+ Those fetching over protocol v2 from linux-next and other kernel
411
+ repositories are reporting that v2 often fetches way too much than
412
+ needed.
413
414
415
* js/flush-prompt-before-interative-input (2020-04-10) 2 commits
@@ -375,7 +420,25 @@ of the repositories listed at
420
The interactive input from various codepaths are consolidated and
421
any prompt possibly issued earlier are fflush()ed before we read.
422
378
- Will merge to 'master'.
423
+
424
+* js/import-tars-do-not-make-phony-files-from-pax-headers (2020-03-24) 1 commit
425
+ (merged to 'next' on 2020-04-15 at 408afae2c9)
426
+ + import-tars: ignore the global PAX header
427
+
428
+ The import-tars importer (in contrib/fast-import/) used to create
429
+ phony files at the top-level of the repository when the archive
430
+ contains global PAX headers, which made its own logic to detect and
431
+ omit the common leading directory ineffective, which has been
432
+ corrected.
433
+
434
+
435
+* js/mingw-fixes (2020-04-10) 3 commits
436
+ (merged to 'next' on 2020-04-15 at 11a3d39d2b)
437
+ + mingw: help debugging by optionally executing bash with strace
438
+ + mingw: do not treat `COM0` as a reserved file name
439
+ + mingw: use modern strftime implementation if possible
440
+
441
+ Misc fixes for Windows.
442
443
444
* js/mingw-is-hidden-test-fix (2020-04-11) 3 commits
@@ -387,8 +450,6 @@ of the repositories listed at
450
A Windows-specific test element has been made more robust against
451
misuse from both user's environment and programmer's errors.
452
390
- Will merge to 'master'.
391
-
453
454
* js/mingw-isilon-nfs (2020-04-10) 1 commit
455
(merged to 'next' on 2020-04-15 at 4bac536980)
@@ -397,666 +458,767 @@ of the repositories listed at
458
Will merge to 'master'.
459
460
400
-* ma/config-doc-fix (2020-04-09) 1 commit
401
- (merged to 'next' on 2020-04-15 at 256175ec38)
402
- + config.txt: move closing "----" to cover entire listing
403
-
404
- Doc update.
405
-
406
- Will merge to 'master'.
407
-
461
+* js/stash-p-fix (2020-04-08) 2 commits
462
+ (merged to 'next' on 2020-04-20 at 435bf60bd5)
463
+ + stash -p: (partially) fix bug concerning split hunks
464
+ + t3904: fix incorrect demonstration of a bug
465
409
-* ma/simplify-merge-config-parsing (2020-04-11) 1 commit
410
- (merged to 'next' on 2020-04-15 at d2915301e4)
411
- + merge: use skip_prefix to parse config key
466
+ Allowing the user to split a patch hunk while "git stash -p" does
467
+ not work well; a band-aid has been added to make this (partially)
468
+ work better.
469
413
- Code simplification.
470
415
- Will merge to 'master'.
471
+* js/subtree-doc-update-to-asciidoctor-2 (2020-04-08) 1 commit
472
+ (merged to 'next' on 2020-04-20 at db1ed7a858)
473
+ + subtree: fix build with AsciiDoctor 2
474
475
+ Doc markup update.
476
418
-* ds/blame-on-bloom (2020-04-16) 3 commits
419
- - blame: use changed-path Bloom filters
420
- - tests: write commit-graph with Bloom filters
421
- - revision: complicated pathspecs disable filters
422
- (this branch uses gs/commit-graph-path-filter.)
477
424
- "git blame" learns to take advantage of the "changed-paths" Bloom
425
- filter stored in the commit-graph file.
478
+* js/t0007-typofix (2020-04-05) 1 commit
479
+ (merged to 'next' on 2020-04-15 at ac9f86e08f)
480
+ + t0007: fix a typo
481
427
- Will merge to 'next'.
482
+ Typofix in a test script.
483
484
430
-* dd/iso-8601-updates (2020-04-15) 2 commits
431
- - date.c: allow compact version of ISO-8601 datetime
432
- - date.c: skip fractional second part of ISO-8601
485
+* js/test-junit-finalization-fix (2020-03-23) 1 commit
486
+ (merged to 'next' on 2020-04-15 at 0d6a975146)
487
+ + tests(junit-xml): avoid invalid XML
488
434
- The approxidate parser learns to parse seconds with fraction.
489
+ Test fix.
490
436
- Expecting further work.
437
- cf. <20200417133647.GA26701@danh.dev>
491
492
+* js/tests-gpg-integration-on-windows (2020-03-26) 5 commits
493
+ (merged to 'next' on 2020-04-15 at 48a13eb0b2)
494
+ + tests: increase the verbosity of the GPG-related prereqs
495
+ + tests: turn GPG, GPGSM and RFC1991 into lazy prereqs
496
+ + tests: do not let lazy prereqs inside `test_expect_*` turn off tracing
497
+ + t/lib-gpg.sh: stop pretending to be a stand-alone script
498
+ + tests(gpg): allow the gpg-agent to start on Windows
499
440
-* ds/log-exclude-decoration-config (2020-04-16) 2 commits
441
- - log: add log.excludeDecoration config option
442
- - log-tree: make ref_filter_match() a helper method
500
+ Enable tests that require GnuPG on Windows.
501
444
- The "--decorate-refs" and "--decorate-refs-exclude" options "git
445
- log" takes have learned a companion configuration variable
446
- log.excludeDecoration that sits at the lowest priority in the
447
- family.
502
449
- Will merge to 'next'.
503
+* js/trace2-env-vars (2020-03-23) 1 commit
504
+ (merged to 'next' on 2020-04-15 at 1aad0adfa0)
505
+ + trace2: teach Git to log environment variables
506
507
+ Trace2 enhancement to allow logging of the environment variables.
508
452
-* jk/credential-parsing-end-of-host-in-URL (2020-04-15) 1 commit
453
- (merged to 'next' on 2020-04-15 at 55bc3eb7cb)
454
- + credential: treat "?" and "#" in URLs as end of host
509
456
- Parsing of URL for the credential helper has been corrected.
510
+* js/walk-doc-optim (2020-03-30) 1 commit
511
+ (merged to 'next' on 2020-04-15 at ca36c04a23)
512
+ + MyFirstObjectWalk: remove unnecessary conditional statement
513
458
- Will merge to 'master'.
514
+ Code cleanup.
515
516
461
-* lr/freshen-file-fix (2020-04-15) 1 commit
462
- (merged to 'next' on 2020-04-20 at e9370b0a81)
463
- + freshen_file(): use NULL `times' for implicit current-time
517
+* jt/avoid-prefetch-when-able-in-diff (2020-04-07) 4 commits
518
+ (merged to 'next' on 2020-04-20 at 02b52c34bf)
519
+ + diff: restrict when prefetching occurs
520
+ + diff: refactor object read
521
+ + diff: make diff_populate_filespec_options struct
522
+ + promisor-remote: accept 0 as oid_nr in function
523
465
- The code that refreshes the last access and modified time of
466
- on-disk packfiles and loose object files have been updated.
524
+ "git diff" in a partial clone learned to avoid lazy loading blob
525
+ objects in more casese when they are not needed.
526
468
- Will merge to 'master'.
527
528
+* jt/connectivity-check-optim-in-partial-clone (2020-03-29) 1 commit
529
+ (merged to 'next' on 2020-04-15 at 1b3692b7fb)
530
+ + connected: always use partial clone optimization
531
471
-* tb/commit-graph-split-strategy (2020-04-15) 7 commits
472
- - commit-graph.c: introduce '--[no-]check-oids'
473
- - commit-graph.h: replace 'commit_hex' with 'commits'
474
- - oidset: introduce 'oidset_size'
475
- - builtin/commit-graph.c: introduce split strategy 'replace'
476
- - builtin/commit-graph.c: introduce split strategy 'no-merge'
477
- - builtin/commit-graph.c: support for '--split[=<strategy>]'
478
- - t/helper/test-read-graph.c: support commit-graph chains
532
+ Simplify the commit ancestry connectedness check in a partial clone
533
+ repository in which "promised" objects are assumed to be obtainable
534
+ lazily on-demand from promisor remote repositories.
535
480
- "git commit-graph write" learned different ways to write out split
481
- files.
536
537
+* jt/rebase-allow-duplicate (2020-04-11) 1 commit
538
+ (merged to 'next' on 2020-04-15 at 56a9d83adf)
539
+ + rebase --merge: optionally skip upstreamed commits
540
+ (this branch uses en/rebase-no-keep-empty.)
541
484
-* gs/commit-graph-path-filter (2020-04-09) 16 commits
485
- - bloom: ignore renames when computing changed paths
486
- - commit-graph: add GIT_TEST_COMMIT_GRAPH_CHANGED_PATHS test flag
487
- - t4216: add end to end tests for git log with Bloom filters
488
- - revision.c: add trace2 stats around Bloom filter usage
489
- - revision.c: use Bloom filters to speed up path based revision walks
490
- - commit-graph: add --changed-paths option to write subcommand
491
- - commit-graph: reuse existing Bloom filters during write
492
- - commit-graph: write Bloom filters to commit graph file
493
- - commit-graph: examine commits by generation number
494
- - commit-graph: examine changed-path objects in pack order
495
- - commit-graph: compute Bloom filters for changed paths
496
- - diff: halt tree-diff early after max_changes
497
- - bloom.c: core Bloom filter implementation for changed paths.
498
- - bloom.c: introduce core Bloom filter constructs
499
- - bloom.c: add the murmur3 hash implementation
500
- - commit-graph: define and use MAX_NUM_CHUNKS
501
- (this branch is used by ds/blame-on-bloom.)
542
+ Allow "git rebase" to reapply all local commits, even if the may be
543
+ already in the upstream, without checking first.
544
503
- Introduce an extension to the commit-graph to make it efficient to
504
- check for the paths that were modified at each commit using Bloom
505
- filters.
545
507
- Will merge to 'next'.
546
+* jx/atomic-push (2020-04-17) 5 commits
547
+ (merged to 'next' on 2020-04-20 at 266d6934d8)
548
+ + transport-helper: new method reject_atomic_push()
549
+ + transport-helper: mark failure for atomic push
550
+ + send-pack: mark failure of atomic push properly
551
+ + t5543: never report what we do not push
552
+ + send-pack: fix inconsistent porcelain output
553
554
+ "git push --atomic" used to show failures for refs that weren't
555
+ even pushed, which has been corrected.
556
510
-* ag/rebase-merge-allow-ff-under-abbrev-command (2020-03-30) 2 commits
511
- (merged to 'next' on 2020-04-15 at b4679f7c7c)
512
- + t3432: test `--merge' with `rebase.abbreviateCommands = true', too
513
- + sequencer: don't abbreviate a command if it doesn't have a short form
557
515
- "git rebase" with the merge backend did not work well when the
516
- rebase.abbreviateCommands configuration was set.
558
+* lr/freshen-file-fix (2020-04-15) 1 commit
559
+ (merged to 'next' on 2020-04-20 at e9370b0a81)
560
+ + freshen_file(): use NULL `times' for implicit current-time
561
518
- Will merge to 'master'.
562
+ The code that refreshes the last access and modified time of
563
+ on-disk packfiles and loose object files have been updated.
564
565
521
-* jk/oid-array-cleanups (2020-03-30) 7 commits
522
- (merged to 'next' on 2020-04-15 at d6155cd023)
523
- + oidset: stop referring to sha1-array
524
- + ref-filter: stop referring to "sha1 array"
525
- + bisect: stop referring to sha1_array
526
- + test-tool: rename sha1-array to oid-array
527
- + oid_array: rename source file from sha1-array
528
- + oid_array: use size_t for iteration
529
- + oid_array: use size_t for count and allocation
566
+* lx/submodule-clear-variables (2020-04-02) 1 commit
567
+ (merged to 'next' on 2020-04-20 at c18cd924c9)
568
+ + git-submodule.sh: setup uninitialized variables
569
531
- Code cleanup.
570
+ The "git submodule" command did not initialize a few variables it
571
+ internally uses and was affected by variable settings leaked from
572
+ the environment.
573
533
- Will merge to 'master'.
574
575
+* ma/config-doc-fix (2020-04-09) 1 commit
576
+ (merged to 'next' on 2020-04-15 at 256175ec38)
577
+ + config.txt: move closing "----" to cover entire listing
578
536
-* jx/proc-receive-hook (2020-04-15) 8 commits
537
- - SQUASH???
538
- - doc: add documentation for the proc-receive hook
539
- - receive-pack: new config receive.procReceiveRefs
540
- - refs.c: refactor to reuse ref_is_hidden()
541
- - send-pack: extension for client-side status report
542
- - receive-pack: add new proc-receive hook
543
- - connect: export parse_feature_value()
544
- - transport: not report a non-head push as a branch
579
+ Doc update.
580
546
- "git receive-pack" that accepts requests by "git push" learned to
547
- outsource most of the ref updates to the new "proc-receive" hook.
581
582
+* ma/doc-discard-docbook-xsl-1.73 (2020-03-31) 7 commits
583
+ (merged to 'next' on 2020-04-20 at c280472e02)
584
+ + user-manual.conf: don't specify [listingblock]
585
+ + INSTALL: drop support for docbook-xsl before 1.74
586
+ + manpage-normal.xsl: fold in manpage-base.xsl
587
+ + manpage-bold-literal.xsl: stop using git.docbook.backslash
588
+ + Doc: drop support for docbook-xsl before 1.73.0
589
+ + Doc: drop support for docbook-xsl before 1.72.0
590
+ + Doc: drop support for docbook-xsl before 1.71.1
591
550
-* dr/midx-avoid-int-underflow (2020-03-28) 1 commit
551
- (merged to 'next' on 2020-04-15 at eb2343a5eb)
552
- + midx.c: fix an integer underflow
592
+ Raise the minimum required version of docbook-xsl package to 1.74,
593
+ as 1.74.0 was from late 2008, which is more than 10 years old, and
594
+ drop compatibility cruft from our documentation suite.
595
554
- When fed a midx that records no objects, some codepaths tried to
555
- loop from 0 through (num_objects-1), which, due to integer
556
- arithmetic wrapping around, made it nonsense operation with out of
557
- bounds array accesses. The code has been corrected to reject such
558
- an midx file.
596
560
- Will merge to 'master'.
597
+* ma/simplify-merge-config-parsing (2020-04-11) 1 commit
598
+ (merged to 'next' on 2020-04-15 at d2915301e4)
599
+ + merge: use skip_prefix to parse config key
600
601
+ Code simplification.
602
563
-* ak/run-command-on-cygwin-fix (2020-03-27) 1 commit
564
- (merged to 'next' on 2020-04-15 at 9e98b82a7f)
565
- + run-command: trigger PATH lookup properly on Cygwin
603
567
- Utitiles run via the run_command() API were not spawned correctly
568
- on Cygwin, when the paths to them are given as a full path with
569
- backslashes.
604
+* ms/doc-revision-illustration-fix (2020-04-21) 1 commit
605
+ (merged to 'next' on 2020-04-22 at 245c0b78d5)
606
+ + docs: fix minor glitch in illustration
607
571
- Will merge to 'master'.
608
+ Docfix.
609
610
574
-* dd/ci-musl-libc (2020-04-06) 6 commits
575
- + travis: build and test on Linux with musl libc and busybox
576
- + ci/linux32: libify install-dependencies step
577
- + ci: refactor docker runner script
578
- + ci/linux32: parameterise command to switch arch
579
- + ci/lib-docker: preserve required environment variables
580
- + ci: make MAKEFLAGS available inside the Docker container in the Linux32 job
581
- (this branch is used by dd/ci-swap-azure-pipelines-with-github-actions.)
611
+* mt/grep-cquote-path (2020-04-20) 1 commit
612
+ (merged to 'next' on 2020-04-22 at 55cf00e322)
613
+ + grep: follow conventions for printing paths w/ unusual chars
614
583
- A new CI job to build and run test suite on linux with musl libc
584
- has been added.
615
+ "git grep" did not quote a path with unusual character like other
616
+ commands (like "git diff", "git status") do, but did quote when run
617
+ from a subdirectory, both of which has been corrected.
618
586
- Will merge to 'master'.
619
620
+* mt/test-lib-bundled-short-options (2020-03-25) 1 commit
621
+ (merged to 'next' on 2020-04-15 at 7fa0c56d91)
622
+ + test-lib: allow short options to be bundled
623
589
-* dr/doc-recurse-submodules (2020-04-06) 5 commits
590
- (merged to 'next' on 2020-04-20 at 601e10f9a1)
591
- + doc: --recurse-submodules mostly applies to active submodules
592
- + doc: be more precise on (fetch|push).recurseSubmodules
593
- + doc: explain how to deactivate submodule.recurse completely
594
- + doc: document --recurse-submodules for reset and restore
595
- + doc: list all commands affected by submodule.recurse
624
+ Minor test usability improvement.
625
597
- Documentation updates around the "--recurse-submodules" option.
626
599
- Will merge to 'master'.
627
+* pb/pull-fetch-doc (2020-04-05) 2 commits
628
+ (merged to 'next' on 2020-04-15 at cf530f230f)
629
+ + pull doc: correct outdated description of an example
630
+ + pull doc: refer to a specific section in 'fetch' doc
631
632
+ The more aggressive updates to remote-tracking branches we had for
633
+ the past 7 years or so were not reflected in the documentation,
634
+ which has been corrected.
635
602
-* dr/push-remoteref-fix (2020-04-06) 2 commits
603
- (merged to 'next' on 2020-04-15 at ecf60dc488)
604
- + remote.c: fix handling of %(push:remoteref)
605
- + remote.c: fix %(push) for triangular workflows
636
607
- The "%(push:remoteref)" placeholder in the "--format=" argument of
608
- "git format-patch" (and friends) only showed what got explicitly
609
- configured, not what ref at the receiving end would be updated when
610
- "git push" was used, as it ignored the default behaviour (e.g. update
611
- the same ref as the source).
637
+* pb/rebase-doc-typofix (2020-03-28) 1 commit
638
+ (merged to 'next' on 2020-04-15 at 8cd8422990)
639
+ + git-rebase.txt: fix typo
640
613
- Will merge to 'master'.
641
+ Typofix.
642
643
616
-* jc/doc-test-leaving-early (2020-03-29) 1 commit
617
- (merged to 'next' on 2020-04-20 at 4bd94585d1)
618
- + t/README: suggest how to leave test early with failure
644
+* rs/pull-options-sync-code-and-doc (2020-03-28) 2 commits
645
+ (merged to 'next' on 2020-04-15 at d743f43034)
646
+ + pull: pass documented fetch options on
647
+ + pull: remove --update-head-ok from documentation
648
620
- Document the recommended way to abort a failing test early (e.g. by
621
- exiting a loop), which is to say "return 1".
649
+ "git pull" shares many options with underlying "git fetch", but
650
+ some of them were not documented and some of those that would make
651
+ sense to pass down were not passed down.
652
623
- Will merge to 'master'.
653
654
+* tb/diff-tree-with-notes (2020-04-20) 1 commit
655
+ (merged to 'next' on 2020-04-22 at c06610c916)
656
+ + diff-tree.c: load notes machinery when required
657
626
-* jk/build-with-right-curl (2020-04-05) 3 commits
627
- - Makefile: avoid running curl-config unnecessarily
628
- - Makefile: use curl-config --cflags
629
- - Makefile: avoid running curl-config multiple times
658
+ "git diff-tree --pretty --notes" used to hit an assertion failure,
659
+ as it forgot to initialize the notes subsystem.
660
631
- The build procedure did not use the libcurl library and its include
632
- files correctly for a custom-built installation.
661
634
- On hold.
635
- cf. <20200404145829.GB679473@coredump.intra.peff.net>
662
+* tm/zsh-complete-switch-restore (2020-04-17) 1 commit
663
+ (merged to 'next' on 2020-04-22 at 8c65d7f051)
664
+ + complete: zsh: add missing sub cmd completion candidates
665
666
+ zsh command line completion (in contrib/) update.
667
638
-* jk/harden-protocol-v2-delim-handling (2020-03-29) 3 commits
639
- (merged to 'next' on 2020-04-15 at c983535405)
640
- + test-lib-functions: simplify packetize() stdin code
641
- + upload-pack: handle unexpected delim packets
642
- + test-lib-functions: make packetize() more efficient
668
644
- The server-end of the v2 protocol to serve "git clone" and "git
645
- fetch" was not prepared to see a delim packets at unexpected
646
- places, which led to a crash.
669
+* vd/range-diff-with-custom-pretty-format-fix (2020-04-15) 2 commits
670
+ (merged to 'next' on 2020-04-22 at da607b5dda)
671
+ + range-diff: avoid negative string precision
672
+ + range-diff: fix a crash in parsing git-log output
673
648
- Will merge to 'master'.
674
+ "git range-diff" fixes.
675
+ cf. <20200416010734.GE36156@syl.local>
676
677
+--------------------------------------------------
678
+[New Topics]
679
651
-* jk/p5310-drop-non-bitmap-timing (2020-03-27) 1 commit
652
- (merged to 'next' on 2020-04-15 at 7aac76cab2)
653
- + p5310: stop timing non-bitmap pack-to-disk
680
+* bc/wildcard-credential (2020-04-27) 1 commit
681
+ (merged to 'next' on 2020-04-28 at 1a0d6b91dc)
682
+ + credential: fix matching URLs with multiple levels in path
683
655
- Perf-test update.
684
+ Update the parser used for credential.<URL>.<variable>
685
+ configuration, to handle <URL>s with '/' in them correctly.
686
687
Will merge to 'master'.
688
689
660
-* jk/test-cleanup (2020-03-27) 2 commits
661
- (merged to 'next' on 2020-04-15 at bce8b2d5ed)
662
- + t/lib-*.sh: drop executable bit
663
- + t/lib-credential.sh: drop shebang line
690
+* dd/mailinfo-with-nul (2020-04-22) 3 commits
691
+ (merged to 'next' on 2020-04-28 at b1d3e40d49)
692
+ + mailinfo: disallow NUL character in mail's header
693
+ + mailinfo.c: avoid strlen on strings that can contains NUL
694
+ + t4254: merge 2 steps of a single test
695
665
- Test cleanup.
696
+ Tighten "git mailinfo" to notice and error out when decoded result
697
+ contains NUL in it.
698
699
Will merge to 'master'.
700
701
670
-* ps/transactional-update-ref-stdin (2020-04-02) 9 commits
671
- - update-ref: implement interactive transaction handling
672
- - update-ref: read commands in a line-wise fashion
673
- - update-ref: move transaction handling into `update_refs_stdin()`
674
- - update-ref: pass end pointer instead of strbuf
675
- - update-ref: drop unused argument for `parse_refname`
676
- - update-ref: organize commands in an array
677
- - strbuf: provide function to append whole lines
678
- - git-update-ref.txt: add missing word
679
- - refs: fix segfault when aborting empty transaction
680
-
681
- "git update-ref --stdin" learned a handful of new verbs to let the
682
- user control ref update transactions more explicitly, which helps
683
- as an ingredient to implement two-phase commit-style atomic
684
- ref-updates across multiple repositories.
702
+* ah/userdiff-markdown (2020-04-23) 1 commit
703
+ - userdiff: support Markdown
704
686
- Will merge to 'next'.
705
+ Expecting a reroll.
706
+ cf. <C28ZA0MZKHK6.2CCZPZF15D32W@what>
707
708
689
-* ag/sequencer-i18n-messages (2020-03-28) 1 commit
690
- (merged to 'next' on 2020-04-15 at d6b38d12cf)
691
- + sequencer: mark messages for translation
709
+* dd/sparse-fixes (2020-04-27) 4 commits
710
+ (merged to 'next' on 2020-04-28 at d809f916ee)
711
+ + progress.c: silence cgcc suggestion about internal linkage
712
+ + graph.c: limit linkage of internal variable
713
+ + compat/regex: move stdlib.h up in inclusion chain
714
+ + test-parse-pathspec-file.c: s/0/NULL/ for pointer type
715
693
- Message fix.
716
+ Compilation fix.
717
718
Will merge to 'master'.
719
720
698
-* dl/wrapper-fix-indentation (2020-03-28) 1 commit
699
- (merged to 'next' on 2020-04-15 at e6b9c16b1b)
700
- + wrapper: indent with tabs
721
+* mr/bisect-in-c-2 (2020-04-23) 12 commits
722
+ - bisect--helper: retire `--bisect-autostart` subcommand
723
+ - bisect--helper: retire `--write-terms` subcommand
724
+ - bisect--helper: retire `--check-expected-revs` subcommand
725
+ - bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C
726
+ - bisect--helper: retire `--next-all` subcommand
727
+ - bisect--helper: retire `--bisect-clean-state` subcommand
728
+ - bisect--helper: finish porting `bisect_start()` to C
729
+ - bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C
730
+ - bisect--helper: reimplement `bisect_autostart` shell function in C
731
+ - bisect--helper: introduce new `write_in_file()` function
732
+ - bisect--helper: use '-res' in 'cmd_bisect__helper' return
733
+ - bisect--helper: fix `cmd_*()` function switch default return
734
702
- Coding style fix.
735
+ Rewrite of the remainder of "git bisect" script in C continues.
736
704
- Will merge to 'master'.
737
+ Any volunteer to review this?
738
739
707
-* en/pull-do-not-rebase-after-fast-forwarding (2020-03-27) 1 commit
708
- (merged to 'next' on 2020-04-15 at 3aa725ff45)
709
- + pull: avoid running both merge and rebase
740
+* tb/reset-shallow (2020-04-24) 2 commits
741
+ (merged to 'next' on 2020-04-28 at 9510639ae8)
742
+ + shallow.c: use '{commit,rollback}_shallow_file'
743
+ + t5537: use test_write_lines and indented heredocs for readability
744
711
- "git pull --rebase" tried to run a rebase even after noticing that
712
- the pull results in a fast-forward and no rebase is needed nor
713
- sensible, for the past few years due to a mistake nobody noticed.
745
+ Fix in-core inconsistency after fetching into a shallow repository
746
+ that broke the code to write out commit-graph.
747
748
Will merge to 'master'.
749
750
718
-* jc/allow-strlen-substitution-in-shell-scripts (2020-03-29) 1 commit
719
- (merged to 'next' on 2020-04-15 at 262424efdc)
720
- + CodingGuidelines: allow ${#posix} == strlen($posix)
751
+* ds/build-homebrew-gettext-fix (2020-04-27) 1 commit
752
+ (merged to 'next' on 2020-04-28 at 70c6eca470)
753
+ + macOS/brew: let the build find gettext headers/libraries/msgfmt
754
722
- Coding guideline update.
755
+ Recent update to Homebrew used by macOS folks breaks build by
756
+ moving gettext library and necessary headers.
757
758
Will merge to 'master'.
759
760
727
-* jm/gitweb-fastcgi-utf8 (2020-03-29) 1 commit
728
- (merged to 'next' on 2020-04-15 at adb7f2373a)
729
- + gitweb: fix UTF-8 encoding when using CGI::Fast
761
+* tb/commit-graph-fd-exhaustion-fix (2020-04-24) 4 commits
762
+ (merged to 'next' on 2020-04-28 at 6d5fd6bc49)
763
+ + commit-graph: close descriptors after mmap
764
+ + commit-graph.c: gracefully handle file descriptor exhaustion
765
+ + t/test-lib.sh: make ULIMIT_FILE_DESCRIPTORS available to tests
766
+ + commit-graph.c: don't use discarded graph_name in error
767
+ (this branch uses tb/commit-graph-split-strategy.)
768
731
- Gitweb update.
769
+ The commit-graph code exhausted file descriptors easily when it
770
+ does not have to.
771
772
Will merge to 'master'.
773
774
736
-* js/walk-doc-optim (2020-03-30) 1 commit
737
- (merged to 'next' on 2020-04-15 at ca36c04a23)
738
- + MyFirstObjectWalk: remove unnecessary conditional statement
775
+* ds/multi-pack-index (2020-04-24) 1 commit
776
+ (merged to 'next' on 2020-04-28 at b8f9691cbc)
777
+ + multi-pack-index: close file descriptor after mmap
778
740
- Code cleanup.
779
+ The multi-pack-index left mmapped file descriptors open when it
780
+ does not have to.
781
782
Will merge to 'master'.
783
784
745
-* jx/atomic-push (2020-04-17) 5 commits
746
- (merged to 'next' on 2020-04-20 at 266d6934d8)
747
- + transport-helper: new method reject_atomic_push()
748
- + transport-helper: mark failure for atomic push
749
- + send-pack: mark failure of atomic push properly
750
- + t5543: never report what we do not push
751
- + send-pack: fix inconsistent porcelain output
785
+* js/anonymise-push-url-in-errors (2020-04-28) 1 commit
786
+ (merged to 'next' on 2020-04-28 at 49539cf116)
787
+ + push: anonymize URLs in error messages and warnings
788
753
- "git push --atomic" used to show failures for refs that weren't
754
- even pushed, which has been corrected.
789
+ Error and verbose trace messages from "git push" did not redact
790
+ credential material embedded in URLs.
791
792
Will merge to 'master'.
793
794
759
-* ma/doc-discard-docbook-xsl-1.73 (2020-03-31) 7 commits
760
- (merged to 'next' on 2020-04-20 at c280472e02)
761
- + user-manual.conf: don't specify [listingblock]
762
- + INSTALL: drop support for docbook-xsl before 1.74
763
- + manpage-normal.xsl: fold in manpage-base.xsl
764
- + manpage-bold-literal.xsl: stop using git.docbook.backslash
765
- + Doc: drop support for docbook-xsl before 1.73.0
766
- + Doc: drop support for docbook-xsl before 1.72.0
767
- + Doc: drop support for docbook-xsl before 1.71.1
795
+* js/partial-urlmatch (2020-04-24) 3 commits
796
+ - Sync with js/partial-urlmatch-2.17
797
+ - credential: handle `credential.<partial-URL>.<key>` again
798
+ - credential: optionally allow partial URLs in credential_from_url_gently()
799
+ (this branch uses js/partial-urlmatch-2.17.)
800
769
- Raise the minimum required version of docbook-xsl package to 1.74,
770
- as 1.74.0 was from late 2008, which is more than 10 years old, and
771
- drop compatibility cruft from our documentation suite.
801
773
- Will merge to 'master'.
802
+* js/partial-urlmatch-2.17 (2020-04-24) 4 commits
803
+ - SQUASH??? lose excess blank line to match the other side of the eventual merge
804
+ - credential: handle `credential.<partial-URL>.<key>` again
805
+ - credential: optionally allow partial URLs in credential_from_url_gently()
806
+ - credential: fix grammar
807
+ (this branch is used by js/partial-urlmatch.)
808
809
776
-* pb/rebase-doc-typofix (2020-03-28) 1 commit
777
- (merged to 'next' on 2020-04-15 at 8cd8422990)
778
- + git-rebase.txt: fix typo
810
+* eb/gitweb-more-trailers (2020-04-24) 1 commit
811
+ (merged to 'next' on 2020-04-28 at 7b16ac0810)
812
+ + gitweb: Recognize *-to and Closes/Fixes trailers
813
780
- Typofix.
814
+ Gitweb updates.
815
816
Will merge to 'master'.
817
818
785
-* rs/pull-options-sync-code-and-doc (2020-03-28) 2 commits
786
- (merged to 'next' on 2020-04-15 at d743f43034)
787
- + pull: pass documented fetch options on
788
- + pull: remove --update-head-ok from documentation
819
+* en/rebase-root-and-fork-point-are-incompatible (2020-04-27) 1 commit
820
+ (merged to 'next' on 2020-04-28 at 8ea4882905)
821
+ + rebase: display an error if --root and --fork-point are both provided
822
790
- "git pull" shares many options with underlying "git fetch", but
791
- some of them were not documented and some of those that would make
792
- sense to pass down were not passed down.
823
+ Incompatible options "--root" and "--fork-point" of "git rebase"
824
+ have been marked and documented as being incompatible.
825
826
Will merge to 'master'.
827
828
797
-* en/fill-directory-exponential (2020-04-01) 12 commits
798
- - completion: fix 'git add' on paths under an untracked directory
799
- - Fix error-prone fill_directory() API; make it only return matches
800
- - dir: replace double pathspec matching with single in treat_directory()
801
- - dir: include DIR_KEEP_UNTRACKED_CONTENTS handling in treat_directory()
802
- - dir: replace exponential algorithm with a linear one
803
- - dir: refactor treat_directory to clarify control flow
804
- - dir: fix confusion based on variable tense
805
- - dir: fix broken comment
806
- - dir: consolidate treat_path() and treat_one_path()
807
- - dir: fix simple typo in comment
808
- - t3000: add more testcases testing a variety of ls-files issues
809
- - t7063: more thorough status checking
829
+* jc/credential-store-file-format-doc (2020-04-27) 1 commit
830
+ - credential-store: document the file format a bit more
831
811
- The directory traversal code had redundant recursive calls which
812
- made its performance characteristics exponential with respect to
813
- the depth of the tree, which was corrected.
832
815
- Will merge to 'next'.
833
+* jk/complete-git-switch (2020-04-28) 11 commits
834
+ - completion: complete remote branches for git switch --track
835
+ - completion: recognize -c/-C when completing for git switch
836
+ - completion: fix completion for git switch with no options
837
+ - completion: perform DWIM logic directly in __git_complete_refs
838
+ - completion: extract function __git_dwim_remote_heads
839
+ - completion: rename --track option of __git_complete_refs
840
+ - completion: stop completing refs for git switch --orphan
841
+ - completion: add tests showing lack of support for git switch -c/-C
842
+ - completion: add test highlighting subpar git switch --track completion
843
+ - completion: add test showing subpar git switch completion
844
+ - completion: add some simple test cases for git switch completion
845
846
+ The command line completion (in contrib/) learned to complete
847
+ options that the "git switch" command takes.
848
818
-* dd/test-with-busybox (2020-03-26) 8 commits
819
- (merged to 'next' on 2020-04-15 at 8177191066)
820
- + t5703: feed raw data into test-tool unpack-sideband
821
- + t4124: tweak test so that non-compliant diff(1) can also be used
822
- + t7063: drop non-POSIX argument "-ls" from find(1)
823
- + t5616: use rev-parse instead to get HEAD's object_id
824
- + t5003: skip conversion test if unzip -a is unavailable
825
- + t5003: drop the subshell in test_lazy_prereq
826
- + test-lib-functions: test_cmp: eval $GIT_TEST_CMP
827
- + t4061: use POSIX compliant regex(7)
828
- (this branch is used by dd/ci-swap-azure-pipelines-with-github-actions.)
849
830
- Various tests have been updated to work around issues found with
831
- shell utilities that come with busybox etc.
850
+* jt/v2-fetch-nego-fix (2020-04-28) 3 commits
851
+ (merged to 'next' on 2020-04-28 at c6f9ebf2f7)
852
+ + fetch-pack: in protocol v2, reset in_vain upon ACK
853
+ + fetch-pack: in protocol v2, in_vain only after ACK
854
+ + fetch-pack: return enum from process_acks()
855
+
856
+ The upload-pack protocol v2 gave up too early before finding a
857
+ common ancestor, resulting in a wasteful fetch from a fork of a
858
+ project. This has been corrected to match the behaviour of v0
859
+ protocol.
860
861
Will merge to 'master'.
862
863
836
-* dl/libify-a-few (2020-03-24) 2 commits
837
- (merged to 'next' on 2020-04-20 at 84eb704a32)
838
- + Lib-ify prune-packed
839
- + Lib-ify fmt-merge-msg
864
+* mt/doc-worktree-ref (2020-04-24) 1 commit
865
+ (merged to 'next' on 2020-04-28 at d96c05cb0a)
866
+ + config doc: fix reference to config.worktree info
867
841
- Code in builtin/*, i.e. those can only be called from within
842
- built-in subcommands, that implements bulk of a couple of
843
- subcommands have been moved to libgit.a so that they could be used
844
- by others.
868
+ Docfix.
869
870
Will merge to 'master'.
871
872
849
-* dl/test-must-fail-fixes-3 (2020-03-27) 8 commits
850
- (merged to 'next' on 2020-04-15 at dd0130c158)
851
- + t5801: teach compare_refs() to accept !
852
- + t5612: stop losing return codes of git commands
853
- + t5612: don't use `test_must_fail test_cmp`
854
- + t5607: reorder `nongit test_must_fail`
855
- + t5550: simplify no matching line check
856
- + t5512: stop losing return codes of git commands
857
- + t5512: stop losing git exit code in here-docs
858
- + t5512: don't use `test_must_fail test_cmp`
873
+* tb/commit-graph-perm-bits (2020-04-27) 6 commits
874
+ - commit-graph.c: make 'commit-graph-chain's read-only
875
+ - commit-graph.c: ensure graph layers respect core.sharedRepository
876
+ - SQUASH??? force known umask if you are going to check the resulting mode bits
877
+ - commit-graph.c: write non-split graphs as read-only
878
+ - lockfile.c: introduce 'hold_lock_file_for_update_mode'
879
+ - tempfile.c: introduce 'create_tempfile_mode'
880
860
- Test clean-up continues.
881
+ Some of the files commit-graph subsystem keeps on disk did not
882
+ correctly honor the core.sharedRepository settings and some were
883
+ left read-write.
884
862
- Will merge to 'master'.
885
+ Expecting a reroll.
886
887
865
-* en/sparse-checkout (2020-03-27) 18 commits
866
- (merged to 'next' on 2020-04-15 at 3e295e445d)
867
- + sparse-checkout: provide a new reapply subcommand
868
- + unpack-trees: failure to set SKIP_WORKTREE bits always just a warning
869
- + unpack-trees: provide warnings on sparse updates for unmerged paths too
870
- + unpack-trees: make sparse path messages sound like warnings
871
- + unpack-trees: split display_error_msgs() into two
872
- + unpack-trees: rename ERROR_* fields meant for warnings to WARNING_*
873
- + unpack-trees: move ERROR_WOULD_LOSE_SUBMODULE earlier
874
- + sparse-checkout: use improved unpack_trees porcelain messages
875
- + sparse-checkout: use new update_sparsity() function
876
- + unpack-trees: add a new update_sparsity() function
877
- + unpack-trees: pull sparse-checkout pattern reading into a new function
878
- + unpack-trees: do not mark a dirty path with SKIP_WORKTREE
879
- + unpack-trees: allow check_updates() to work on a different index
880
- + t1091: make some tests a little more defensive against failures
881
- + unpack-trees: simplify pattern_list freeing
882
- + unpack-trees: simplify verify_absent_sparse()
883
- + unpack-trees: remove unused error type
884
- + unpack-trees: fix minor typo in comment
888
+* dl/merge-autostash-rebase-quit-fix (2020-04-28) 1 commit
889
+ (merged to 'next' on 2020-04-28 at 24dcf3edc1)
890
+ + rebase: save autostash entry into stash reflog on --quit
891
+ (this branch uses dl/merge-autostash.)
892
886
- "sparse-checkout" UI improvements.
893
+ The stash entry created by "git rebase --autosquash" to keep the
894
+ initial dirty state were discarded by mistake upon "git rebase
895
+ --quit", which has been corrected.
896
897
Will merge to 'master'.
898
899
891
-* js/import-tars-do-not-make-phony-files-from-pax-headers (2020-03-24) 1 commit
892
- (merged to 'next' on 2020-04-15 at 408afae2c9)
893
- + import-tars: ignore the global PAX header
900
+* dl/opt-callback-cleanup (2020-04-28) 1 commit
901
+ (merged to 'next' on 2020-04-28 at aa773e183a)
902
+ + Use OPT_CALLBACK and OPT_CALLBACK_F
903
895
- The import-tars importer (in contrib/fast-import/) used to create
896
- phony files at the top-level of the repository when the archive
897
- contains global PAX headers, which made its own logic to detect and
898
- omit the common leading directory ineffective, which has been
899
- corrected.
904
+ Code cleanup.
905
906
Will merge to 'master'.
907
908
904
-* js/test-junit-finalization-fix (2020-03-23) 1 commit
905
- (merged to 'next' on 2020-04-15 at 0d6a975146)
906
- + tests(junit-xml): avoid invalid XML
909
+* dl/push-recurse-submodules-fix (2020-04-28) 1 commit
910
+ (merged to 'next' on 2020-04-28 at c2cd20ef9e)
911
+ + push: unset PARSE_OPT_OPTARG for --recurse-submodules
912
908
- Test fix.
913
+ Code cleanup.
914
915
Will merge to 'master'.
916
917
913
-* js/tests-gpg-integration-on-windows (2020-03-26) 5 commits
914
- (merged to 'next' on 2020-04-15 at 48a13eb0b2)
915
- + tests: increase the verbosity of the GPG-related prereqs
916
- + tests: turn GPG, GPGSM and RFC1991 into lazy prereqs
917
- + tests: do not let lazy prereqs inside `test_expect_*` turn off tracing
918
- + t/lib-gpg.sh: stop pretending to be a stand-alone script
919
- + tests(gpg): allow the gpg-agent to start on Windows
918
+* jk/test-fail-prereqs-fix (2020-04-28) 1 commit
919
+ (merged to 'next' on 2020-04-28 at 75787711c0)
920
+ + t0000: disable GIT_TEST_FAIL_PREREQS in sub-tests
921
921
- Enable tests that require GnuPG on Windows.
922
+ Test update.
923
924
Will merge to 'master'.
925
926
+--------------------------------------------------
927
+[Stalled]
928
926
-* dl/merge-autostash (2020-04-10) 22 commits
927
- - pull: pass --autostash to merge
928
- - t5520: make test_pull_autostash() accept expect_parent_num
929
- - merge: teach --autostash option
930
- - sequencer: implement apply_autostash_oid()
931
- - sequencer: implement save_autostash()
932
- - sequencer: unlink autostash in apply_autostash()
933
- - sequencer: extract perform_autostash() from rebase
934
- - rebase: generify create_autostash()
935
- - rebase: extract create_autostash()
936
- - reset: extract reset_head() from rebase
937
- - rebase: generify reset_head()
938
- - rebase: use apply_autostash() from sequencer.c
939
- - sequencer: rename stash_sha1 to stash_oid
940
- - sequencer: make apply_autostash() accept a path
941
- - rebase: use read_oneliner()
942
- - sequencer: make read_oneliner() extern
943
- - sequencer: configurably warn on non-existent files
944
- - sequencer: make read_oneliner() accept flags
945
- - sequencer: make file exists check more efficient
946
- - sequencer: stop leaking buf
947
- - t7600: use test_write_lines()
948
- - Makefile: ASCII-sort += lists
929
+* mk/use-size-t-in-zlib (2018-10-15) 1 commit
930
+ - zlib.c: use size_t for size
931
950
- "git merge" learns the "--autostash" option.
932
+ The wrapper to call into zlib followed our long tradition to use
933
+ "unsigned long" for sizes of regions in memory, which have been
934
+ updated to use "size_t".
935
952
- Will merge to 'next'.
936
+--------------------------------------------------
937
+[Cooking]
938
939
+* dr/push-remoteref-fix (2020-04-23) 1 commit
940
+ - remote.c: fix handling of %(push:remoteref)
941
955
-* js/trace2-env-vars (2020-03-23) 1 commit
956
- (merged to 'next' on 2020-04-15 at 1aad0adfa0)
957
- + trace2: teach Git to log environment variables
942
+ The "%(push:remoteref)" placeholder in the "--format=" argument of
943
+ "git format-patch" (and friends) only showed what got explicitly
944
+ configured, not what ref at the receiving end would be updated when
945
+ "git push" was used, as it ignored the default behaviour (e.g. update
946
+ the same ref as the source).
947
+
948
+ Expecting a reroll.
949
+ cf. <20200416152145.wp2zeibxmuyas6y6@feanor>
950
959
- Trace2 enhancement to allow logging of the environment variables.
951
+
952
+* dl/test-must-fail-fixes-4 (2020-04-20) 7 commits
953
+ (merged to 'next' on 2020-04-28 at 6f4804aa09)
954
+ + t9819: don't use test_must_fail with p4
955
+ + t9164: use test_must_fail only on git commands
956
+ + t9160: use test_path_is_missing()
957
+ + t9141: use test_path_is_missing()
958
+ + t7508: don't use `test_must_fail test_cmp`
959
+ + t7408: replace incorrect uses of test_must_fail
960
+ + t6030: use test_path_is_missing()
961
+
962
+ Test clean-up.
963
964
Will merge to 'master'.
965
966
964
-* ar/test-style-fixes (2020-03-22) 2 commits
965
- (merged to 'next' on 2020-04-15 at 50ed75bccf)
966
- + t: fix whitespace around &&
967
- + t9500: remove spaces after redirect operators
967
+* dd/ci-swap-azure-pipelines-with-github-actions (2020-04-10) 14 commits
968
+ (merged to 'next' on 2020-04-20 at 40d0486c23)
969
+ + ci: let GitHub Actions upload failed tests' directories
970
+ + ci: add a problem matcher for GitHub Actions
971
+ + tests: when run in Bash, annotate test failures with file name/line number
972
+ + ci: retire the Azure Pipelines definition
973
+ + README: add a build badge for the GitHub Actions runs
974
+ + ci: configure GitHub Actions for CI/PR
975
+ + ci: run gem with sudo to install asciidoctor
976
+ + ci: explicit install all required packages
977
+ + ci: fix the `jobname` of the `GETTEXT_POISON` job
978
+ + ci/lib: set TERM environment variable if not exist
979
+ + ci/lib: allow running in GitHub Actions
980
+ + ci/lib: if CI type is unknown, show the environment variables
981
+ + Merge branch 'dd/ci-musl-libc' into HEAD
982
+ + Merge branch 'dd/test-with-busybox' into HEAD
983
+ (this branch uses dd/ci-musl-libc.)
984
969
- Style fixes.
985
+ Update the CI configuration to use GitHub Actions, retiring the one
986
+ based on Azure Pipelines.
987
971
- Will merge to 'master'.
988
+ Will merge to 'master', together with dd/ci-musl-libc.
989
990
974
-* ds/doc-clone-filter (2020-03-22) 1 commit
975
- (merged to 'next' on 2020-04-15 at 16276689b3)
976
- + clone: document --filter options
991
+* pw/rebase-i-more-options (2020-04-07) 7 commits
992
+ - SQUASH??? - avoid test numbering crashes
993
+ - t3433: improve coverage
994
+ - Revert "sequencer: allow callers of read_author_script() to ignore fields"
995
+ - rebase -i: fix --committer-date-is-author-date
996
+ - t3433: only compare commit dates
997
+ - t3433: remove loops from tests
998
+ - Revert "Revert "Merge branch 'ra/rebase-i-more-options'""
999
978
- Doc update.
1000
+ "git rebase -i" learns a bit more options.
1001
980
- Will merge to 'master'.
1002
+ Expecting a reroll.
1003
+ cf. <43d06bc0-b2ee-0ae6-f22c-9850e4033d45@gmail.com>
1004
1005
983
-* jk/t3419-drop-expensive-tests (2020-03-22) 1 commit
984
- (merged to 'next' on 2020-04-15 at a17ac8f996)
985
- + t3419: drop EXPENSIVE tests
1006
+* ds/blame-on-bloom (2020-04-23) 6 commits
1007
+ (merged to 'next' on 2020-04-28 at 6152eb2eb3)
1008
+ + test-bloom: check that we have expected arguments
1009
+ + test-bloom: fix some whitespace issues
1010
+ + blame: drop unused parameter from maybe_changed_path
1011
+ (merged to 'next' on 2020-04-22 at dc4f24e54b)
1012
+ + blame: use changed-path Bloom filters
1013
+ + tests: write commit-graph with Bloom filters
1014
+ + revision: complicated pathspecs disable filters
1015
+ (this branch uses gs/commit-graph-path-filter.)
1016
+
1017
+ "git blame" learns to take advantage of the "changed-paths" Bloom
1018
+ filter stored in the commit-graph file.
1019
+
1020
+ Will merge to 'master', together with gs/commit-graph-path-filter.
1021
987
- Test update.
1022
+
1023
+* dd/iso-8601-updates (2020-04-24) 4 commits
1024
+ (merged to 'next' on 2020-04-28 at 18fba39171)
1025
+ + date.c: allow compact version of ISO-8601 datetime
1026
+ + date.c: skip fractional second part of ISO-8601
1027
+ + date.c: validate and set time in a helper function
1028
+ + date.c: s/is_date/set_date/
1029
+
1030
+ The approxidate parser learns to parse seconds with fraction.
1031
1032
Will merge to 'master'.
1033
1034
992
-* jt/connectivity-check-optim-in-partial-clone (2020-03-29) 1 commit
993
- (merged to 'next' on 2020-04-15 at 1b3692b7fb)
994
- + connected: always use partial clone optimization
1035
+* tb/commit-graph-split-strategy (2020-04-15) 7 commits
1036
+ + commit-graph.c: introduce '--[no-]check-oids'
1037
+ + commit-graph.h: replace 'commit_hex' with 'commits'
1038
+ + oidset: introduce 'oidset_size'
1039
+ + builtin/commit-graph.c: introduce split strategy 'replace'
1040
+ + builtin/commit-graph.c: introduce split strategy 'no-merge'
1041
+ + builtin/commit-graph.c: support for '--split[=<strategy>]'
1042
+ + t/helper/test-read-graph.c: support commit-graph chains
1043
+ (this branch is used by tb/commit-graph-fd-exhaustion-fix.)
1044
996
- Simplify the commit ancestry connectedness check in a partial clone
997
- repository in which "promised" objects are assumed to be obtainable
998
- lazily on-demand from promisor remote repositories.
1045
+ "git commit-graph write" learned different ways to write out split
1046
+ files.
1047
1048
Will merge to 'master'.
1049
1050
1003
-* mt/test-lib-bundled-short-options (2020-03-25) 1 commit
1004
- (merged to 'next' on 2020-04-15 at 7fa0c56d91)
1005
- + test-lib: allow short options to be bundled
1051
+* gs/commit-graph-path-filter (2020-04-09) 16 commits
1052
+ (merged to 'next' on 2020-04-22 at 34b35f43bd)
1053
+ + bloom: ignore renames when computing changed paths
1054
+ + commit-graph: add GIT_TEST_COMMIT_GRAPH_CHANGED_PATHS test flag
1055
+ + t4216: add end to end tests for git log with Bloom filters
1056
+ + revision.c: add trace2 stats around Bloom filter usage
1057
+ + revision.c: use Bloom filters to speed up path based revision walks
1058
+ + commit-graph: add --changed-paths option to write subcommand
1059
+ + commit-graph: reuse existing Bloom filters during write
1060
+ + commit-graph: write Bloom filters to commit graph file
1061
+ + commit-graph: examine commits by generation number
1062
+ + commit-graph: examine changed-path objects in pack order
1063
+ + commit-graph: compute Bloom filters for changed paths
1064
+ + diff: halt tree-diff early after max_changes
1065
+ + bloom.c: core Bloom filter implementation for changed paths.
1066
+ + bloom.c: introduce core Bloom filter constructs
1067
+ + bloom.c: add the murmur3 hash implementation
1068
+ + commit-graph: define and use MAX_NUM_CHUNKS
1069
+ (this branch is used by ds/blame-on-bloom.)
1070
1007
- Minor test usability improvement.
1071
+ Introduce an extension to the commit-graph to make it efficient to
1072
+ check for the paths that were modified at each commit using Bloom
1073
+ filters.
1074
+
1075
+ Will merge to 'master' together with ds/blame-on-bloom.
1076
+
1077
+
1078
+* jx/proc-receive-hook (2020-04-15) 8 commits
1079
+ - SQUASH???
1080
+ - doc: add documentation for the proc-receive hook
1081
+ - receive-pack: new config receive.procReceiveRefs
1082
+ - refs.c: refactor to reuse ref_is_hidden()
1083
+ - send-pack: extension for client-side status report
1084
+ - receive-pack: add new proc-receive hook
1085
+ - connect: export parse_feature_value()
1086
+ - transport: not report a non-head push as a branch
1087
+
1088
+ "git receive-pack" that accepts requests by "git push" learned to
1089
+ outsource most of the ref updates to the new "proc-receive" hook.
1090
+
1091
+
1092
+* dd/ci-musl-libc (2020-04-06) 6 commits
1093
+ + travis: build and test on Linux with musl libc and busybox
1094
+ + ci/linux32: libify install-dependencies step
1095
+ + ci: refactor docker runner script
1096
+ + ci/linux32: parameterise command to switch arch
1097
+ + ci/lib-docker: preserve required environment variables
1098
+ + ci: make MAKEFLAGS available inside the Docker container in the Linux32 job
1099
+ (this branch is used by dd/ci-swap-azure-pipelines-with-github-actions.)
1100
+
1101
+ A new CI job to build and run test suite on linux with musl libc
1102
+ has been added.
1103
1104
Will merge to 'master'.
1105
1106
1012
-* bk/p4-pre-edit-changelist (2020-02-14) 7 commits
1013
- (merged to 'next' on 2020-04-15 at 3e7cecd445)
1014
- + git-p4: add RCS keyword status message
1015
- + git-p4: add p4 submit hooks
1016
- + git-p4: restructure code in submit
1017
- + git-p4: add --no-verify option
1018
- + git-p4: add p4-pre-submit exit text
1019
- + git-p4: create new function run_git_hook
1020
- + git-p4: rewrite prompt to be Windows compatible
1107
+* jk/build-with-right-curl (2020-04-05) 3 commits
1108
+ (merged to 'next' on 2020-04-28 at 1718c25b44)
1109
+ + Makefile: avoid running curl-config unnecessarily
1110
+ + Makefile: use curl-config --cflags
1111
+ + Makefile: avoid running curl-config multiple times
1112
1022
- "git p4" learned four new hooks and also "--no-verify" option to
1023
- bypass them (and the existing "p4-pre-submit" hook).
1113
+ The build procedure did not use the libcurl library and its include
1114
+ files correctly for a custom-built installation.
1115
1116
Will merge to 'master'.
1117
+ cf. <20200428033611.GB2369457@coredump.intra.peff.net>
1118
1119
1028
-* jt/rebase-allow-duplicate (2020-04-11) 1 commit
1029
- (merged to 'next' on 2020-04-15 at 56a9d83adf)
1030
- + rebase --merge: optionally skip upstreamed commits
1031
- (this branch uses en/rebase-no-keep-empty.)
1120
+* ps/transactional-update-ref-stdin (2020-04-02) 9 commits
1121
+ (merged to 'next' on 2020-04-22 at 5c92add109)
1122
+ + update-ref: implement interactive transaction handling
1123
+ + update-ref: read commands in a line-wise fashion
1124
+ + update-ref: move transaction handling into `update_refs_stdin()`
1125
+ + update-ref: pass end pointer instead of strbuf
1126
+ + update-ref: drop unused argument for `parse_refname`
1127
+ + update-ref: organize commands in an array
1128
+ + strbuf: provide function to append whole lines
1129
+ + git-update-ref.txt: add missing word
1130
+ + refs: fix segfault when aborting empty transaction
1131
1033
- Allow "git rebase" to reapply all local commits, even if the may be
1034
- already in the upstream, without checking first.
1132
+ "git update-ref --stdin" learned a handful of new verbs to let the
1133
+ user control ref update transactions more explicitly, which helps
1134
+ as an ingredient to implement two-phase commit-style atomic
1135
+ ref-updates across multiple repositories.
1136
1137
Will merge to 'master'.
1138
1139
1039
-* bc/faq (2020-03-30) 1 commit
1040
- (merged to 'next' on 2020-04-15 at 2d4c46ca7a)
1041
- + docs: add a FAQ
1140
+* en/fill-directory-exponential (2020-04-01) 12 commits
1141
+ (merged to 'next' on 2020-04-22 at e2577e3dc9)
1142
+ + completion: fix 'git add' on paths under an untracked directory
1143
+ + Fix error-prone fill_directory() API; make it only return matches
1144
+ + dir: replace double pathspec matching with single in treat_directory()
1145
+ + dir: include DIR_KEEP_UNTRACKED_CONTENTS handling in treat_directory()
1146
+ + dir: replace exponential algorithm with a linear one
1147
+ + dir: refactor treat_directory to clarify control flow
1148
+ + dir: fix confusion based on variable tense
1149
+ + dir: fix broken comment
1150
+ + dir: consolidate treat_path() and treat_one_path()
1151
+ + dir: fix simple typo in comment
1152
+ + t3000: add more testcases testing a variety of ls-files issues
1153
+ + t7063: more thorough status checking
1154
1043
- Doc update.
1155
+ The directory traversal code had redundant recursive calls which
1156
+ made its performance characteristics exponential with respect to
1157
+ the depth of the tree, which was corrected.
1158
1159
Will merge to 'master'.
1160
1161
1048
-* jc/log-no-mailmap (2020-03-16) 3 commits
1049
- (merged to 'next' on 2020-04-20 at b43968e73e)
1050
- + log: give --[no-]use-mailmap a more sensible synonym --[no-]mailmap
1051
- + clone: reorder --recursive/--recurse-submodules
1052
- + parse-options: teach "git cmd -h" to show alias as alias
1162
+* en/sparse-checkout (2020-03-27) 18 commits
1163
+ (merged to 'next' on 2020-04-15 at 3e295e445d)
1164
+ + sparse-checkout: provide a new reapply subcommand
1165
+ + unpack-trees: failure to set SKIP_WORKTREE bits always just a warning
1166
+ + unpack-trees: provide warnings on sparse updates for unmerged paths too
1167
+ + unpack-trees: make sparse path messages sound like warnings
1168
+ + unpack-trees: split display_error_msgs() into two
1169
+ + unpack-trees: rename ERROR_* fields meant for warnings to WARNING_*
1170
+ + unpack-trees: move ERROR_WOULD_LOSE_SUBMODULE earlier
1171
+ + sparse-checkout: use improved unpack_trees porcelain messages
1172
+ + sparse-checkout: use new update_sparsity() function
1173
+ + unpack-trees: add a new update_sparsity() function
1174
+ + unpack-trees: pull sparse-checkout pattern reading into a new function
1175
+ + unpack-trees: do not mark a dirty path with SKIP_WORKTREE
1176
+ + unpack-trees: allow check_updates() to work on a different index
1177
+ + t1091: make some tests a little more defensive against failures
1178
+ + unpack-trees: simplify pattern_list freeing
1179
+ + unpack-trees: simplify verify_absent_sparse()
1180
+ + unpack-trees: remove unused error type
1181
+ + unpack-trees: fix minor typo in comment
1182
1054
- "git log" learns "--[no-]mailmap" as a synonym to "--[no-]use-mailmap"
1183
+ "sparse-checkout" UI improvements.
1184
1185
Will merge to 'master'.
1186
1187
1059
-* hn/reftable (2020-04-20) 10 commits
1188
+* dl/merge-autostash (2020-04-10) 22 commits
1189
+ (merged to 'next' on 2020-04-22 at 98b991e8f5)
1190
+ + pull: pass --autostash to merge
1191
+ + t5520: make test_pull_autostash() accept expect_parent_num
1192
+ + merge: teach --autostash option
1193
+ + sequencer: implement apply_autostash_oid()
1194
+ + sequencer: implement save_autostash()
1195
+ + sequencer: unlink autostash in apply_autostash()
1196
+ + sequencer: extract perform_autostash() from rebase
1197
+ + rebase: generify create_autostash()
1198
+ + rebase: extract create_autostash()
1199
+ + reset: extract reset_head() from rebase
1200
+ + rebase: generify reset_head()
1201
+ + rebase: use apply_autostash() from sequencer.c
1202
+ + sequencer: rename stash_sha1 to stash_oid
1203
+ + sequencer: make apply_autostash() accept a path
1204
+ + rebase: use read_oneliner()
1205
+ + sequencer: make read_oneliner() extern
1206
+ + sequencer: configurably warn on non-existent files
1207
+ + sequencer: make read_oneliner() accept flags
1208
+ + sequencer: make file exists check more efficient
1209
+ + sequencer: stop leaking buf
1210
+ + t7600: use test_write_lines()
1211
+ + Makefile: ASCII-sort += lists
1212
+ (this branch is used by dl/merge-autostash-rebase-quit-fix.)
1213
+
1214
+ "git merge" learns the "--autostash" option.
1215
+
1216
+ Will merge to 'master' together with the "rebase --quit" fix.
1217
+
1218
+
1219
+* hn/reftable (2020-04-27) 12 commits
1220
+ - t: use update-ref and show-ref to reading/writing refs
1221
+ - Add some reftable testing infrastructure
1222
- Reftable support for git-core
1223
- Add reftable library
1224
- reftable: clarify how empty tables should be written
@@ -1073,20 +1235,24 @@ of the repositories listed at
1235
has been implemented and integrated for improved performance and
1236
atomicity.
1237
1076
- At v9
1077
- cf. <pull.539.v9.git.1587417295.gitgitgadget@gmail.com>
1238
+ At v10. VCbuild may have to be updated to deal with the new lib.
1239
+ cf. https://github.com/git/git/runs/624424705?check_suite_focus=true
1240
+ cf. <pull.539.v10.git.1588018418.gitgitgadget@gmail.com>
1241
1242
1080
-* es/bugreport (2020-04-16) 5 commits
1081
- - bugreport: add compiler info
1082
- - bugreport: add uname info
1083
- - bugreport: gather git version and build info
1084
- - bugreport: add tool to generate debugging info
1085
- - help: move list_config_help to builtin/help
1243
+* es/bugreport (2020-04-27) 6 commits
1244
+ (merged to 'next' on 2020-04-28 at fdfd36a5d7)
1245
+ + bugreport: drop extraneous includes
1246
+ (merged to 'next' on 2020-04-22 at f5a2ab988e)
1247
+ + bugreport: add compiler info
1248
+ + bugreport: add uname info
1249
+ + bugreport: gather git version and build info
1250
+ + bugreport: add tool to generate debugging info
1251
+ + help: move list_config_help to builtin/help
1252
1253
The "bugreport" tool.
1254
1089
- Will merge to 'next'.
1255
+ Will merge to 'master'.
1256
1257
--------------------------------------------------
1258
[Discarded]