What's cooking (2017/08 #06)
Junio C Hamano committed
Aug 24, 2017 at 11:27 UTC
522e1fffa3bc13538959845526015f80b7c33139
1 file changed
+293
-506
whats-cooking.txt
+293
-506
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Aug 2017, #05; Tue, 22)
4
-X-master-at: f0294f474e16840f4efb3f4da3329ba46f53efa7
5
-X-next-at: 238414bde168866658281957364b80816e9be329
3
+Subject: What's cooking in git.git (Aug 2017, #06; Thu, 24)
4
+X-master-at: 3dc57ebfbd1bf30b9a6987f551af9b74641382a9
5
+X-next-at: eb51544efa2177e71821426b32f8c0299705a996
6
7
-What's cooking in git.git (Aug 2017, #05; Tue, 22)
7
+What's cooking in git.git (Aug 2017, #06; Thu, 24)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,13 +12,12 @@ 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
-The second batch of topics are in. This cycle is going a bit slower
16
-than the previous one (as of mid-week #3 of this cycle, we have
17
-about 200 patches on 'master' since v2.14, compared to about 300
18
-patches in the cycle towards v2.14 at a similar point in the cycle),
19
-but hopefully we can catch up eventually.
20
-
21
-I am planning to be offline most of the next week, by the way.
15
+As I am preparing to go offline next week for about a week, a
16
+handful of topics have been merged to 'master' and 'next' is getting
17
+thinner. There are a few topics of importance that are still only
18
+on the mailing list archive and not in my tree that I'd like to
19
+review them and help them get into a reasonable shape, but that
20
+hasn't happened yet.
21
22
You can find the changes described here in the integration branches
23
of the repositories listed at
@@ -28,408 +27,244 @@ of the repositories listed at
27
--------------------------------------------------
28
[Graduated to "master"]
29
31
-* ab/ref-filter-no-contains (2017-08-07) 1 commit
32
- (merged to 'next' on 2017-08-18 at 7ec9d3d3a2)
33
- + tests: don't give unportable ">" to "test" built-in, use -gt
34
-
35
- A test fix.
36
-
37
-
38
-* bw/clone-recursive-quiet (2017-08-04) 1 commit
39
- (merged to 'next' on 2017-08-14 at fbd4473ce4)
40
- + clone: teach recursive clones to respect -q
41
-
42
- "git clone --recurse-submodules --quiet" did not pass the quiet
43
- option down to submodules.
44
-
30
+* ah/doc-empty-string-is-false (2017-08-14) 1 commit
31
+ (merged to 'next' on 2017-08-19 at df47ffeffa)
32
+ + doc: clarify "config --bool" behaviour with empty string
33
46
-* bw/grep-recurse-submodules (2017-08-02) 10 commits
47
- (merged to 'next' on 2017-08-14 at dcfcfc94af)
48
- + grep: recurse in-process using 'struct repository'
49
- + submodule: merge repo_read_gitmodules and gitmodules_config
50
- + submodule: check for unmerged .gitmodules outside of config parsing
51
- + submodule: check for unstaged .gitmodules outside of config parsing
52
- + submodule: remove fetch.recursesubmodules from submodule-config parsing
53
- + submodule: remove submodule.fetchjobs from submodule-config parsing
54
- + config: add config_from_gitmodules
55
- + cache.h: add GITMODULES_FILE macro
56
- + repository: have the_repository use the_index
57
- + repo_read_index: don't discard the index
58
- (this branch is used by bw/submodule-config-cleanup.)
34
+ Doc update.
35
60
- "git grep --recurse-submodules" has been reworked to give a more
61
- consistent output across submodule boundary (and do its thing
62
- without having to fork a separate process).
36
37
+* as/grep-quiet-no-match-exit-code-fix (2017-08-17) 1 commit
38
+ (merged to 'next' on 2017-08-19 at 362f88fb41)
39
+ + git-grep: correct exit code with --quiet and -L
40
65
-* bw/push-options-recursively-to-submodules (2017-07-20) 1 commit
66
- (merged to 'next' on 2017-08-14 at 421dc09fd0)
67
- + submodule--helper: teach push-check to handle HEAD
41
+ "git grep -L" and "git grep --quiet -L" reported different exit
42
+ codes; this has been corrected.
43
69
- "git push --recurse-submodules $there HEAD:$target" was not
70
- propagated down to the submodules, but now it is.
44
45
+* cc/subprocess-handshake-missing-capabilities (2017-08-16) 1 commit
46
+ (merged to 'next' on 2017-08-19 at c512710fda)
47
+ + sub-process: print the cmd when a capability is unsupported
48
73
-* jc/perl-git-comment-typofix (2017-08-07) 1 commit
74
- (merged to 'next' on 2017-08-18 at b2ad043e6a)
75
- + perl/Git.pm: typofix in a comment
49
+ When handshake with a subprocess filter notices that the process
50
+ asked for an unknown capability, Git did not report what program
51
+ the offending subprocess was running. This has been corrected.
52
77
- A comment fix.
53
+ We may want a follow-up fix to tighten the error checking, though.
54
55
80
-* jk/drop-sha1-entry-pos (2017-08-09) 1 commit
81
- (merged to 'next' on 2017-08-18 at 3a4d9bcf12)
82
- + sha1_file: drop experimental GIT_USE_LOOKUP search
83
- (this branch is used by jt/packmigrate.)
56
+* hv/t5526-andand-chain-fix (2017-08-17) 1 commit
57
+ (merged to 'next' on 2017-08-19 at fa95053653)
58
+ + t5526: fix some broken && chains
59
85
- Code clean-up.
60
+ Test fix.
61
62
88
-* jk/hashcmp-memcmp (2017-08-09) 1 commit
89
- (merged to 'next' on 2017-08-18 at 27c4aa5520)
90
- + hashcmp: use memcmp instead of open-coded loop
63
+* jc/diff-sane-truncate-no-more (2017-08-17) 1 commit
64
+ (merged to 'next' on 2017-08-19 at 3ba3980eed)
65
+ + diff: retire sane_truncate_fn
66
67
Code clean-up.
68
69
95
-* ma/parse-maybe-bool (2017-08-07) 6 commits
96
- (merged to 'next' on 2017-08-18 at ba22bb836c)
97
- + parse_decoration_style: drop unused argument `var`
98
- + treewide: deprecate git_config_maybe_bool, use git_parse_maybe_bool
99
- + config: make git_{config,parse}_maybe_bool equivalent
100
- + config: introduce git_parse_maybe_bool_text
101
- + t5334: document that git push --signed=1 does not work
102
- + Doc/git-{push,send-pack}: correct --sign= to --signed=
103
-
104
- Code clean-up.
105
-
70
+* jc/simplify-progress (2017-08-19) 1 commit
71
+ (merged to 'next' on 2017-08-22 at 9077ff6912)
72
+ + progress: simplify "delayed" progress API
73
107
-* mf/no-dashed-subcommands (2017-08-07) 1 commit
108
- (merged to 'next' on 2017-08-18 at 05365af2ff)
109
- + scripts: use "git foo" not "git-foo"
74
+ The API to start showing progress meter after a short delay has
75
+ been simplified.
76
111
- Code clean-up.
77
78
+* jk/doc-the-this (2017-08-20) 1 commit
79
+ (merged to 'next' on 2017-08-22 at 6625e50025)
80
+ + doc: fix typo in sendemail.identity
81
114
-* mh/packed-ref-store (2017-08-17) 32 commits
115
- (merged to 'next' on 2017-08-18 at 14c58936e1)
116
- + files-backend: cheapen refname_available check when locking refs
117
- (merged to 'next' on 2017-08-14 at 987b76d302)
118
- + packed_ref_store: handle a packed-refs file that is a symlink
119
- + read_packed_refs(): die if `packed-refs` contains bogus data
120
- + t3210: add some tests of bogus packed-refs file contents
121
- + repack_without_refs(): don't lock or unlock the packed refs
122
- + commit_packed_refs(): remove call to `packed_refs_unlock()`
123
- + clear_packed_ref_cache(): don't protest if the lock is held
124
- + packed_refs_unlock(), packed_refs_is_locked(): new functions
125
- + packed_refs_lock(): report errors via a `struct strbuf *err`
126
- + packed_refs_lock(): function renamed from lock_packed_refs()
127
- + commit_packed_refs(): use a staging file separate from the lockfile
128
- + commit_packed_refs(): report errors rather than dying
129
- + packed_ref_store: make class into a subclass of `ref_store`
130
- + packed-backend: new module for handling packed references
131
- + packed_read_raw_ref(): new function, replacing `resolve_packed_ref()`
132
- + packed_ref_store: support iteration
133
- + packed_peel_ref(): new function, extracted from `files_peel_ref()`
134
- + repack_without_refs(): take a `packed_ref_store *` parameter
135
- + get_packed_ref(): take a `packed_ref_store *` parameter
136
- + rollback_packed_refs(): take a `packed_ref_store *` parameter
137
- + commit_packed_refs(): take a `packed_ref_store *` parameter
138
- + lock_packed_refs(): take a `packed_ref_store *` parameter
139
- + add_packed_ref(): take a `packed_ref_store *` parameter
140
- + get_packed_refs(): take a `packed_ref_store *` parameter
141
- + get_packed_ref_cache(): take a `packed_ref_store *` parameter
142
- + validate_packed_ref_cache(): take a `packed_ref_store *` parameter
143
- + clear_packed_ref_cache(): take a `packed_ref_store *` parameter
144
- + packed_ref_store: move `packed_refs_lock` member here
145
- + packed_ref_store: move `packed_refs_path` here
146
- + packed_ref_store: new struct
147
- + add_packed_ref(): teach function to overwrite existing refs
148
- + t1408: add a test of stale packed refs covered by loose refs
149
-
150
- The "ref-store" code reorganization continues.
151
-
152
-
153
-* pw/am-signoff (2017-08-08) 1 commit
154
- (merged to 'next' on 2017-08-18 at 7678ed822c)
155
- + am: fix signoff when other trailers are present
156
-
157
- "git am -s" has been taught that some input may end with a trailer
158
- block that is not Signed-off-by: and it should refrain from adding
159
- an extra blank line before adding a new sign-off in such a case.
160
-
161
-
162
-* pw/sequence-rerere-autoupdate (2017-08-02) 6 commits
163
- (merged to 'next' on 2017-08-14 at 010cbb0cbe)
164
- + cherry-pick/revert: reject --rerere-autoupdate when continuing
165
- + cherry-pick/revert: remember --rerere-autoupdate
166
- + t3504: use test_commit
167
- + rebase -i: honor --rerere-autoupdate
168
- + rebase: honor --rerere-autoupdate
169
- + am: remember --rerere-autoupdate setting
170
-
171
- Commands like "git rebase" accepted the --rerere-autoupdate option
172
- from the command line, but did not always use it. This has been
173
- fixed.
82
+ Doc clean-up.
83
84
176
-* rj/add-chmod-error-message (2017-08-09) 1 commit
177
- (merged to 'next' on 2017-08-18 at ba2afb696a)
178
- + builtin/add: add detail to a 'cannot chmod' error message
85
+* jt/sha1-file-cleanup (2017-08-11) 2 commits
86
+ (merged to 'next' on 2017-08-19 at 93f4c94578)
87
+ + sha1_file: remove read_packed_sha1()
88
+ + sha1_file: set whence in storage-specific info fn
89
+ (this branch is used by jt/packmigrate.)
90
180
- Message fix.
91
+ Preparatory code clean-up.
92
93
183
-* rs/apply-lose-prefix-length (2017-08-09) 1 commit
184
- (merged to 'next' on 2017-08-18 at 6ce0dbb3f0)
185
- + apply: remove prefix_length member from apply_state
94
+* kd/stash-with-bash-4.4 (2017-08-14) 1 commit
95
+ (merged to 'next' on 2017-08-19 at 79b2c4b052)
96
+ + stash: prevent warning about null bytes in input
97
187
- Code clean-up.
98
+ bash 4.4 or newer gave a warning on NUL byte in command
99
+ substitution done in "git stash"; this has been squelched.
100
101
190
-* rs/find-pack-entry-bisection (2017-08-09) 1 commit
191
- (merged to 'next' on 2017-08-18 at b4130177a9)
192
- + sha1_file: avoid comparison if no packed hash matches the first byte
193
- (this branch is used by jt/packmigrate.)
102
+* ks/prepare-commit-msg-sample-fix (2017-08-14) 1 commit
103
+ (merged to 'next' on 2017-08-19 at e75c30de64)
104
+ + hook: use correct logical variable
105
195
- Code clean-up.
106
+ An "oops" fix to a topic that is already in 'master'.
107
108
198
-* rs/fsck-obj-leakfix (2017-08-10) 1 commit
199
- (merged to 'next' on 2017-08-18 at 77e3d111ef)
200
- + fsck: free buffers on error in fsck_obj()
109
+* kw/commit-keep-index-when-pre-commit-is-not-run (2017-08-16) 1 commit
110
+ (merged to 'next' on 2017-08-19 at 2b5a25e5ae)
111
+ + commit: skip discarding the index if there is no pre-commit hook
112
202
- Memory leak in an error codepath has been plugged.
113
+ "git commit" used to discard the index and re-read from the filesystem
114
+ just in case the pre-commit hook has updated it in the middle; this
115
+ has been optimized out when we know we do not run the pre-commit hook.
116
117
205
-* rs/in-obsd-basename-dirname-take-const (2017-08-07) 1 commit
206
- (merged to 'next' on 2017-08-18 at c739077e3b)
207
- + test-path-utils: handle const parameter of basename and dirname
118
+* kw/rebase-progress (2017-08-14) 2 commits
119
+ (merged to 'next' on 2017-08-19 at 1958f378dd)
120
+ + rebase: turn on progress option by default for format-patch
121
+ + format-patch: have progress option while generating patches
122
209
- Portability fix.
123
+ "git rebase", especially when it is run by mistake and ends up
124
+ trying to replay many changes, spent long time in silence. The
125
+ command has been taught to show progress report when it spends
126
+ long time preparing these many changes to replay (which would give
127
+ the user a chance to abort with ^C).
128
129
212
-* rs/merge-microcleanup (2017-08-10) 1 commit
213
- (merged to 'next' on 2017-08-18 at 79ba7d301d)
214
- + merge: use skip_prefix()
130
+* lg/merge-signoff (2017-07-25) 1 commit
131
+ (merged to 'next' on 2017-08-19 at cb53d7b026)
132
+ + merge: add a --signoff flag
133
216
- Code clean-up.
134
+ "git merge" learned a "--signoff" option to add the Signed-off-by:
135
+ trailer with the committer's name.
136
137
219
-* rs/obsd-getcwd-workaround (2017-08-07) 1 commit
220
- (merged to 'next' on 2017-08-18 at adb98cfe0c)
221
- + t0001: skip test with restrictive permissions if getpwd(3) respects them
138
+* mg/format-ref-doc-fix (2017-08-18) 2 commits
139
+ (merged to 'next' on 2017-08-19 at 6490525c54)
140
+ + Documentation/git-for-each-ref: clarify peeling of tags for --format
141
+ + Documentation: use proper wording for ref format strings
142
223
- Test portability fix for BSDs.
143
+ Doc fix.
144
145
226
-* rs/strbuf-getwholeline-fix (2017-08-10) 1 commit
227
- (merged to 'next' on 2017-08-18 at 5f879d8261)
228
- + strbuf: clear errno before calling getdelim(3)
146
+* nm/stash-untracked (2017-08-11) 1 commit
147
+ (merged to 'next' on 2017-08-19 at 70990d7eb3)
148
+ + stash: clean untracked files before reset
149
230
- A helper function to read a single whole line into strbuf
231
- mistakenly triggered OOM error at EOF under certain conditions,
232
- which has been fixed.
150
+ "git stash -u" used the contents of the committed version of the
151
+ ".gitignore" file to decide which paths are ignored, even when the
152
+ file has local changes. The command has been taught to instead use
153
+ the locally modified contents.
154
155
235
-* rs/t3700-clean-leftover (2017-08-08) 1 commit
236
- (merged to 'next' on 2017-08-18 at 12232a8cd3)
237
- + t3700: fix broken test under !POSIXPERM
156
+* rs/commit-h-single-parent-cleanup (2017-08-19) 1 commit
157
+ (merged to 'next' on 2017-08-22 at 7db01c4035)
158
+ + commit: remove unused inline function single_parent()
159
239
- A test fix.
160
+ Code clean-up.
161
162
242
-* rs/t4062-obsd (2017-08-09) 1 commit
243
- (merged to 'next' on 2017-08-18 at 02bff42d86)
244
- + t4062: use less than 256 repetitions in regex
163
+* rs/object-id (2017-08-14) 1 commit
164
+ (merged to 'next' on 2017-08-19 at 0f7283cd19)
165
+ + tree-walk: convert fill_tree_descriptor() to object_id
166
246
- Test portability fix.
167
+ Conversion from uchar[20] to struct object_id continues.
168
169
249
-* rs/unpack-entry-leakfix (2017-08-10) 1 commit
250
- (merged to 'next' on 2017-08-18 at 1e7d8f54b1)
251
- + sha1_file: release delta_stack on error in unpack_entry()
252
- (this branch is used by jt/packmigrate.)
170
+* rs/t1002-do-not-use-sum (2017-08-15) 1 commit
171
+ (merged to 'next' on 2017-08-19 at 15b2a5f21b)
172
+ + t1002: stop using sum(1)
173
254
- Memory leak in an error codepath has been plugged.
174
+ Test simplification.
175
176
257
-* rs/win32-syslog-leakfix (2017-08-10) 1 commit
258
- (merged to 'next' on 2017-08-18 at 011eccb7bd)
259
- + win32: plug memory leak on realloc() failure in syslog()
177
+* sb/sha1-file-cleanup (2017-08-15) 1 commit
178
+ (merged to 'next' on 2017-08-19 at 85898d1e7c)
179
+ + sha1_file: make read_info_alternates static
180
261
- Memory leak in an error codepath has been plugged.
181
+ Code clean-up.
182
183
264
-* sb/retire-t1200 (2017-08-10) 1 commit
265
- (merged to 'next' on 2017-08-18 at d436f9bbce)
266
- + t1200: remove t1200-tutorial.sh
184
+* sb/submodule-parallel-update (2017-08-17) 1 commit
185
+ (merged to 'next' on 2017-08-19 at c023a834f0)
186
+ + submodule.sh: remove unused variable
187
268
- A test script that outlived its usefulness has been removed.
188
+ Code clean-up.
189
190
271
-* ur/svn-local-zone (2017-08-08) 1 commit
272
- (merged to 'next' on 2017-08-18 at f222bb6db0)
273
- + git svn fetch: Create correct commit timestamp when using --localtime
191
+* tc/curl-with-backports (2017-08-11) 2 commits
192
+ (merged to 'next' on 2017-08-22 at 06c21e1eb9)
193
+ + http: use a feature check to enable GSSAPI delegation control
194
+ + http: fix handling of missing CURLPROTO_*
195
275
- "git svn" used with "--localtime" option did not compute the tz
276
- offset for the timestamp in question and instead always used the
277
- current time, which has been corrected.
196
+ Updates to the HTTP layer we made recently unconditionally used
197
+ features of libCurl without checking the existence of them, causing
198
+ compilation errors, which has been fixed. Also migrate the code to
199
+ check feature macros, not version numbers, to cope better with
200
+ libCurl that vendor ships with backported features.
201
202
--------------------------------------------------
203
[New Topics]
204
282
-* jt/packmigrate (2017-08-19) 27 commits
283
- - pack: move for_each_packed_object()
284
- - pack: move has_pack_index()
285
- - pack: move has_sha1_pack()
286
- - pack: move find_pack_entry() and make it global
287
- - pack: move find_sha1_pack()
288
- - pack: move find_pack_entry_one(), is_pack_valid()
289
- - pack: move check_pack_index_ptr(), nth_packed_object_offset()
290
- - pack: move nth_packed_object_{sha1,oid}
291
- - pack: move clear_delta_base_cache(), packed_object_info(), unpack_entry()
292
- - pack: move unpack_object_header()
293
- - pack: move get_size_from_delta()
294
- - pack: move unpack_object_header_buffer()
295
- - pack: move {,re}prepare_packed_git and approximate_object_count
296
- - pack: move install_packed_git()
297
- - pack: move add_packed_git()
298
- - pack: move unuse_pack()
299
- - pack: move use_pack()
300
- - pack: move pack-closing functions
301
- - pack: move release_pack_memory()
302
- - pack: move open_pack_index(), parse_pack_index()
303
- - pack: move pack_report()
304
- - pack: move static state variables
305
- - pack: move pack name-related functions
306
- - Merge branch 'rs/unpack-entry-leakfix' into HEAD
307
- - Merge branch 'jt/sha1-file-cleanup' into HEAD
308
- - Merge branch 'jk/drop-sha1-entry-pos' into HEAD
309
- - Merge branch 'rs/find-pack-entry-bisection' into HEAD
310
- (this branch uses jt/sha1-file-cleanup.)
311
-
312
- Code movement to make it easier to hack later.
205
+* js/gitweb-raw-blob-link-in-history (2017-08-22) 1 commit
206
+ (merged to 'next' on 2017-08-23 at 16258266e2)
207
+ + gitweb: add 'raw' blob_plain link in history overview
208
314
- Rebase this on the master after jt/sha1-file-cleanup graduates and
315
- merge it to 'next' (if reviewers found this a good change, that
316
- is).
317
-
318
-
319
-* jc/cutoff-config (2017-08-19) 2 commits
320
- - rerere: allow approxidate in gc.rerereResolved/gc.rerereUnresolved
321
- - rerere: represent time duration in timestamp_t internally
322
-
323
- "[gc] rerereResolved = 5.days" used to be invalid, as the variable
324
- is defined to take an integer counting the number of days. It now
325
- is allowed.
326
-
327
- Needs reroll.
328
- cf. <xmqqa82t7ov1.fsf@gitster.mtv.corp.google.com>
329
-
330
-
331
-* jc/simplify-progress (2017-08-19) 1 commit
332
- - progress: simplify "delayed" progress API
333
-
334
- The API to start showing progress meter after a short delay has
335
- been simplified.
336
-
337
- Will merge to 'next'.
338
-
339
-
340
-* jt/stash-tests (2017-08-19) 3 commits
341
- (merged to 'next' on 2017-08-22 at 0b022697aa)
342
- + stash: add a test for stashing in a detached state
343
- + stash: add a test for when apply fails during stash branch
344
- + stash: add a test for stash create with no files
345
-
346
- Test update to improve coverage for "git stash" operations.
209
+ "gitweb" shows a link to visit the 'raw' contents of blbos in the
210
+ history overview page.
211
212
Will merge to 'master'.
213
214
351
-* rs/archive-excluded-directory (2017-08-19) 3 commits
352
- - archive: don't queue excluded directories
353
- - archive: factor out helper functions for handling attributes
354
- - t5001: add tests for export-ignore attributes and exclude pathspecs
355
-
356
- "git archive" did not work well with pathspecs and the
357
- export-ignore attribute.
358
-
359
- Will merge to 'next'.
360
-
361
- We may want to resurrect the "we don't archive an empty directory"
362
- bonus patch, but I do not mind merging the above early to 'next'
363
- and leave it as a separate follow-up enhancement.
364
- cf. <20170820090629.tumvqwzkromcykjf@sigill.intra.peff.net>
365
-
366
-
367
-* rs/commit-h-single-parent-cleanup (2017-08-19) 1 commit
368
- (merged to 'next' on 2017-08-22 at 7db01c4035)
369
- + commit: remove unused inline function single_parent()
215
+* jn/vcs-svn-cleanup (2017-08-23) 4 commits
216
+ (merged to 'next' on 2017-08-24 at c184f08f5f)
217
+ + vcs-svn: move remaining repo_tree functions to fast_export.h
218
+ + vcs-svn: remove repo_delete wrapper function
219
+ + vcs-svn: remove custom mode constants
220
+ + vcs-svn: remove more unused prototypes and declarations
221
+ (this branch uses bc/vcs-svn-cleanup; is tangled with bc/hash-algo.)
222
223
Code clean-up.
224
225
Will merge to 'master'.
226
227
376
-* bc/hash-algo (2017-08-20) 5 commits
377
- - hash-algo: switch empty tree and blob lookups to use hash abstraction
378
- - hash-algo: integrate hash algorithm support with repo setup
379
- - hash-algo: add structure representing hash algorithm
380
- - setup: expose enumerated repo info
381
- - Merge branch 'bc/vcs-svn-cleanup' into bc/hash-algo
382
- (this branch uses bc/vcs-svn-cleanup.)
383
-
228
+* jt/doc-pack-objects-fix (2017-08-23) 1 commit
229
+ (merged to 'next' on 2017-08-24 at 7e4c3c0c9f)
230
+ + Doc: clarify that pack-objects makes packs, plural
231
385
-* bc/vcs-svn-cleanup (2017-08-20) 2 commits
386
- - vcs-svn: rename repo functions to "svn_repo"
387
- - vcs-svn: remove unused prototypes
388
- (this branch is used by bc/hash-algo.)
389
-
390
- Code clean-up.
232
+ Doc updates.
233
392
- Will merge to 'next'.
234
+ Will merge to 'master'.
235
236
395
-* jk/doc-the-this (2017-08-20) 1 commit
396
- - doc: fix typo in sendemail.identity
237
+* ma/ts-cleanups (2017-08-23) 4 commits
238
+ - ThreadSanitizer: add suppressions
239
+ - strbuf_setlen: don't write to strbuf_slopbuf
240
+ - pack-objects: take lock before accessing `remaining`
241
+ - convert: always initialize attr_action in convert_attrs
242
398
- Doc clean-up.
243
+ Assorted bugfixes and clean-ups.
244
245
Will merge to 'next'.
246
247
403
-* kw/write-index-reduce-alloc (2017-08-21) 3 commits
404
- - read-cache: avoid allocating every ondisk entry when writing
405
- - read-cache: fix memory leak in do_write_index
406
- - perf: add test for writing the index
407
-
408
-
409
-* mg/killed-merge (2017-08-21) 3 commits
410
- - merge: save merge state earlier
411
- - merge: split write_merge_state in two
412
- - Documentation/git-merge: explain --continue
248
+* ma/up-to-date (2017-08-23) 2 commits
249
+ - treewide: correct several "up-to-date" to "up to date"
250
+ - Documentation/user-manual: update outdated example output
251
414
- Killing "git merge --edit" before the editor returns control left
415
- the repository in a state with MERGE_MSG but without MERGE_HEAD,
416
- which incorrectly tells the subsequent "git commit" that there was
417
- a squash merge in progress. This has been fixed.
252
+ Message and doc updates.
253
419
- Looked mostly good with minor nits.
420
- cf. <36bea69b-010a-9542-ec87-38b00d2bb009@grubix.eu>
254
+ Will merge to 'next'.
255
256
423
-* po/object-id (2017-08-20) 6 commits
424
- - sha1_file: convert index_stream to struct object_id
425
- - sha1_file: convert hash_sha1_file_literally to struct object_id
426
- - sha1_file: convert index_fd to struct object_id
427
- - sha1_file: convert index_path to struct object_id
428
- - read-cache: convert to struct object_id
429
- - builtin/hash-object: convert to struct object_id
257
+* mh/ref-lock-entry (2017-08-23) 1 commit
258
+ (merged to 'next' on 2017-08-24 at 67760267f4)
259
+ + refs: retry acquiring reference locks for 100ms
260
431
- Will merge to 'next'.
261
+ The code to acquire a lock on a reference (e.g. while accepting a
262
+ push from a client) used to immediately fail when the reference is
263
+ already locked---now it waits for a very short while and retries,
264
+ which can make it succeed if the lock holder was holding it during
265
+ a read-only operation.
266
267
+ Will merge to 'master'.
268
269
--------------------------------------------------
270
[Stalled]
@@ -509,99 +344,166 @@ of the repositories listed at
344
--------------------------------------------------
345
[Cooking]
346
512
-* cc/subprocess-handshake-missing-capabilities (2017-08-16) 1 commit
513
- (merged to 'next' on 2017-08-19 at c512710fda)
514
- + sub-process: print the cmd when a capability is unsupported
347
+* jt/packmigrate (2017-08-23) 23 commits
348
+ (merged to 'next' on 2017-08-24 at 34a628ae6c)
349
+ + pack: move for_each_packed_object()
350
+ + pack: move has_pack_index()
351
+ + pack: move has_sha1_pack()
352
+ + pack: move find_pack_entry() and make it global
353
+ + pack: move find_sha1_pack()
354
+ + pack: move find_pack_entry_one(), is_pack_valid()
355
+ + pack: move check_pack_index_ptr(), nth_packed_object_offset()
356
+ + pack: move nth_packed_object_{sha1,oid}
357
+ + pack: move clear_delta_base_cache(), packed_object_info(), unpack_entry()
358
+ + pack: move unpack_object_header()
359
+ + pack: move get_size_from_delta()
360
+ + pack: move unpack_object_header_buffer()
361
+ + pack: move {,re}prepare_packed_git and approximate_object_count
362
+ + pack: move install_packed_git()
363
+ + pack: move add_packed_git()
364
+ + pack: move unuse_pack()
365
+ + pack: move use_pack()
366
+ + pack: move pack-closing functions
367
+ + pack: move release_pack_memory()
368
+ + pack: move open_pack_index(), parse_pack_index()
369
+ + pack: move pack_report()
370
+ + pack: move static state variables
371
+ + pack: move pack name-related functions
372
516
- When handshake with a subprocess filter notices that the process
517
- asked for an unknown capability, Git did not report what program
518
- the offending subprocess was running. This has been corrected.
373
+ Code movement to make it easier to hack later.
374
375
Will merge to 'master'.
376
522
- We may want a follow-up fix to tighten the error checking, though.
377
378
+* jc/cutoff-config (2017-08-22) 6 commits
379
+ (merged to 'next' on 2017-08-24 at 2dcbf9ae04)
380
+ + rerere: allow approxidate in gc.rerereResolved/gc.rerereUnresolved
381
+ + rerere: represent time duration in timestamp_t internally
382
+ + t4200: parameterize "rerere gc" custom expiry test
383
+ + t4200: gather "rerere gc" together
384
+ + t4200: make "rerere gc" test more robust
385
+ + t4200: give us a clean slate after "rerere gc" tests
386
525
-* tb/apply-with-crlf (2017-08-19) 2 commits
526
- (merged to 'next' on 2017-08-22 at f92bf67061)
527
- + apply: file commited with CRLF should roundtrip diff and apply
528
- + convert: add SAFE_CRLF_KEEP_CRLF
529
- (this branch is tangled with jc/apply-with-crlf.)
387
+ "[gc] rerereResolved = 5.days" used to be invalid, as the variable
388
+ is defined to take an integer counting the number of days. It now
389
+ is allowed.
390
531
- "git apply" that is used as a better "patch -p1" failed to apply a
532
- taken from a file with CRLF line endings to a file with CRLF line
533
- endings. The root cause was because it misused convert_to_git()
534
- that tried to do "safe-crlf" processing by looking at the index
535
- entry at the same path, which is a nonsense---in that mode, "apply"
536
- is not working on the data in (or derived from) the index at all.
537
- This has been fixed.
391
+ Will merge to 'master'.
392
+
393
+
394
+* jt/stash-tests (2017-08-19) 3 commits
395
+ (merged to 'next' on 2017-08-22 at 0b022697aa)
396
+ + stash: add a test for stashing in a detached state
397
+ + stash: add a test for when apply fails during stash branch
398
+ + stash: add a test for stash create with no files
399
+
400
+ Test update to improve coverage for "git stash" operations.
401
402
Will merge to 'master'.
403
404
542
-* rs/t1002-do-not-use-sum (2017-08-15) 1 commit
543
- (merged to 'next' on 2017-08-19 at 15b2a5f21b)
544
- + t1002: stop using sum(1)
405
+* rs/archive-excluded-directory (2017-08-19) 3 commits
406
+ (merged to 'next' on 2017-08-22 at 1853597c35)
407
+ + archive: don't queue excluded directories
408
+ + archive: factor out helper functions for handling attributes
409
+ + t5001: add tests for export-ignore attributes and exclude pathspecs
410
546
- Test simplification.
411
+ "git archive" did not work well with pathspecs and the
412
+ export-ignore attribute.
413
414
Will merge to 'master'.
415
416
+ We may want to resurrect the "we don't archive an empty directory"
417
+ bonus patch, but I do not mind merging the above early to 'next'
418
+ and leave it as a separate follow-up enhancement.
419
+ cf. <20170820090629.tumvqwzkromcykjf@sigill.intra.peff.net>
420
+
421
+
422
+* bc/hash-algo (2017-08-20) 5 commits
423
+ - hash-algo: switch empty tree and blob lookups to use hash abstraction
424
+ - hash-algo: integrate hash algorithm support with repo setup
425
+ - hash-algo: add structure representing hash algorithm
426
+ - setup: expose enumerated repo info
427
+ - Merge branch 'bc/vcs-svn-cleanup' into bc/hash-algo
428
+ (this branch uses bc/vcs-svn-cleanup; is tangled with jn/vcs-svn-cleanup.)
429
551
-* sb/sha1-file-cleanup (2017-08-15) 1 commit
552
- (merged to 'next' on 2017-08-19 at 85898d1e7c)
553
- + sha1_file: make read_info_alternates static
430
+
431
+* bc/vcs-svn-cleanup (2017-08-20) 2 commits
432
+ (merged to 'next' on 2017-08-22 at d8494b5d5b)
433
+ + vcs-svn: rename repo functions to "svn_repo"
434
+ + vcs-svn: remove unused prototypes
435
+ (this branch is used by bc/hash-algo and jn/vcs-svn-cleanup.)
436
437
Code clean-up.
438
439
Will merge to 'master'.
440
441
560
-* as/grep-quiet-no-match-exit-code-fix (2017-08-17) 1 commit
561
- (merged to 'next' on 2017-08-19 at 362f88fb41)
562
- + git-grep: correct exit code with --quiet and -L
442
+* kw/write-index-reduce-alloc (2017-08-21) 3 commits
443
+ (merged to 'next' on 2017-08-24 at 29f7daad85)
444
+ + read-cache: avoid allocating every ondisk entry when writing
445
+ + read-cache: fix memory leak in do_write_index
446
+ + perf: add test for writing the index
447
564
- "git grep -L" and "git grep --quiet -L" reported different exit
565
- codes; this has been corrected.
448
+ We used to spend more than necessary cycles allocating and freeing
449
+ piece of memory while writing each index entry out. This has been
450
+ optimized.
451
452
Will merge to 'master'.
453
454
570
-* hv/t5526-andand-chain-fix (2017-08-17) 1 commit
571
- (merged to 'next' on 2017-08-19 at fa95053653)
572
- + t5526: fix some broken && chains
455
+* mg/killed-merge (2017-08-23) 4 commits
456
+ (merged to 'next' on 2017-08-24 at 5db37fc192)
457
+ + merge: save merge state earlier
458
+ + merge: split write_merge_state in two
459
+ + merge: clarify call chain
460
+ + Documentation/git-merge: explain --continue
461
574
- Test fix.
462
+ Killing "git merge --edit" before the editor returns control left
463
+ the repository in a state with MERGE_MSG but without MERGE_HEAD,
464
+ which incorrectly tells the subsequent "git commit" that there was
465
+ a squash merge in progress. This has been fixed.
466
467
Will merge to 'master'.
468
469
579
-* jc/diff-sane-truncate-no-more (2017-08-17) 1 commit
580
- (merged to 'next' on 2017-08-19 at 3ba3980eed)
581
- + diff: retire sane_truncate_fn
582
-
583
- Code clean-up.
470
+* po/object-id (2017-08-20) 6 commits
471
+ (merged to 'next' on 2017-08-23 at 0faff383a8)
472
+ + sha1_file: convert index_stream to struct object_id
473
+ + sha1_file: convert hash_sha1_file_literally to struct object_id
474
+ + sha1_file: convert index_fd to struct object_id
475
+ + sha1_file: convert index_path to struct object_id
476
+ + read-cache: convert to struct object_id
477
+ + builtin/hash-object: convert to struct object_id
478
479
Will merge to 'master'.
480
481
588
-* ks/branch-set-upstream (2017-08-17) 3 commits
589
- - branch: quote branch/ref names to improve readability
590
- - builtin/branch: stop supporting the "--set-upstream" option
591
- - t3200: cleanup cruft of a test
482
+* tb/apply-with-crlf (2017-08-19) 2 commits
483
+ (merged to 'next' on 2017-08-22 at f92bf67061)
484
+ + apply: file commited with CRLF should roundtrip diff and apply
485
+ + convert: add SAFE_CRLF_KEEP_CRLF
486
+ (this branch is tangled with jc/apply-with-crlf.)
487
593
- "branch --set-upstream" that has been deprecated in Git 1.8 has
594
- finally been retired.
488
+ "git apply" that is used as a better "patch -p1" failed to apply a
489
+ taken from a file with CRLF line endings to a file with CRLF line
490
+ endings. The root cause was because it misused convert_to_git()
491
+ that tried to do "safe-crlf" processing by looking at the index
492
+ entry at the same path, which is a nonsense---in that mode, "apply"
493
+ is not working on the data in (or derived from) the index at all.
494
+ This has been fixed.
495
596
- Will merge to 'next'.
496
+ Will merge to 'master'.
497
498
599
-* mg/format-ref-doc-fix (2017-08-18) 2 commits
600
- (merged to 'next' on 2017-08-19 at 6490525c54)
601
- + Documentation/git-for-each-ref: clarify peeling of tags for --format
602
- + Documentation: use proper wording for ref format strings
499
+* ks/branch-set-upstream (2017-08-17) 3 commits
500
+ (merged to 'next' on 2017-08-22 at 10fd938390)
501
+ + branch: quote branch/ref names to improve readability
502
+ + builtin/branch: stop supporting the "--set-upstream" option
503
+ + t3200: cleanup cruft of a test
504
604
- Doc fix.
505
+ "branch --set-upstream" that has been deprecated in Git 1.8 has
506
+ finally been retired.
507
508
Will merge to 'master'.
509
@@ -620,24 +522,6 @@ of the repositories listed at
522
Will merge to 'master'.
523
524
623
-* sb/submodule-parallel-update (2017-08-17) 1 commit
624
- (merged to 'next' on 2017-08-19 at c023a834f0)
625
- + submodule.sh: remove unused variable
626
-
627
- Code clean-up.
628
-
629
- Will merge to 'master'.
630
-
631
-
632
-* ks/prepare-commit-msg-sample-fix (2017-08-14) 1 commit
633
- (merged to 'next' on 2017-08-19 at e75c30de64)
634
- + hook: use correct logical variable
635
-
636
- An "oops" fix to a topic that is already in 'master'.
637
-
638
- Will merge to 'master'.
639
-
640
-
525
* mk/diff-delta-uint-may-be-shorter-than-ulong (2017-08-10) 1 commit
526
. diff-delta: fix encoding size that would not fit in "unsigned int"
527
@@ -662,19 +546,6 @@ of the repositories listed at
546
Will be rerolled after tc/curl-with-backports stabilizes.
547
548
665
-* tc/curl-with-backports (2017-08-11) 2 commits
666
- - http: use a feature check to enable GSSAPI delegation control
667
- - http: fix handling of missing CURLPROTO_*
668
-
669
- Updates to the HTTP layer we made recently unconditionally used
670
- features of libCurl without checking the existence of them, causing
671
- compilation errors, which has been fixed. Also migrate the code to
672
- check feature macros, not version numbers, to cope better with
673
- libCurl that vendor ships with backported features.
674
-
675
- Will merge to 'next'.
676
-
677
-
549
* jk/trailers-parse (2017-08-20) 9 commits
550
(merged to 'next' on 2017-08-22 at 2d4d937141)
551
+ doc/interpret-trailers: fix "the this" typo
@@ -708,31 +579,6 @@ of the repositories listed at
579
cf. <1502914591-26215-1-git-send-email-martin@mail.zuhause>
580
581
711
-* jt/sha1-file-cleanup (2017-08-11) 2 commits
712
- (merged to 'next' on 2017-08-19 at 93f4c94578)
713
- + sha1_file: remove read_packed_sha1()
714
- + sha1_file: set whence in storage-specific info fn
715
- (this branch is used by jt/packmigrate.)
716
-
717
- Preparatory code clean-up.
718
-
719
- Will merge to 'master'.
720
-
721
-
722
-* kw/rebase-progress (2017-08-14) 2 commits
723
- (merged to 'next' on 2017-08-19 at 1958f378dd)
724
- + rebase: turn on progress option by default for format-patch
725
- + format-patch: have progress option while generating patches
726
-
727
- "git rebase", especially when it is run by mistake and ends up
728
- trying to replay many changes, spent long time in silence. The
729
- command has been taught to show progress report when it spends
730
- long time preparing these many changes to replay (which would give
731
- the user a chance to abort with ^C).
732
-
733
- Will merge to 'master'.
734
-
735
-
582
* mk/diff-delta-avoid-large-offset (2017-08-11) 1 commit
583
. diff-delta: do not allow delta offset truncation
584
@@ -745,36 +591,6 @@ of the repositories listed at
591
cf. <1502914591-26215-1-git-send-email-martin@mail.zuhause>
592
593
748
-* nm/stash-untracked (2017-08-11) 1 commit
749
- (merged to 'next' on 2017-08-19 at 70990d7eb3)
750
- + stash: clean untracked files before reset
751
-
752
- "git stash -u" used the contents of the committed version of the
753
- ".gitignore" file to decide which paths are ignored, even when the
754
- file has local changes. The command has been taught to instead use
755
- the locally modified contents.
756
-
757
- Will merge to 'master'.
758
-
759
-
760
-* rs/object-id (2017-08-14) 1 commit
761
- (merged to 'next' on 2017-08-19 at 0f7283cd19)
762
- + tree-walk: convert fill_tree_descriptor() to object_id
763
-
764
- Conversion from uchar[20] to struct object_id continues.
765
-
766
- Will merge to 'master'.
767
-
768
-
769
-* ah/doc-empty-string-is-false (2017-08-14) 1 commit
770
- (merged to 'next' on 2017-08-19 at df47ffeffa)
771
- + doc: clarify "config --bool" behaviour with empty string
772
-
773
- Doc update.
774
-
775
- Will merge to 'master'.
776
-
777
-
594
* jt/diff-color-move-fix (2017-08-16) 3 commits
595
(merged to 'next' on 2017-08-19 at 6ae3831c8c)
596
+ diff: define block by number of alphanumeric chars
@@ -787,27 +603,6 @@ of the repositories listed at
603
Will merge to 'master'.
604
605
790
-* kd/stash-with-bash-4.4 (2017-08-14) 1 commit
791
- (merged to 'next' on 2017-08-19 at 79b2c4b052)
792
- + stash: prevent warning about null bytes in input
793
-
794
- bash 4.4 or newer gave a warning on NUL byte in command
795
- substitution done in "git stash"; this has been squelched.
796
-
797
- Will merge to 'master'.
798
-
799
-
800
-* kw/commit-keep-index-when-pre-commit-is-not-run (2017-08-16) 1 commit
801
- (merged to 'next' on 2017-08-19 at 2b5a25e5ae)
802
- + commit: skip discarding the index if there is no pre-commit hook
803
-
804
- "git commit" used to discard the index and re-read from the filesystem
805
- just in case the pre-commit hook has updated it in the middle; this
806
- has been optimized out when we know we do not run the pre-commit hook.
807
-
808
- Will merge to 'master'.
809
-
810
-
606
* bw/git-clang-format (2017-08-14) 2 commits
607
- Makefile: add style build rule
608
- clang-format: outline the git project's coding style
@@ -816,16 +611,6 @@ of the repositories listed at
611
out coding style issues.
612
613
819
-* lg/merge-signoff (2017-07-25) 1 commit
820
- (merged to 'next' on 2017-08-19 at cb53d7b026)
821
- + merge: add a --signoff flag
822
-
823
- "git merge" learned a "--signoff" option to add the Signed-off-by:
824
- trailer with the committer's name.
825
-
826
- Will merge to 'master'.
827
-
828
-
614
* pb/trailers-from-command-line (2017-08-14) 4 commits
615
(merged to 'next' on 2017-08-19 at b12342e49e)
616
+ interpret-trailers: fix documentation typo
@@ -866,27 +651,29 @@ of the repositories listed at
651
652
653
* bw/submodule-config-cleanup (2017-08-03) 17 commits
869
- - submodule: remove gitmodules_config
870
- - unpack-trees: improve loading of .gitmodules
871
- - submodule-config: lazy-load a repository's .gitmodules file
872
- - submodule-config: move submodule-config functions to submodule-config.c
873
- - submodule-config: remove support for overlaying repository config
874
- - diff: stop allowing diff to have submodules configured in .git/config
875
- - submodule: remove submodule_config callback routine
876
- - unpack-trees: don't respect submodule.update
877
- - submodule: don't rely on overlayed config when setting diffopts
878
- - fetch: don't overlay config with submodule-config
879
- - submodule--helper: don't overlay config in update-clone
880
- - submodule--helper: don't overlay config in remote_submodule_branch
881
- - add, reset: ensure submodules can be added or reset
882
- - submodule: don't use submodule_from_name
883
- - t7411: check configuration parsing errors
884
- - Merge branch 'bc/object-id' into bw/submodule-config-cleanup
885
- - Merge branch 'bw/grep-recurse-submodules' into bw/submodule-config-cleanup
654
+ (merged to 'next' on 2017-08-24 at e35d58c4c6)
655
+ + submodule: remove gitmodules_config
656
+ + unpack-trees: improve loading of .gitmodules
657
+ + submodule-config: lazy-load a repository's .gitmodules file
658
+ + submodule-config: move submodule-config functions to submodule-config.c
659
+ + submodule-config: remove support for overlaying repository config
660
+ + diff: stop allowing diff to have submodules configured in .git/config
661
+ + submodule: remove submodule_config callback routine
662
+ + unpack-trees: don't respect submodule.update
663
+ + submodule: don't rely on overlayed config when setting diffopts
664
+ + fetch: don't overlay config with submodule-config
665
+ + submodule--helper: don't overlay config in update-clone
666
+ + submodule--helper: don't overlay config in remote_submodule_branch
667
+ + add, reset: ensure submodules can be added or reset
668
+ + submodule: don't use submodule_from_name
669
+ + t7411: check configuration parsing errors
670
+ + Merge branch 'bc/object-id' into bw/submodule-config-cleanup
671
+ + Merge branch 'bw/grep-recurse-submodules' into bw/submodule-config-cleanup
672
673
Code clean-up to avoid mixing values read from the .gitmodules file
674
and values read from the .git/config file.
675
676
+ Will merge to 'master'.
677
So, after the recent discussion around submodule.<name>.update (and
678
its resolution "use submodule.<name>.active; "reset --hard" must
679
ignore the .update thing"), this is now good to go, I presume?