What's cooking (2016/02 #02)
Junio C Hamano committed
Feb 5, 2016 at 16:10 UTC
daa9226bb2b7318011f3300f47c6d767b98c8ab1
1 file changed
+283
-382
whats-cooking.txt
+283
-382
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Feb 2016, #01; Tue, 2)
4
-X-master-at: 07c314d22dc8b0a982e76e7498a3f4d384062491
5
-X-next-at: 0765b0dbbbbf563f024948d74efb0d971872c22d
3
+Subject: What's cooking in git.git (Feb 2016, #02; Fri, 5)
4
+X-master-at: ff4ea6004fb48146330d663d64a71e7774f059f9
5
+X-next-at: b2aa7f843ccc79397d54723df13034a8761f5a18
6
7
-What's cooking in git.git (Feb 2016, #01; Tue, 2)
7
+What's cooking in git.git (Feb 2016, #02; Fri, 5)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -18,188 +18,203 @@ repositories listed at
18
http://git-blame.blogspot.com/p/git-public-repositories.html
19
20
--------------------------------------------------
21
-[Graduated to "master"]
21
+[New Topics]
22
23
-* ew/svn-1.9.0-auth (2016-01-26) 1 commit
24
- (merged to 'next' on 2016-01-28 at 61a4a8f)
25
- + git-svn: fix auth parameter handling on SVN 1.9.0+
23
+* da/user-useconfigonly (2016-02-05) 2 commits
24
+ - ident: add user.useConfigOnly boolean for when ident shouldn't be guessed
25
+ - fmt_ident: refactor strictness checks
26
27
+ The "user.useConfigOnly" configuration variable can be used to
28
+ force the user to always set user.email & user.name configuration
29
+ variables, serving as a reminder for those who work on multiple
30
+ projects and do not want to put these in their $HOME/.gitconfig.
31
28
-* jc/strbuf-getline (2016-01-15) 9 commits
29
- (merged to 'next' on 2016-01-22 at 8c4e051)
30
- + strbuf: give strbuf_getline() to the "most text friendly" variant
31
- + checkout-index: there are only two possible line terminations
32
- + update-index: there are only two possible line terminations
33
- + check-ignore: there are only two possible line terminations
34
- + check-attr: there are only two possible line terminations
35
- + mktree: there are only two possible line terminations
36
- + strbuf: introduce strbuf_getline_{lf,nul}()
37
- + strbuf: make strbuf_getline_crlf() global
38
- + strbuf: miniscule style fix
39
- (this branch is used by jc/peace-with-crlf.)
32
+--------------------------------------------------
33
+[Graduated to "master"]
34
41
- The preliminary clean-up for jc/peace-with-crlf topic.
35
+* dg/subtree-test (2016-01-19) 1 commit
36
+ (merged to 'next' on 2016-01-26 at 81f1356)
37
+ + contrib/subtree: Make testing easier
38
39
44
-* jk/filter-branch-no-index (2016-01-19) 1 commit
45
- (merged to 'next' on 2016-01-22 at 312aa2c)
46
- + filter-branch: resolve $commit^{tree} in no-index case
40
+* dt/unpack-compare-entry-optim (2016-01-22) 2 commits
41
+ (merged to 'next' on 2016-01-26 at 110e053)
42
+ + unpack-trees: fix accidentally quadratic behavior
43
+ (merged to 'next' on 2016-01-20 at 180dccf)
44
+ + do_compare_entry: use already-computed path
45
48
- A recent optimization to filter-branch in v2.7.0 introduced a
49
- regression when --prune-empty filter is used, which has been
50
- corrected.
46
+ "git checkout $branch" (and other operations that share the same
47
+ underlying machinery) has been optimized.
48
49
53
-* jk/list-tag-2.7-regression (2016-01-26) 2 commits
54
- (merged to 'next' on 2016-01-26 at fb9ccee)
55
- + tag: do not show ambiguous tag names as "tags/foo"
56
- + t6300: use test_atom for some un-modern tests
57
- (this branch is used by kn/ref-filter-atom-parsing.)
50
+* dw/subtree-split-do-not-drop-merge (2016-01-20) 1 commit
51
+ (merged to 'next' on 2016-01-26 at 3cfefef)
52
+ + contrib/subtree: fix "subtree split" skipped-merge bug
53
59
- "git tag" started listing a tag "foo" as "tags/foo" when a branch
60
- named "foo" exists in the same repository; remove this unnecessary
61
- disambiguation, which is a regression introduced in v2.7.0.
54
+ The "split" subcommand of "git subtree" (in contrib/) incorrectly
55
+ skipped merges when it shouldn't, which was corrected.
56
57
64
-* jk/sanity (2016-01-19) 1 commit
65
- (merged to 'next' on 2016-01-22 at 612cc5f)
66
- + test-lib: clarify and tighten SANITY
58
+* jc/peace-with-crlf (2016-01-15) 12 commits
59
+ (merged to 'next' on 2016-01-26 at 08724bc)
60
+ + test-sha1-array: read command stream with strbuf_getline()
61
+ + grep: read -f file with strbuf_getline()
62
+ + send-pack: read list of refs with strbuf_getline()
63
+ + column: read lines with strbuf_getline()
64
+ + cat-file: read batch stream with strbuf_getline()
65
+ + transport-helper: read helper response with strbuf_getline()
66
+ + clone/sha1_file: read info/alternates with strbuf_getline()
67
+ + remote.c: read $GIT_DIR/remotes/* with strbuf_getline()
68
+ + ident.c: read /etc/mailname with strbuf_getline()
69
+ + rev-parse: read parseopt spec with strbuf_getline()
70
+ + revision: read --stdin with strbuf_getline()
71
+ + hash-object: read --stdin-paths with strbuf_getline()
72
68
- The description for SANITY prerequisite the test suite uses has
69
- been clarified both in the comment and in the implementation.
73
+ Many commands that read files that are expected to contain text
74
+ that is generated (or can be edited) by the end user to control
75
+ their behaviour (e.g. "git grep -f <filename>") have been updated
76
+ to be more tolerant to lines that are terminated with CRLF (they
77
+ used to treat such a line to contain payload that ends with CR,
78
+ which is usually not what the users expect).
79
80
72
-* jk/shortlog (2016-01-19) 7 commits
73
- (merged to 'next' on 2016-01-22 at f1c688c)
74
- + shortlog: don't warn on empty author
75
- + shortlog: optimize out useless string list
76
- + shortlog: optimize out useless "<none>" normalization
77
- + shortlog: optimize "--summary" mode
78
- + shortlog: replace hand-parsing of author with pretty-printer
79
- + shortlog: use strbufs to read from stdin
80
- + shortlog: match both "Author:" and "author" on stdin
81
+* jk/completion-rebase (2016-01-25) 1 commit
82
+ (merged to 'next' on 2016-01-26 at def3e0b)
83
+ + completion: add missing git-rebase options
84
82
- "git shortlog" used to accumulate various pieces of information
83
- regardless of what was asked to be shown in the final output. It
84
- has been optimized by noticing what need not to be collected
85
- (e.g. there is no need to collect the log messages when showing
86
- only the number of changes).
85
86
+* jk/notes-merge-from-anywhere (2016-01-17) 1 commit
87
+ (merged to 'next' on 2016-01-26 at c60ac66)
88
+ + notes: allow merging from arbitrary references
89
89
-* js/msys2 (2016-01-15) 9 commits
90
- (merged to 'next' on 2016-01-22 at 8bab6ab)
91
- + mingw: uglify (a, 0) definitions to shut up warnings
92
- + mingw: squash another warning about a cast
93
- + mingw: avoid warnings when casting HANDLEs to int
94
- + mingw: avoid redefining S_* constants
95
- + compat/winansi: support compiling with MSys2
96
- + compat/mingw: support MSys2-based MinGW build
97
- + nedmalloc: allow compiling with MSys2's compiler
98
- + config.mak.uname: supporting 64-bit MSys2
99
- + config.mak.uname: support MSys2
100
- (this branch is used by js/mingw-tests.)
90
+ "git notes merge" used to limit the source of the merged notes tree
91
+ to somewhere under refs/notes/ hierarchy, which was too limiting
92
+ when inventing a workflow to exchange notes with remote
93
+ repositories using remote-tracking notes trees (located in e.g.
94
+ refs/remote-notes/ or somesuch).
95
102
- Beginning of the upstreaming process of Git for Windows effort.
96
97
+* jk/ref-cache-non-repository-optim (2016-01-25) 2 commits
98
+ (merged to 'next' on 2016-01-26 at 09057bc)
99
+ + resolve_gitlink_ref: ignore non-repository paths
100
+ + clean: make is_git_repository a public function
101
105
-* tk/interpret-trailers-in-place (2016-01-14) 2 commits
106
- (merged to 'next' on 2016-01-22 at 5db0cf8)
107
- + interpret-trailers: add option for in-place editing
108
- + trailer: allow to write to files other than stdout
102
+ The underlying machinery used by "ls-files -o" and other commands
103
+ have been taught not to create empty submodule ref cache for a
104
+ directory that is not a submodule. This removes a ton of wasted
105
+ CPU cycles.
106
110
- "interpret-trailers" has been taught to optionally update a file in
111
- place, instead of always writing the result to the standard output.
107
113
---------------------------------------------------
114
-[New Topics]
108
+* js/dirname-basename (2016-01-25) 6 commits
109
+ (merged to 'next' on 2016-01-26 at b16b2b8)
110
+ + mingw: avoid linking to the C library's isalpha()
111
+ (merged to 'next' on 2016-01-20 at d198512)
112
+ + t0060: loosen overly strict expectations
113
+ (merged to 'next' on 2016-01-12 at c3c970a)
114
+ + t0060: verify that basename() and dirname() work as expected
115
+ + compat/basename.c: provide a dirname() compatibility function
116
+ + compat/basename: make basename() conform to POSIX
117
+ + Refactor skipping DOS drive prefixes
118
116
-* aw/push-force-with-lease-reporting (2016-02-01) 1 commit
117
- - push: fix ref status reporting for --force-with-lease
119
+ dirname() emulation has been added, as Msys2 lacks it.
120
119
- "git push --force-with-lease" has been taught to report if the push
120
- needed to force (or fast-forwarded).
121
122
- Will merge to 'next'.
122
+* kf/http-proxy-auth-methods (2016-01-26) 2 commits
123
+ (merged to 'next' on 2016-02-01 at b0956b2)
124
+ + http: use credential API to handle proxy authentication
125
+ + http: allow selection of proxy authentication method
126
127
+ New http.proxyAuthMethod configuration variable can be used to
128
+ specify what authentication method to use, as a way to work around
129
+ proxies that do not give error response expected by libcurl when
130
+ CURLAUTH_ANY is used. Also, the codepath for proxy authentication
131
+ has been taught to use credential API to store the authentication
132
+ material in user's keyrings.
133
125
-* ew/connect-verbose (2016-01-28) 1 commit
126
- - pass transport verbosity down to git_connect
134
128
- There were a few "now I am doing this thing" progress messages in
129
- the TCP connection code that can be triggered by setting a verbose
130
- option internally in the code, but "git fetch -v" and friends never
131
- passed the verbose option down to that codepath.
135
+* ls/travis-prove-order (2016-01-26) 2 commits
136
+ (merged to 'next' on 2016-01-26 at d8e2a4a)
137
+ + travis-ci: explicity use container-based infrastructure
138
+ + travis-ci: run previously failed tests first, then slowest to fastest
139
133
- There was a brief discussion about the impact on the end-user
134
- experience by not limiting this to "fetch -v -v", but I think the
135
- conclusion is that this is OK to enable with a single "-v" as it is
136
- not too noisy.
140
+ Automated tests in Travis CI environment has been optimized by
141
+ persisting runtime statistics of previous "prove" run, executing
142
+ tests that take longer before other ones; this reduces the total
143
+ wallclock time.
144
138
- Will merge to 'next'.
145
146
+* lv/add-doc-working-tree (2016-01-21) 1 commit
147
+ (merged to 'next' on 2016-01-26 at c5b1ab1)
148
+ + git-add doc: do not say working directory when you mean working tree
149
141
-* ls/clean-smudge-override-in-config (2016-01-29) 1 commit
142
- - convert: treat an empty string for clean/smudge filters as "cat"
150
144
- Allow clean and smudge filter commands defined in a configuration
145
- file to be disabled by redefining it to an empty string.
151
+* mk/asciidoctor-bq-workaround (2016-01-20) 1 commit
152
+ (merged to 'next' on 2016-01-26 at 19a742a)
153
+ + Documentation: remove unnecessary backslashes
154
147
- Will merge to 'next'.
155
156
+* nd/diff-with-path-params (2016-01-21) 2 commits
157
+ (merged to 'next' on 2016-01-26 at b29a363)
158
+ + diff: make -O and --output work in subdirectory
159
+ + diff-no-index: do not take a redundant prefix argument
160
150
-* ah/stripspace-optstring (2016-01-29) 1 commit
151
- - stripspace: call U+0020 a "space" instead of a "blank"
161
+ A few options of "git diff" did not work well when the command was
162
+ run from a subdirectory.
163
153
- Comments?
164
165
+* pw/completion-show-branch (2016-01-25) 1 commit
166
+ (merged to 'next' on 2016-01-26 at d0d7735)
167
+ + completion: complete show-branch "--date-order"
168
156
-* dw/mergetool-vim-window-shuffle (2016-01-29) 1 commit
157
- - mergetool: reorder vim/gvim buffers in three-way diffs
169
159
- Comments from real vim/gvim users?
170
+* pw/completion-stash (2016-01-26) 1 commit
171
+ (merged to 'next' on 2016-01-26 at e41153c)
172
+ + completion: update completion arguments for stash
173
174
162
-* jk/drop-rsync-transport (2016-02-01) 1 commit
163
- - transport: drop support for git-over-rsync
175
+* tb/complete-word-diff-regex (2016-01-20) 1 commit
176
+ (merged to 'next' on 2016-01-26 at a5beecc)
177
+ + completion: complete "diff --word-diff-regex="
178
165
- It turns out "git clone" over rsync transport has been broken when
166
- the source repository has packed references for a long time, and
167
- nobody noticed nor complained about it.
179
169
- Will merge to 'next'.
180
+* tb/ls-files-eol (2016-01-18) 1 commit
181
+ (merged to 'next' on 2016-01-26 at bc9246f)
182
+ + ls-files: add eol diagnostics
183
184
+ "git ls-files" learned a new "--eol" option to help diagnose
185
+ end-of-line problems.
186
172
-* jk/options-cleanup (2016-02-01) 6 commits
173
- - apply, ls-files: simplify "-z" parsing
174
- - checkout-index: disallow "--no-stage" option
175
- - checkout-index: handle "--no-index" option
176
- - checkout-index: handle "--no-prefix" option
177
- - checkout-index: simplify "-z" option parsing
178
- - give "nbuf" strbuf a more meaningful name
187
180
- Various clean-ups to the command line option parsing.
188
+* tg/ls-remote-symref (2016-01-19) 5 commits
189
+ (merged to 'next' on 2016-01-26 at e466ee2)
190
+ + ls-remote: add support for showing symrefs
191
+ + ls-remote: use parse-options api
192
+ + ls-remote: fix synopsis
193
+ + ls-remote: document --refs option
194
+ + ls-remote: document --quiet option
195
182
- Will merge to 'next'.
196
+ "ls-remote" learned an option to show which branch the remote
197
+ repository advertises as its primary by pointing its HEAD at.
198
199
+--------------------------------------------------
200
+[Stalled]
201
185
-* dv/http-try-negotiate-at-least-once (2016-02-02) 1 commit
186
- - remote-curl: don't fall back to Basic auth if we haven't tried Negotiate
202
+* ec/annotate-deleted (2015-11-20) 1 commit
203
+ - annotate: skip checking working tree if a revision is provided
204
188
- Needs review.
205
+ Usability fix for annotate-specific "<file> <rev>" syntax with deleted
206
+ files.
207
208
+ Waiting for review.
209
191
-* js/test-lib-windows-emulated-yes (2016-02-02) 1 commit
192
- - test-lib: limit the output of the yes utility
210
194
- The emulated "yes" command used in our test scripts has been
195
- tweaked not to spend too much time generating unnecessary output
196
- that is not used, to help those who test on Windows where it would
197
- not stop until it fills the pipe buffer due to lack of SIGPIPE.
211
+* dg/subtree-rebase-test (2016-01-19) 1 commit
212
+ - contrib/subtree: Add a test for subtree rebase that loses commits
213
199
- Will merge to 'next'.
214
+ Reviewed up to v5.
215
+ Will be rerolled.
216
+ ($gmane/284426)
217
201
---------------------------------------------------
202
-[Stalled]
218
219
* dk/gc-more-wo-pack (2016-01-13) 4 commits
220
- gc: clean garbage .bitmap files from pack dir
@@ -243,155 +258,179 @@ repositories listed at
258
--------------------------------------------------
259
[Cooking]
260
246
-* sb/submodule-parallel-update (2016-01-12) 8 commits
247
- - clone: allow an explicit argument for parallel submodule clones
248
- - submodule update: expose parallelism to the user
249
- - git submodule update: have a dedicated helper for cloning
250
- - fetching submodules: respect `submodule.fetchJobs` config option
251
- - submodule-config: introduce parse_generic_submodule_config
252
- - submodule-config: remove name_and_item_from_var
253
- - submodule-config: drop check against NULL
254
- - submodule-config: keep update strategy around
255
- (this branch is used by dt/refs-backend-lmdb and sb/submodule-init.)
261
+* aw/push-force-with-lease-reporting (2016-02-01) 1 commit
262
+ (merged to 'next' on 2016-02-03 at facd28f)
263
+ + push: fix ref status reporting for --force-with-lease
264
257
- Builds on top of the "fetch --recurse-submodules" work to introduce
258
- parallel downloading into multiple submodules for "submodule update".
265
+ "git push --force-with-lease" has been taught to report if the push
266
+ needed to force (or fast-forwarded).
267
260
- Needs review.
268
+ Will merge to 'master'.
269
270
263
-* dt/refs-backend-lmdb (2016-02-02) 21 commits
264
- - refs: tests for lmdb backend
265
- - refs: add LMDB refs backend
266
- - svn: learn ref-storage argument
267
- - refs: allow ref backend to be set for clone
268
- - refs: check submodules ref storage config
269
- - init: allow alternate backends to be set for new repos
270
- - refs: always handle non-normal refs in files backend
271
- - refs: resolve symbolic refs first
272
- - refs: allow log-only updates
273
- - refs: move duplicate check to common code
274
- - refs: make lock generic
275
- - refs: add method to rename refs
276
- - refs: add methods to init refs db
277
- - refs: add method for delete_refs
278
- - refs: add method for initial ref transaction commit
279
- - refs: add methods for reflog
280
- - refs: add do_for_each_per_worktree_ref
281
- - refs: add methods for the ref iterators
282
- - refs: add methods for misc ref operations
283
- - refs: add a backend method structure with transaction functions
284
- - Merge branch 'sb/submodule-parallel-update' into dt/refs-backend-lmdb
285
- (this branch uses sb/submodule-parallel-update; is tangled with sb/submodule-init.)
271
+* ew/connect-verbose (2016-01-28) 1 commit
272
+ (merged to 'next' on 2016-02-03 at ceac37e)
273
+ + pass transport verbosity down to git_connect
274
287
- Building on top of a few refs-backend preparatory series, LMDB
288
- based refs backend has been plugged into the system.
275
+ There were a few "now I am doing this thing" progress messages in
276
+ the TCP connection code that can be triggered by setting a verbose
277
+ option internally in the code, but "git fetch -v" and friends never
278
+ passed the verbose option down to that codepath.
279
290
- This can now be reviewed and polished as it no longer depends on
291
- too many topics in flight ;-)
280
+ There was a brief discussion about the impact on the end-user
281
+ experience by not limiting this to "fetch -v -v", but I think the
282
+ conclusion is that this is OK to enable with a single "-v" as it is
283
+ not too noisy.
284
293
- Needs review.
285
+ Will merge to 'master'.
286
287
296
-* lv/add-doc-working-tree (2016-01-21) 1 commit
297
- (merged to 'next' on 2016-01-26 at c5b1ab1)
298
- + git-add doc: do not say working directory when you mean working tree
288
+* ls/clean-smudge-override-in-config (2016-01-29) 1 commit
289
+ (merged to 'next' on 2016-02-03 at 5962354)
290
+ + convert: treat an empty string for clean/smudge filters as "cat"
291
+
292
+ Clean/smudge filters defined in a configuration file of lower
293
+ precedence can now be overridden to be a pass-through no-op by
294
+ setting the variable to an empty string.
295
296
Will merge to 'master'.
297
298
303
-* mk/asciidoctor-bq-workaround (2016-01-20) 1 commit
304
- (merged to 'next' on 2016-01-26 at 19a742a)
305
- + Documentation: remove unnecessary backslashes
299
+* ah/stripspace-optstring (2016-01-29) 1 commit
300
+ - stripspace: call U+0020 a "space" instead of a "blank"
301
307
- Will merge to 'master'.
302
+ Comments?
303
304
310
-* nd/diff-with-path-params (2016-01-21) 2 commits
311
- (merged to 'next' on 2016-01-26 at b29a363)
312
- + diff: make -O and --output work in subdirectory
313
- + diff-no-index: do not take a redundant prefix argument
305
+* dw/mergetool-vim-window-shuffle (2016-01-29) 1 commit
306
+ - mergetool: reorder vim/gvim buffers in three-way diffs
307
315
- A few options of "git diff" did not work well when the command was
316
- run from a subdirectory.
308
+ Comments from real vim/gvim users?
309
318
- Will merge to 'master'.
310
311
+* jk/drop-rsync-transport (2016-02-01) 1 commit
312
+ (merged to 'next' on 2016-02-03 at 08be402)
313
+ + transport: drop support for git-over-rsync
314
321
-* tb/complete-word-diff-regex (2016-01-20) 1 commit
322
- (merged to 'next' on 2016-01-26 at a5beecc)
323
- + completion: complete "diff --word-diff-regex="
315
+ It turns out "git clone" over rsync transport has been broken when
316
+ the source repository has packed references for a long time, and
317
+ nobody noticed nor complained about it.
318
319
Will merge to 'master'.
320
321
328
-* tg/ls-remote-symref (2016-01-19) 5 commits
329
- (merged to 'next' on 2016-01-26 at e466ee2)
330
- + ls-remote: add support for showing symrefs
331
- + ls-remote: use parse-options api
332
- + ls-remote: fix synopsis
333
- + ls-remote: document --refs option
334
- + ls-remote: document --quiet option
322
+* jk/options-cleanup (2016-02-01) 6 commits
323
+ (merged to 'next' on 2016-02-03 at a78d89d)
324
+ + apply, ls-files: simplify "-z" parsing
325
+ + checkout-index: disallow "--no-stage" option
326
+ + checkout-index: handle "--no-index" option
327
+ + checkout-index: handle "--no-prefix" option
328
+ + checkout-index: simplify "-z" option parsing
329
+ + give "nbuf" strbuf a more meaningful name
330
336
- Teach "ls-remote" an option to show which branch the remote
337
- repository advertises as its primary by pointing its HEAD at.
331
+ Various clean-ups to the command line option parsing.
332
333
Will merge to 'master'.
334
335
342
-* jk/ref-cache-non-repository-optim (2016-01-25) 2 commits
343
- (merged to 'next' on 2016-01-26 at 09057bc)
344
- + resolve_gitlink_ref: ignore non-repository paths
345
- + clean: make is_git_repository a public function
336
+* dv/http-try-negotiate-at-least-once (2016-02-02) 1 commit
337
+ - remote-curl: don't fall back to Basic auth if we haven't tried Negotiate
338
347
- Teach the underlying machinery used by "ls-files -o" and other
348
- commands not to create empty submodule ref cache for a directory
349
- that is not a submodule. This removes a ton of wasted CPU cycles.
339
+ Needs at least an update to the log message.
340
+ ($gmane/285314)
341
351
- Will merge to 'master'.
342
343
+* js/test-lib-windows-emulated-yes (2016-02-02) 1 commit
344
+ (merged to 'next' on 2016-02-03 at bf6b42c)
345
+ + test-lib: limit the output of the yes utility
346
354
-* jk/completion-rebase (2016-01-25) 1 commit
355
- (merged to 'next' on 2016-01-26 at def3e0b)
356
- + completion: add missing git-rebase options
347
+ The emulated "yes" command used in our test scripts has been
348
+ tweaked not to spend too much time generating unnecessary output
349
+ that is not used, to help those who test on Windows where it would
350
+ not stop until it fills the pipe buffer due to lack of SIGPIPE.
351
352
Will merge to 'master'.
353
354
361
-* pw/completion-show-branch (2016-01-25) 1 commit
362
- (merged to 'next' on 2016-01-26 at d0d7735)
363
- + completion: complete show-branch "--date-order"
355
+* sb/submodule-parallel-update (2016-01-12) 8 commits
356
+ - clone: allow an explicit argument for parallel submodule clones
357
+ - submodule update: expose parallelism to the user
358
+ - git submodule update: have a dedicated helper for cloning
359
+ - fetching submodules: respect `submodule.fetchJobs` config option
360
+ - submodule-config: introduce parse_generic_submodule_config
361
+ - submodule-config: remove name_and_item_from_var
362
+ - submodule-config: drop check against NULL
363
+ - submodule-config: keep update strategy around
364
+ (this branch is used by dt/refs-backend-lmdb and sb/submodule-init.)
365
365
- Will merge to 'master'.
366
+ Builds on top of the "fetch --recurse-submodules" work to introduce
367
+ parallel downloading into multiple submodules for "submodule update".
368
+
369
+ Needs review.
370
+ ($gmane/285285)
371
+
372
+
373
+* dt/refs-backend-lmdb (2016-02-02) 21 commits
374
+ . refs: tests for lmdb backend
375
+ . refs: add LMDB refs backend
376
+ . svn: learn ref-storage argument
377
+ . refs: allow ref backend to be set for clone
378
+ . refs: check submodules ref storage config
379
+ . init: allow alternate backends to be set for new repos
380
+ . refs: always handle non-normal refs in files backend
381
+ . refs: resolve symbolic refs first
382
+ . refs: allow log-only updates
383
+ . refs: move duplicate check to common code
384
+ . refs: make lock generic
385
+ . refs: add method to rename refs
386
+ . refs: add methods to init refs db
387
+ . refs: add method for delete_refs
388
+ . refs: add method for initial ref transaction commit
389
+ . refs: add methods for reflog
390
+ . refs: add do_for_each_per_worktree_ref
391
+ . refs: add methods for the ref iterators
392
+ . refs: add methods for misc ref operations
393
+ . refs: add a backend method structure with transaction functions
394
+ . Merge branch 'sb/submodule-parallel-update' into dt/refs-backend-lmdb
395
+ (this branch uses sb/submodule-parallel-update; is tangled with sb/submodule-init.)
396
+
397
+ Building on top of a few refs-backend preparatory series, LMDB
398
+ based refs backend has been plugged into the system.
399
+
400
+ This can now be reviewed and polished as it no longer depends on
401
+ too many topics in flight. I haven't picked the latest one posted
402
+ apart to queue it as a topic properly, as the patches sent to the
403
+ list were done on top of some version of 'pu'.
404
405
406
* js/mingw-tests (2016-01-28) 20 commits
369
- - mingw: do not bother to test funny file names
370
- - mingw: skip a test in t9130 that cannot pass on Windows
371
- - mingw: handle the missing POSIXPERM prereq in t9124
372
- - mingw: avoid illegal filename in t9118
373
- - mingw: mark t9100's test cases with appropriate prereqs
374
- - t0008: avoid absolute path
375
- - mingw: work around pwd issues in the tests
376
- - mingw: fix t9700's assumption about directory separators
377
- - mingw: skip test in t1508 that fails due to path conversion
378
- - tests: turn off git-daemon tests if FIFOs are not available
379
- - mingw: disable mkfifo-based tests
380
- - mingw: accomodate t0060-path-utils for MSYS2
381
- - mingw: fix t5601-clone.sh
382
- - mingw: let lstat() fail with errno == ENOTDIR when appropriate
383
- - mingw: try to delete target directory before renaming
384
- - mingw: prepare the TMPDIR environment variable for shell scripts
385
- - mingw: factor out Windows specific environment setup
386
- - Git.pm: stop assuming that absolute paths start with a slash
387
- - mingw: do not trust MSYS2's MinGW gettext.sh
388
- - mingw: let's use gettext with MSYS2
389
-
390
- Updates test scripts to remove assumptions that are not portable
391
- between Git for POSIX and Git for Windows, or to skip ones with
392
- expectations that are not satisfiable on Git for Windows.
393
-
394
- Will merge to 'next'.
407
+ (merged to 'next' on 2016-02-03 at ace7624)
408
+ + mingw: do not bother to test funny file names
409
+ + mingw: skip a test in t9130 that cannot pass on Windows
410
+ + mingw: handle the missing POSIXPERM prereq in t9124
411
+ + mingw: avoid illegal filename in t9118
412
+ + mingw: mark t9100's test cases with appropriate prereqs
413
+ + t0008: avoid absolute path
414
+ + mingw: work around pwd issues in the tests
415
+ + mingw: fix t9700's assumption about directory separators
416
+ + mingw: skip test in t1508 that fails due to path conversion
417
+ + tests: turn off git-daemon tests if FIFOs are not available
418
+ + mingw: disable mkfifo-based tests
419
+ + mingw: accomodate t0060-path-utils for MSYS2
420
+ + mingw: fix t5601-clone.sh
421
+ + mingw: let lstat() fail with errno == ENOTDIR when appropriate
422
+ + mingw: try to delete target directory before renaming
423
+ + mingw: prepare the TMPDIR environment variable for shell scripts
424
+ + mingw: factor out Windows specific environment setup
425
+ + Git.pm: stop assuming that absolute paths start with a slash
426
+ + mingw: do not trust MSYS2's MinGW gettext.sh
427
+ + mingw: let's use gettext with MSYS2
428
+
429
+ Test scripts have been updated to remove assumptions that are not
430
+ portable between Git for POSIX and Git for Windows, or to skip ones
431
+ with expectations that are not satisfiable on Git for Windows.
432
+
433
+ Will merge to 'master'.
434
435
436
* js/xmerge-marker-eol (2016-01-27) 2 commits
@@ -418,79 +457,6 @@ repositories listed at
457
Needs review.
458
459
421
-* pw/completion-stash (2016-01-26) 1 commit
422
- (merged to 'next' on 2016-01-26 at e41153c)
423
- + completion: update completion arguments for stash
424
-
425
- Will merge to 'master'.
426
-
427
-
428
-* kf/http-proxy-auth-methods (2016-01-26) 2 commits
429
- (merged to 'next' on 2016-02-01 at b0956b2)
430
- + http: use credential API to handle proxy authentication
431
- + http: allow selection of proxy authentication method
432
-
433
- New http.proxyAuthMethod configuration variable can be used to
434
- specify what authentication method to use, as a way to work around
435
- proxies that do not give error response expected by libcurl when
436
- CURLAUTH_ANY is used. Also, the codepath for proxy authentication
437
- has been taught to use credential API to store the authentication
438
- material in user's keyrings.
439
-
440
- Will merge to 'master'.
441
-
442
-
443
-* dg/subtree-rebase-test (2016-01-19) 1 commit
444
- - contrib/subtree: Add a test for subtree rebase that loses commits
445
-
446
- Reviewed up to v5.
447
- Will be rerolled.
448
- ($gmane/284426)
449
-
450
-
451
-* jc/peace-with-crlf (2016-01-15) 12 commits
452
- (merged to 'next' on 2016-01-26 at 08724bc)
453
- + test-sha1-array: read command stream with strbuf_getline()
454
- + grep: read -f file with strbuf_getline()
455
- + send-pack: read list of refs with strbuf_getline()
456
- + column: read lines with strbuf_getline()
457
- + cat-file: read batch stream with strbuf_getline()
458
- + transport-helper: read helper response with strbuf_getline()
459
- + clone/sha1_file: read info/alternates with strbuf_getline()
460
- + remote.c: read $GIT_DIR/remotes/* with strbuf_getline()
461
- + ident.c: read /etc/mailname with strbuf_getline()
462
- + rev-parse: read parseopt spec with strbuf_getline()
463
- + revision: read --stdin with strbuf_getline()
464
- + hash-object: read --stdin-paths with strbuf_getline()
465
-
466
- Teach codepaths that communicate with users by reading text files
467
- to be more lenient to editors that write CRLF-terminated lines.
468
- Note that this is only about communication with Git, like feeding
469
- list of object names from the standard input instead of from the
470
- command line, and does not involve files in the working tree.
471
-
472
- Will merge to 'master'.
473
-
474
-
475
-* dg/subtree-test (2016-01-19) 1 commit
476
- (merged to 'next' on 2016-01-26 at 81f1356)
477
- + contrib/subtree: Make testing easier
478
-
479
- Will merge to 'master'.
480
-
481
-
482
-* ls/travis-prove-order (2016-01-26) 2 commits
483
- (merged to 'next' on 2016-01-26 at d8e2a4a)
484
- + travis-ci: explicity use container-based infrastructure
485
- + travis-ci: run previously failed tests first, then slowest to fastest
486
-
487
- By persisting runtime statistics of previous "prove" run, execute
488
- tests that take longer before other ones, to reduce the total
489
- wallclock time when running with Travis CI.
490
-
491
- Will merge to 'master'.
492
-
493
-
460
* nd/do-not-move-worktree-manually (2016-01-22) 2 commits
461
(merged to 'next' on 2016-01-26 at c539221)
462
+ worktree: stop supporting moving worktrees manually
@@ -517,53 +483,14 @@ repositories listed at
483
Will have to wait for 'sb/submodule-parallel-update'.
484
485
520
-* js/dirname-basename (2016-01-25) 6 commits
521
- (merged to 'next' on 2016-01-26 at b16b2b8)
522
- + mingw: avoid linking to the C library's isalpha()
523
- (merged to 'next' on 2016-01-20 at d198512)
524
- + t0060: loosen overly strict expectations
525
- (merged to 'next' on 2016-01-12 at c3c970a)
526
- + t0060: verify that basename() and dirname() work as expected
527
- + compat/basename.c: provide a dirname() compatibility function
528
- + compat/basename: make basename() conform to POSIX
529
- + Refactor skipping DOS drive prefixes
530
-
531
- dirname() emulation has been added, as Msys2 lacks it.
532
-
533
- Will merge to 'master'.
534
-
535
-
486
* wp/sha1-name-negative-match (2016-02-01) 2 commits
537
- - object name: introduce '^{/!-<negative pattern>}' notation
538
- - test for '!' handling in rev-parse's named commits
487
+ (merged to 'next' on 2016-02-03 at 89fa5ef)
488
+ + object name: introduce '^{/!-<negative pattern>}' notation
489
+ + test for '!' handling in rev-parse's named commits
490
540
- Introduce "<branch>^{/!-<pattern>}" notation to name a commit
541
- reachable from <branch> that does not match the given <pattern>.
542
-
543
- Will merge to 'next'.
544
-
545
-
546
-* jk/notes-merge-from-anywhere (2016-01-17) 1 commit
547
- (merged to 'next' on 2016-01-26 at c60ac66)
548
- + notes: allow merging from arbitrary references
549
-
550
- "git notes merge" used to limit the source of the merged notes tree
551
- to somewhere under refs/notes/ hierarchy, which was too limiting
552
- when inventing a workflow to exchange notes with remote
553
- repositories using remote-tracking notes trees (located in e.g.
554
- refs/remote-notes/ or somesuch).
555
-
556
- Will merge to 'master'.
557
-
558
-
559
-* dt/unpack-compare-entry-optim (2016-01-22) 2 commits
560
- (merged to 'next' on 2016-01-26 at 110e053)
561
- + unpack-trees: fix accidentally quadratic behavior
562
- (merged to 'next' on 2016-01-20 at 180dccf)
563
- + do_compare_entry: use already-computed path
564
-
565
- "git checkout $branch" (and other operations that share the same
566
- underlying machinery) has been optimized.
491
+ A new "<branch>^{/!-<pattern>}" notation can be used to name a
492
+ commit that is reachable from <branch> that does not match the
493
+ given <pattern>.
494
495
Will merge to 'master'.
496
@@ -588,16 +515,6 @@ repositories listed at
515
Will merge to 'master'.
516
517
591
-* dw/subtree-split-do-not-drop-merge (2016-01-20) 1 commit
592
- (merged to 'next' on 2016-01-26 at 3cfefef)
593
- + contrib/subtree: fix "subtree split" skipped-merge bug
594
-
595
- The "split" subcommand of "git subtree" (in contrib/) incorrectly
596
- skipped merges when it shouldn't, which was corrected.
597
-
598
- Will merge to 'master'.
599
-
600
-
518
* kn/ref-filter-atom-parsing (2016-02-02) 12 commits
519
- ref-filter: introduce objectname_atom_parser()
520
- ref-filter: introduce contents_atom_parser()
@@ -615,23 +532,7 @@ repositories listed at
532
Refactoring of ref-filter's format-parsing code, in preparation
533
for "branch --format" and friends.
534
618
-
619
-* tb/ls-files-eol (2016-01-18) 1 commit
620
- (merged to 'next' on 2016-01-26 at bc9246f)
621
- + ls-files: add eol diagnostics
622
-
623
- Add options to ls-files to help diagnose end-of-line problems.
624
-
625
- Will merge to 'master'.
626
-
627
-
628
-* ec/annotate-deleted (2015-11-20) 1 commit
629
- - annotate: skip checking working tree if a revision is provided
630
-
631
- Usability fix for annotate-specific "<file> <rev>" syntax with deleted
632
- files.
633
-
634
- Waiting for review.
535
+ ($gmane/285158)
536
537
538
* js/am-3-merge-recursive-direct (2015-10-12) 2 commits