What's cooking (2017/01 #02)
Junio C Hamano committed
Jan 15, 2017 at 17:40 UTC
aa3afa0b4ab4f07e6b36f0712fd58229735afddc
1 file changed
+267
-295
whats-cooking.txt
+267
-295
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Jan 2017, #01; Tue, 10)
3
+Subject: What's cooking in git.git (Jan 2017, #02; Sun, 15)
4
X-master-at: d7dffce1cebde29a0c4b309a79e4345450bf352a
5
-X-next-at: 087da7b7c1bc403d36120b5e97c342e00ebbf16a
5
+X-next-at: 8553c6e5137d7fde1cda49817bcc035d3ce35aeb
6
7
-What's cooking in git.git (Jan 2017, #01; Tue, 10)
7
+What's cooking in git.git (Jan 2017, #02; Sun, 15)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -18,7 +18,63 @@ of the 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
+* bw/read-blob-data-does-not-modify-index-state (2017-01-11) 1 commit
24
+ - index: improve constness for reading blob data
25
+
26
+ Code clean-up.
27
+
28
+ Will merge to 'next'.
29
+
30
+
31
+* ep/commit-static-buf-cleanup (2017-01-13) 2 commits
32
+ - builtin/commit.c: switch to xstrfmt(), instead of snprintf()
33
+ - builtin/commit.c: remove the PATH_MAX limitation via dynamic allocation
34
+
35
+ Code clean-up.
36
+
37
+ Expecting a reroll.
38
+ The tip one would instead be done with strbuf.
39
+ cf. <CA+EOSB=4-TKpi6mr-yVbwRsFrVzE=vo4Y9Qm3VMm7pn=UB1_hQ@mail.gmail.com>
40
+
41
+
42
+* jk/grep-e-could-be-extended-beyond-posix (2017-01-11) 1 commit
43
+ - t7810: avoid assumption about invalid regex syntax
44
+
45
+ Tighten a test to avoid mistaking an extended ERE regexp engine as
46
+ a PRE regexp engine.
47
+
48
+ Will merge to 'next'.
49
+
50
+
51
+* jk/vreport-sanitize (2017-01-11) 2 commits
52
+ - vreport: sanitize ASCII control chars
53
+ - Revert "vreportf: avoid intermediate buffer"
54
+
55
+ An error message with an ASCII control character like '\r' in it
56
+ can alter the message to hide its early part, which is problematic
57
+ when a remote side gives such an error message that the local side
58
+ will relay with a "remote: " prefix.
59
+
60
+ Will merge to 'next'.
61
+
62
+
63
+* sb/unpack-trees-super-prefix (2017-01-12) 5 commits
64
+ - SQUASH
65
+ - unpack-trees: support super-prefix option
66
+ - t1001: modernize style
67
+ - t1000: modernize style
68
+ - read-tree: use OPT_BOOL instead of OPT_SET_INT
69
+
70
+ "git read-tree" and its underlying unpack_trees() machinery learned
71
+ to report problematic paths prefixed with the --super-prefix option.
72
+
73
+ Expecting a reroll.
74
+ The first three are in good shape. The last one needs a better
75
+ explanation and possibly an update to its test.
76
+ cf. <CAGZ79kaHDnVLQr8WLoaD5KKs7EqeW=KbkptF=iHpU5t054Xcdw@mail.gmail.com>
77
+
78
79
* bw/grep-recurse-submodules (2016-12-22) 12 commits
80
(merged to 'next' on 2016-12-22 at 1ede815b8d)
@@ -37,142 +93,206 @@ of the repositories listed at
93
+ real_path: resolve symlinks by hand
94
(this branch is tangled with bw/realpath-wo-chdir.)
95
40
- "git grep" learns to optionally recurse into submodules.
96
+ "git grep" has been taught to optionally recurse into submodules.
97
+
98
+ Will merge to 'master'.
99
+
100
+
101
+* sb/submodule-config-tests (2017-01-12) 2 commits
102
+ - t7411: test lookup of uninitialized submodules
103
+ - t7411: quote URLs
104
+
105
+ Will merge to 'next'.
106
107
43
-* dt/smart-http-detect-server-going-away (2016-11-18) 2 commits
44
- (merged to 'next' on 2016-12-05 at 3ea70d01af)
45
- + upload-pack: optionally allow fetching any sha1
46
- + remote-curl: don't hang when a server dies before any output
108
+* sb/submodule-doc (2017-01-12) 3 commits
109
+ - submodules: add a background story
110
+ - submodule update documentation: don't repeat ourselves
111
+ - submodule documentation: add options to the subcommand
112
48
- Originally merged to 'next' on 2016-11-21
113
+ Needs review.
114
50
- When the http server gives an incomplete response to a smart-http
51
- rpc call, it could lead to client waiting for a full response that
52
- will never come. Teach the client side to notice this condition
53
- and abort the transfer.
115
55
- An improvement counterproposal has failed.
56
- cf. <20161114194049.mktpsvgdhex2f4zv@sigill.intra.peff.net>
116
+* sb/submodule-embed-gitdir (2017-01-12) 1 commit
117
+ - submodule absorbgitdirs: mention in docstring help
118
119
+ Help-text fix.
120
59
-* jc/abbrev-autoscale-config (2016-12-22) 1 commit
60
- (merged to 'next' on 2016-12-27 at 631e4200e2)
61
- + config.abbrev: document the new default that auto-scales
121
+ Will merge to 'next'.
122
63
- Recent update to the default abbreviation length that auto-scales
64
- lacked documentation update, which has been corrected.
123
124
+* sb/submodule-init (2017-01-12) 1 commit
125
+ - submodule update --init: display correct path from submodule
126
67
-* jc/compression-config (2016-11-15) 1 commit
68
- (merged to 'next' on 2016-12-05 at 323769ca07)
69
- + compression: unify pack.compression configuration parsing
127
+ Error message fix.
128
71
- Originally merged to 'next' on 2016-11-23
129
+ Will merge to 'next'.
130
73
- Compression setting for producing packfiles were spread across
74
- three codepaths, one of which did not honor any configuration.
75
- Unify these so that all of them honor core.compression and
76
- pack.compression variables the same way.
131
132
+* vn/diff-ihc-config (2017-01-12) 1 commit
133
+ - diff: add interhunk context config option
134
79
-* jc/git-open-cloexec (2016-11-02) 3 commits
80
- (merged to 'next' on 2016-12-27 at 487682eb6e)
81
- + sha1_file: stop opening files with O_NOATIME
82
- + git_open_cloexec(): use fcntl(2) w/ FD_CLOEXEC fallback
83
- + git_open(): untangle possible NOATIME and CLOEXEC interactions
135
+ "git diff" learned diff.interHunkContext configuration variable
136
+ that gives the default value for its --inter-hunk-context option.
137
85
- The codeflow of setting NOATIME and CLOEXEC on file descriptors Git
86
- opens has been simplified.
87
- We may want to drop the tip one, but we'll see.
138
+ Will merge to 'next'.
139
140
90
-* jc/latin-1 (2016-09-26) 2 commits
91
- (merged to 'next' on 2016-12-05 at fb549caa12)
92
- + utf8: accept "latin-1" as ISO-8859-1
93
- + utf8: refactor code to decide fallback encoding
141
+* ad/bisect-terms (2017-01-13) 1 commit
142
+ - Documentation/bisect: improve on (bad|new) and (good|bad)
143
95
- Originally merged to 'next' on 2016-09-28
144
+ Documentation fix.
145
97
- Some platforms no longer understand "latin-1" that is still seen in
98
- the wild in e-mail headers; replace them with "iso-8859-1" that is
99
- more widely known when conversion fails from/to it.
146
+ Will merge to 'next'.
147
148
102
-* jc/retire-compaction-heuristics (2016-12-23) 1 commit
103
- (merged to 'next' on 2016-12-27 at c69c2f50cf)
104
- + diff: retire "compaction" heuristics
149
+* bw/attr (2017-01-15) 27 commits
150
+ - attr: reformat git_attr_set_direction() function
151
+ - attr: push the bare repo check into read_attr()
152
+ - attr: store attribute stacks in hashmap
153
+ - attr: tighten const correctness with git_attr and match_attr
154
+ - attr: remove maybe-real, maybe-macro from git_attr
155
+ - attr: eliminate global check_all_attr array
156
+ - attr: use hashmap for attribute dictionary
157
+ - attr: change validity check for attribute names to use positive logic
158
+ - attr: pass struct attr_check to collect_some_attrs
159
+ - attr: retire git_check_attrs() API
160
+ - attr: convert git_check_attrs() callers to use the new API
161
+ - attr: convert git_all_attrs() to use "struct attr_check"
162
+ - attr: (re)introduce git_check_attr() and struct attr_check
163
+ - attr: rename function and struct related to checking attributes
164
+ - attr.c: outline the future plans by heavily commenting
165
+ - Documentation/gitattributes.txt: fix a typo
166
+ - attr.c: add push_stack() helper
167
+ - attr: support quoting pathname patterns in C style
168
+ - attr.c: plug small leak in parse_attr_line()
169
+ - attr.c: tighten constness around "git_attr" structure
170
+ - attr.c: simplify macroexpand_one()
171
+ - attr.c: mark where #if DEBUG ends more clearly
172
+ - attr.c: complete a sentence in a comment
173
+ - attr.c: explain the lack of attr-name syntax check in parse_attr()
174
+ - attr.c: update a stale comment on "struct match_attr"
175
+ - attr.c: use strchrnul() to scan for one line
176
+ - commit.c: use strchrnul() to scan for one line
177
106
- "git diff" and its family had two experimental heuristics to shift
107
- the contents of a hunk to make the patch easier to read. One of
108
- them turns out to be better than the other, so leave only the
109
- "--indent-heuristic" option and remove the other one.
178
+ The gitattributes machinery is being taught to work better in a
179
+ multi-threaded environment.
180
181
+ Needs review.
182
112
-* jt/fetch-no-redundant-tag-fetch-map (2016-11-11) 1 commit
113
- (merged to 'next' on 2016-12-05 at 432f9469a7)
114
- + fetch: do not redundantly calculate tag refmap
183
116
- Originally merged to 'next' on 2016-11-16
184
+* jk/loose-object-fsck (2017-01-15) 6 commits
185
+ - fsck: detect trailing garbage in all object types
186
+ - fsck: parse loose object paths directly
187
+ - sha1_file: add read_loose_object() function
188
+ - t1450: test fsck of packed objects
189
+ - sha1_file: fix error message for alternate objects
190
+ - t1450: refactor loose-object removal
191
118
- Code cleanup to avoid using redundant refspecs while fetching with
119
- the --tags option.
192
+ "git fsck" inspects loose objects more carefully now.
193
194
+ Needs review.
195
122
-* mh/fast-import-notes-fix-new (2016-12-20) 1 commit
123
- (merged to 'next' on 2016-12-27 at b63805e6f6)
124
- + fast-import: properly fanout notes when tree is imported
196
126
- "git fast-import" sometimes mishandled while rebalancing notes
127
- tree, which has been fixed.
197
+* rh/diff-orderfile-doc (2017-01-15) 2 commits
198
+ - diff: document the format of the -O (diff.orderFile) file
199
+ - diff: document behavior of relative diff.orderFile
200
201
+ Documentation fix.
202
130
-* mm/gc-safety-doc (2016-11-16) 1 commit
131
- (merged to 'next' on 2016-12-05 at 031ecc1886)
132
- + git-gc.txt: expand discussion of races with other processes
203
+ Will merge to 'next'.
204
134
- Originally merged to 'next' on 2016-11-17
205
136
- Doc update.
206
+* sb/cd-then-git-can-be-written-as-git-c (2017-01-13) 1 commit
207
+ - lib-submodule-update.sh: reduce use of subshell by using "git -C"
208
209
+ Test clean-up.
210
139
-* mm/push-social-engineering-attack-doc (2016-11-14) 1 commit
140
- (merged to 'next' on 2016-12-05 at 9a2b5bd1a9)
141
- + doc: mention transfer data leaks in more places
211
+ Will merge to 'next'.
212
143
- Originally merged to 'next' on 2016-11-16
213
145
- Doc update on fetching and pushing.
214
+* vn/xdiff-func-context (2017-01-15) 1 commit
215
+ - xdiff -W: relax end-of-file function detection
216
217
+ "git diff -W" has been taught to handle the case where a new
218
+ function is added at the end of the file better.
219
148
-* nd/config-misc-fixes (2016-12-22) 3 commits
149
- (merged to 'next' on 2016-12-27 at 6be64a8671)
150
- + config.c: handle lock file in error case in git_config_rename_...
151
- + config.c: rename label unlock_and_out
152
- + config.c: handle error case for fstat() calls
220
+ Will hold.
221
+ An follow-up change to go back from the line that matches the
222
+ funcline to show comments before the function definition is still
223
+ being discussed.
224
154
- Leakage of lockfiles in the config subsystem has been fixed.
225
226
+* ws/request-pull-code-cleanup (2017-01-15) 1 commit
227
+ - request-pull: drop old USAGE stuff
228
157
-* sb/submodule-embed-gitdir (2016-12-27) 7 commits
158
- (merged to 'next' on 2016-12-27 at 2b43c15479)
159
- + worktree: initialize return value for submodule_uses_worktrees
160
- (merged to 'next' on 2016-12-21 at e6cdbcf013)
161
- + submodule: add absorb-git-dir function
162
- + move connect_work_tree_and_git_dir to dir.h
163
- + worktree: check if a submodule uses worktrees
164
- + test-lib-functions.sh: teach test_commit -C <dir>
165
- + submodule helper: support super prefix
166
- + submodule: use absolute path for computing relative path connecting
167
- (this branch is used by sb/submodule-rm-absorb.)
229
+ Code clean-up.
230
169
- A new submodule helper "git submodule embedgitdirs" to make it
170
- easier to move embedded .git/ directory for submodules in a
171
- superproject to .git/modules/ (and point the latter with the former
172
- that is turned into a "gitdir:" file) has been added.
231
+ Will merge to 'next'.
232
233
--------------------------------------------------
175
-[New Topics]
234
+[Stalled]
235
+
236
+* jk/nofollow-attr-ignore (2016-11-02) 5 commits
237
+ . exclude: do not respect symlinks for in-tree .gitignore
238
+ . attr: do not respect symlinks for in-tree .gitattributes
239
+ . exclude: convert "check_index" into a flags field
240
+ . attr: convert "macro_ok" into a flags field
241
+ . add open_nofollow() helper
242
+
243
+ As we do not follow symbolic links when reading control files like
244
+ .gitignore and .gitattributes from the index, match the behaviour
245
+ and not follow symbolic links when reading them from the working
246
+ tree. This also tightens security a bit by not leaking contents of
247
+ an unrelated file in the error messages when it is pointed at by
248
+ one of these files that is a symbolic link.
249
+
250
+ Perhaps we want to cover .gitmodules too with the same mechanism?
251
+
252
+ Ejected for now.
253
+
254
+
255
+* jc/bundle (2016-03-03) 6 commits
256
+ - index-pack: --clone-bundle option
257
+ - Merge branch 'jc/index-pack' into jc/bundle
258
+ - bundle v3: the beginning
259
+ - bundle: keep a copy of bundle file name in the in-core bundle header
260
+ - bundle: plug resource leak
261
+ - bundle doc: 'verify' is not about verifying the bundle
262
+
263
+ The beginning of "split bundle", which could be one of the
264
+ ingredients to allow "git clone" traffic off of the core server
265
+ network to CDN.
266
+
267
+ While I think it would make it easier for people to experiment and
268
+ build on if the topic is merged to 'next', I am at the same time a
269
+ bit reluctant to merge an unproven new topic that introduces a new
270
+ file format, which we may end up having to support til the end of
271
+ time. It is likely that to support a "prime clone from CDN", it
272
+ would need a lot more than just "these are the heads and the pack
273
+ data is over there", so this may not be sufficient.
274
+
275
+ Will discard.
276
+
277
+
278
+* jc/diff-b-m (2015-02-23) 5 commits
279
+ . WIPWIP
280
+ . WIP: diff-b-m
281
+ - diffcore-rename: allow easier debugging
282
+ - diffcore-rename.c: add locate_rename_src()
283
+ - diffcore-break: allow debugging
284
+
285
+ "git diff -B -M" produced incorrect patch when the postimage of a
286
+ completely rewritten file is similar to the preimage of a removed
287
+ file; such a resulting file must not be expressed as a rename from
288
+ other place.
289
+
290
+ The fix in this patch is broken, unfortunately.
291
+
292
+ Will discard.
293
+
294
+--------------------------------------------------
295
+[Cooking]
296
297
* ls/p4-retry-thrice (2016-12-29) 1 commit
298
(merged to 'next' on 2017-01-10 at c733e27410)
@@ -260,7 +380,9 @@ of the repositories listed at
380
Will merge to 'master'.
381
382
263
-* js/asciidoctor-tweaks (2017-01-07) 1 commit
383
+* js/asciidoctor-tweaks (2017-01-13) 2 commits
384
+ (merged to 'next' on 2017-01-15 at 8553c6e513)
385
+ + asciidoctor: fix user-manual to be built by `asciidoctor`
386
(merged to 'next' on 2017-01-10 at 087da7b7c1)
387
+ giteveryday: unbreak rendering with AsciiDoctor
388
@@ -280,7 +402,11 @@ of the repositories listed at
402
Will merge to 'master'.
403
404
283
-* sb/remove-gitview (2017-01-07) 1 commit
405
+* sb/remove-gitview (2017-01-13) 4 commits
406
+ (merged to 'next' on 2017-01-15 at 7c9eae479e)
407
+ + doc: git-gui browser does not default to HEAD
408
+ + doc: gitk: add the upstream repo location
409
+ + doc: gitk: remove gitview reference
410
(merged to 'next' on 2017-01-10 at dcb3abd146)
411
+ contrib: remove gitview
412
@@ -370,67 +496,6 @@ of the repositories listed at
496
497
Will merge to 'master'.
498
373
---------------------------------------------------
374
-[Stalled]
375
-
376
-* jk/nofollow-attr-ignore (2016-11-02) 5 commits
377
- - exclude: do not respect symlinks for in-tree .gitignore
378
- - attr: do not respect symlinks for in-tree .gitattributes
379
- - exclude: convert "check_index" into a flags field
380
- - attr: convert "macro_ok" into a flags field
381
- - add open_nofollow() helper
382
-
383
- As we do not follow symbolic links when reading control files like
384
- .gitignore and .gitattributes from the index, match the behaviour
385
- and not follow symbolic links when reading them from the working
386
- tree. This also tightens security a bit by not leaking contents of
387
- an unrelated file in the error messages when it is pointed at by
388
- one of these files that is a symbolic link.
389
-
390
- Perhaps we want to cover .gitmodules too with the same mechanism?
391
-
392
-
393
-* jc/bundle (2016-03-03) 6 commits
394
- - index-pack: --clone-bundle option
395
- - Merge branch 'jc/index-pack' into jc/bundle
396
- - bundle v3: the beginning
397
- - bundle: keep a copy of bundle file name in the in-core bundle header
398
- - bundle: plug resource leak
399
- - bundle doc: 'verify' is not about verifying the bundle
400
-
401
- The beginning of "split bundle", which could be one of the
402
- ingredients to allow "git clone" traffic off of the core server
403
- network to CDN.
404
-
405
- While I think it would make it easier for people to experiment and
406
- build on if the topic is merged to 'next', I am at the same time a
407
- bit reluctant to merge an unproven new topic that introduces a new
408
- file format, which we may end up having to support til the end of
409
- time. It is likely that to support a "prime clone from CDN", it
410
- would need a lot more than just "these are the heads and the pack
411
- data is over there", so this may not be sufficient.
412
-
413
- Will discard.
414
-
415
-
416
-* jc/diff-b-m (2015-02-23) 5 commits
417
- . WIPWIP
418
- . WIP: diff-b-m
419
- - diffcore-rename: allow easier debugging
420
- - diffcore-rename.c: add locate_rename_src()
421
- - diffcore-break: allow debugging
422
-
423
- "git diff -B -M" produced incorrect patch when the postimage of a
424
- completely rewritten file is similar to the preimage of a removed
425
- file; such a resulting file must not be expressed as a rename from
426
- other place.
427
-
428
- The fix in this patch is broken, unfortunately.
429
-
430
- Will discard.
431
-
432
---------------------------------------------------
433
-[Cooking]
499
500
* nd/worktree-move (2017-01-09) 6 commits
501
- worktree remove: new command
@@ -755,55 +820,9 @@ of the repositories listed at
820
cf. <20161007210721.20437-1-santiago@nyu.edu>
821
822
758
-* sb/attr (2016-11-11) 35 commits
759
- . completion: clone can initialize specific submodules
760
- . clone: add --init-submodule=<pathspec> switch
761
- . submodule update: add `--init-default-path` switch
762
- . pathspec: allow escaped query values
763
- . pathspec: allow querying for attributes
764
- . pathspec: move prefix check out of the inner loop
765
- . pathspec: move long magic parsing out of prefix_pathspec
766
- - Documentation: fix a typo
767
- - attr: keep attr stack for each check
768
- - attr: convert to new threadsafe API
769
- - attr: make git_check_attr_counted static
770
- - attr.c: outline the future plans by heavily commenting
771
- - attr.c: always pass check[] to collect_some_attrs()
772
- - attr.c: introduce empty_attr_check_elems()
773
- - attr.c: correct ugly hack for git_all_attrs()
774
- - attr.c: rename a local variable check
775
- - attr.c: pass struct git_attr_check down the callchain
776
- - attr.c: add push_stack() helper
777
- - attr: support quoting pathname patterns in C style
778
- - attr: expose validity check for attribute names
779
- - attr: add counted string version of git_check_attr()
780
- - attr: retire git_check_attrs() API
781
- - attr: convert git_check_attrs() callers to use the new API
782
- - attr: convert git_all_attrs() to use "struct git_attr_check"
783
- - attr: (re)introduce git_check_attr() and struct git_attr_check
784
- - attr: rename function and struct related to checking attributes
785
- - attr.c: plug small leak in parse_attr_line()
786
- - attr.c: tighten constness around "git_attr" structure
787
- - attr.c: simplify macroexpand_one()
788
- - attr.c: mark where #if DEBUG ends more clearly
789
- - attr.c: complete a sentence in a comment
790
- - attr.c: explain the lack of attr-name syntax check in parse_attr()
791
- - attr.c: update a stale comment on "struct match_attr"
792
- - attr.c: use strchrnul() to scan for one line
793
- - commit.c: use strchrnul() to scan for one line
794
-
795
- The attributes API has been updated so that it can later be
796
- optimized using the knowledge of which attributes are queried.
797
- Building on top of the updated API, the pathspec machinery learned
798
- to select only paths with given attributes set.
799
-
800
- The parts near the tip about pathspec would need to work better
801
- with bw/pathspec-cleanup topic and has been dropped for now.
802
-
803
-
804
-* sg/fix-versioncmp-with-common-suffix (2016-12-08) 8 commits
823
+* sg/fix-versioncmp-with-common-suffix (2017-01-12) 8 commits
824
- versioncmp: generalize version sort suffix reordering
806
- - squash! versioncmp: use earliest-longest contained suffix to determine sorting order
825
+ - versioncmp: factor out helper for suffix matching
826
- versioncmp: use earliest-longest contained suffix to determine sorting order
827
- versioncmp: cope with common part overlapping with prerelease suffix
828
- versioncmp: pass full tagnames to swap_prereleases()
@@ -816,8 +835,7 @@ of the repositories listed at
835
same release were present (e.g. when 2.0, 2.0-beta1, and 2.0-beta2
836
are there and the code needs to compare 2.0-beta1 and 2.0-beta2).
837
819
- Will merge to 'next' after squashing.
820
- cf. <20161208142401.1329-1-szeder.dev@gmail.com>
838
+ Will merge to 'next'.
839
840
841
* jc/merge-drop-old-syntax (2015-04-29) 1 commit
@@ -835,92 +853,46 @@ of the repositories listed at
853
--------------------------------------------------
854
[Discarded]
855
838
-* rs/unpack-trees-reduce-file-scope-global (2016-12-31) 1 commit
839
- . unpack-trees: move checkout state into check_updates
840
-
841
- Code cleanup.
842
-
843
- Superseded by sb/unpack-trees-cleanup
844
-
845
-
846
-* jc/reset-unmerge (2016-10-24) 1 commit
847
- . reset: --unmerge
848
-
849
- After "git add" is run prematurely during a conflict resolution,
850
- "git diff" can no longer be used as a way to sanity check by
851
- looking at the combined diff. "git reset" learned a new
852
- "--unmerge" option to recover from this situation.
853
-
854
- This may not be needed, given that update-index has a similar
855
- option.
856
-
857
-
858
-* jc/merge-base-fp-only (2016-10-19) 8 commits
859
- . merge-base: fp experiment
860
- . merge: allow to use only the fp-only merge bases
861
- . merge-base: limit the output to bases that are on first-parent chain
862
- . merge-base: mark bases that are on first-parent chain
863
- . merge-base: expose get_merge_bases_many_0() a bit more
864
- . merge-base: stop moving commits around in remove_redundant()
865
- . sha1_name: remove ONELINE_SEEN bit
866
- . commit: simplify fastpath of merge-base
867
-
868
- An experiment of merge-base that ignores common ancestors that are
869
- not on the first parent chain.
870
-
871
- The whole premise feels wrong.
872
-
873
-
874
-* tb/convert-stream-check (2016-10-27) 2 commits
875
- . convert.c: stream and fast search for binary
876
- . read-cache: factor out get_sha1_from_index() helper
877
-
878
- End-of-line conversion sometimes needs to see if the current blob
879
- in the index has NULs and CRs to base its decision. We used to
880
- always get a full statistics over the blob, but in many cases we
881
- can return early when we have seen "enough" (e.g. if we see a
882
- single NUL, the blob will be handled as binary). The codepaths
883
- have been optimized by using streaming interface.
884
-
885
- Retracted.
886
- cf. <20161102071646.GA5094@tb-raspi>
887
-
888
-
889
-* mh/connect (2016-06-06) 10 commits
890
- . connect: [host:port] is legacy for ssh
891
- . connect: move ssh command line preparation to a separate function
892
- . connect: actively reject git:// urls with a user part
893
- . connect: change the --diag-url output to separate user and host
894
- . connect: make parse_connect_url() return the user part of the url as a separate value
895
- . connect: group CONNECT_DIAG_URL handling code
896
- . connect: make parse_connect_url() return separated host and port
897
- . connect: re-derive a host:port string from the separate host and port variables
898
- . connect: call get_host_and_port() earlier
899
- . connect: document why we sometimes call get_port after get_host_and_port
900
-
901
- Rewrite Git-URL parsing routine (hopefully) without changing any
902
- behaviour.
903
-
904
- It has been months without any support.
905
-
906
-
907
-* ec/annotate-deleted (2015-11-20) 1 commit
908
- . annotate: skip checking working tree if a revision is provided
909
-
910
- Usability fix for annotate-specific "<file> <rev>" syntax with deleted
911
- files.
912
-
913
- Has been waiting for a review for too long without seeing anything.
914
-
915
-
916
-* dk/gc-more-wo-pack (2016-01-13) 4 commits
917
- . gc: clean garbage .bitmap files from pack dir
918
- . t5304: ensure non-garbage files are not deleted
919
- . t5304: test .bitmap garbage files
920
- . prepare_packed_git(): find more garbage
856
+* sb/attr (2016-11-11) 35 commits
857
+ . completion: clone can initialize specific submodules
858
+ . clone: add --init-submodule=<pathspec> switch
859
+ . submodule update: add `--init-default-path` switch
860
+ . pathspec: allow escaped query values
861
+ . pathspec: allow querying for attributes
862
+ . pathspec: move prefix check out of the inner loop
863
+ . pathspec: move long magic parsing out of prefix_pathspec
864
+ . Documentation: fix a typo
865
+ . attr: keep attr stack for each check
866
+ . attr: convert to new threadsafe API
867
+ . attr: make git_check_attr_counted static
868
+ . attr.c: outline the future plans by heavily commenting
869
+ . attr.c: always pass check[] to collect_some_attrs()
870
+ . attr.c: introduce empty_attr_check_elems()
871
+ . attr.c: correct ugly hack for git_all_attrs()
872
+ . attr.c: rename a local variable check
873
+ . attr.c: pass struct git_attr_check down the callchain
874
+ . attr.c: add push_stack() helper
875
+ . attr: support quoting pathname patterns in C style
876
+ . attr: expose validity check for attribute names
877
+ . attr: add counted string version of git_check_attr()
878
+ . attr: retire git_check_attrs() API
879
+ . attr: convert git_check_attrs() callers to use the new API
880
+ . attr: convert git_all_attrs() to use "struct git_attr_check"
881
+ . attr: (re)introduce git_check_attr() and struct git_attr_check
882
+ . attr: rename function and struct related to checking attributes
883
+ . attr.c: plug small leak in parse_attr_line()
884
+ . attr.c: tighten constness around "git_attr" structure
885
+ . attr.c: simplify macroexpand_one()
886
+ . attr.c: mark where #if DEBUG ends more clearly
887
+ . attr.c: complete a sentence in a comment
888
+ . attr.c: explain the lack of attr-name syntax check in parse_attr()
889
+ . attr.c: update a stale comment on "struct match_attr"
890
+ . attr.c: use strchrnul() to scan for one line
891
+ . commit.c: use strchrnul() to scan for one line
892
922
- Follow-on to dk/gc-idx-wo-pack topic, to clean up stale
923
- .bitmap and .keep files.
893
+ The attributes API has been updated so that it can later be
894
+ optimized using the knowledge of which attributes are queried.
895
+ Building on top of the updated API, the pathspec machinery learned
896
+ to select only paths with given attributes set.
897
925
- Has been waiting for a reroll for too long.
926
- cf. <xmqq60ypbeng.fsf@gitster.mtv.corp.google.com>
898
+ Superseded by bw/attr topic.