What's cooking (2014/09 #04)
Junio C Hamano committed
Sep 18, 2014 at 11:28 UTC
9a76b6266ccc7d8487d60476fc103e447b7f2fd9
1 file changed
+321
-412
whats-cooking.txt
+321
-412
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Sep 2014, #03; Thu, 11)
4
-X-master-at: ce1d3a93a6405b8a0313491df3099919ed3d150f
5
-X-next-at: 9363127135f6ed0af0d141c3fc3ac63acc2d9010
3
+Subject: What's cooking in git.git (Sep 2014, #04; Thu, 18)
4
+X-master-at: 30d45f798d1a4b14759cd977b68be4476d66ea17
5
+X-next-at: 6f8c9d7a18026a70d5a66a800d0d849658729a92
6
7
-What's cooking in git.git (Sep 2014, #03; Thu, 11)
7
+What's cooking in git.git (Sep 2014, #04; Thu, 18)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -21,350 +21,166 @@ of the repositories listed at
21
http://git-blame.blogspot.com/p/git-public-repositories.html
22
23
--------------------------------------------------
24
-[Graduated to "master"]
24
+[New Topics]
25
26
-* br/http-init-fix (2014-08-21) 2 commits
27
- (merged to 'next' on 2014-09-03 at 6d42f5e)
28
- + http: style fixes for curl_multi_init error check
29
- + http.c: die if curl_*_init fails
26
+* jk/faster-name-conflicts (2014-09-12) 1 commit
27
+ - refs: speed up is_refname_available
28
31
- Code clean-up.
29
+ Optimize the check to see if a ref $F can be created by making sure
30
+ no existing ref has $F/ as its prefix, which especially matters in
31
+ a repository with a large number of existing refs.
32
33
+ Will merge to 'next'.
34
34
-* br/imap-send-simplify-tunnel-child-process (2014-09-02) 3 commits
35
- (merged to 'next' on 2014-09-04 at a182987)
36
- + imap-send: simplify v_issue_imap_cmd() and get_cmd_result() using starts_with()
37
- + imap-send.c: imap_folder -> imap_server_conf.folder
38
- + git-imap-send: simplify tunnel construction
35
40
- Code clean-up.
36
+* jk/write-packed-refs-via-stdio (2014-09-10) 1 commit
37
+ - refs: write packed_refs file using stdio
38
39
+ Optimize the code path to write out the packed-refs file, which
40
+ especially matters in a repository with a large number of refs.
41
43
-* dt/cache-tree-repair (2014-09-03) 5 commits
44
- (merged to 'next' on 2014-09-03 at 1c8ff65)
45
- + cache-tree: do not try to use an invalidated subtree info to build a tree
46
- (merged to 'next' on 2014-08-26 at 6faccdb)
47
- + cache-tree: Write updated cache-tree after commit
48
- + cache-tree: subdirectory tests
49
- + test-dump-cache-tree: invalid trees are not errors
50
- + cache-tree: create/update cache-tree on checkout
42
+ Will merge to 'next'.
43
52
- Add a few more places in "commit" and "checkout" that make sure
53
- that the cache-tree is fully populated in the index.
44
45
+* js/no-test-cmp-for-binaries (2014-09-12) 1 commit
46
+ (merged to 'next' on 2014-09-15 at c5609e9)
47
+ + t9300: use test_cmp_bin instead of test_cmp to compare binary files
48
56
-* et/spell-poll-infinite-with-minus-one-only (2014-08-22) 1 commit
57
- (merged to 'next' on 2014-09-03 at 5be5957)
58
- + upload-pack: keep poll(2)'s timeout to -1
49
+ Will merge to 'master'.
50
60
- We used to pass -1000 to poll(2), expecting it to also mean "no
61
- timeout", which should be spelled as -1.
51
52
+* sp/doc-update-index-cacheinfo (2014-09-11) 1 commit
53
+ (merged to 'next' on 2014-09-15 at 11ec716)
54
+ + Documentation: use single-parameter --cacheinfo in example
55
64
-* jk/contrib-subtree-make-all (2014-08-18) 1 commit
65
- (merged to 'next' on 2014-09-03 at 919d889)
66
- + subtree: make "all" default target of Makefile
56
+ Will merge to 'master'.
57
58
69
-* jk/fast-import-fixes (2014-08-25) 2 commits
70
- (merged to 'next' on 2014-09-04 at 74838e5)
71
- + fast-import: fix buffer overflow in dump_tags
72
- + fast-import: clean up pack_data pointer in end_packfile
59
+* wk/pre-push-sample-hook (2014-09-11) 1 commit
60
+ (merged to 'next' on 2014-09-18 at 6f8c9d7)
61
+ + pre-push.sample: Write error message to stderr
62
74
- With sufficiently long refnames, fast-import could have overflown
75
- an on-stack buffer.
63
+ Will merge to 'master'.
64
65
78
-* jk/make-simplify-dependencies (2014-08-26) 3 commits
79
- (merged to 'next' on 2014-09-03 at 820a600)
80
- + Makefile: drop CHECK_HEADER_DEPENDENCIES code
81
- + Makefile: use `find` to determine static header dependencies
82
- + i18n: treat "make pot" as an explicitly-invoked target
66
+* da/include-compat-util-first-in-c (2014-09-15) 4 commits
67
+ - SQUASH???
68
+ - check-headers: add header usage checks for .c files
69
+ - Makefile: add check-headers target
70
+ - cleanups: ensure that git-compat-util.h is included first
71
84
- Admit that keeping LIB_H up-to-date, only for those that do not use
85
- the automatically generated dependencies, is a losing battle, and
86
- make it conservative by making everything depend on anything.
72
73
+* da/rev-parse-verify-quiet (2014-09-18) 4 commits
74
+ - stash: prefer --quiet over shell redirection of the standard error stream
75
+ - refs: make rev-parse --quiet actually quiet
76
+ - t1503: use test_must_be_empty
77
+ - Documentation: a note about stdout for git rev-parse --verify --quiet
78
89
-* jk/name-decoration-alloc (2014-08-27) 3 commits
90
- (merged to 'next' on 2014-09-04 at 05f0d29)
91
- + log-tree: use FLEX_ARRAY in name_decoration
92
- + log-tree: make name_decoration hash static
93
- + log-tree: make add_name_decoration a public function
79
95
- The API to allocate the structure to keep track of commit
96
- decoration was cumbersome to use, inviting lazy code to
97
- overallocate memory.
80
+* hj/pretty-naked-decoration (2014-09-16) 2 commits
81
+ - SQUASH???
82
+ - pretty: add %D format specifier
83
84
100
-* jk/prune-top-level-refs-after-packing (2014-08-25) 1 commit
101
- (merged to 'next' on 2014-09-04 at bfe3873)
102
- + pack-refs: prune top-level refs like "refs/foo"
85
+* ir/makefile-typofix (2014-09-15) 1 commit
86
+ (merged to 'next' on 2014-09-18 at bc1c273)
87
+ + Makefile: fix some typos in the preamble
88
104
- After "pack-refs --prune" packed refs at the top-level, it failed
105
- to prune them.
89
+ Will merge to 'master'.
90
91
108
-* jn/unpack-trees-checkout-m-carry-deletion (2014-08-25) 3 commits
109
- (merged to 'next' on 2014-09-04 at e15803a)
110
- + checkout -m: attempt merge when deletion of path was staged
111
- + unpack-trees: use 'cuddled' style for if-else cascade
112
- + unpack-trees: simplify 'all other failures' case
92
+* jc/ignore-sigpipe-while-running-hooks (2014-09-16) 1 commit
93
+ - receive-pack: allow hooks to ignore its standard input stream
94
114
- "git checkout -m" did not switch to another branch while carrying
115
- the local changes forward when a path was deleted from the index.
95
+ Will merge to 'next'.
96
97
118
-* mm/discourage-commit-a-to-finish-conflict-resolution (2014-08-28) 1 commit
119
- (merged to 'next' on 2014-09-03 at e3f872f)
120
- + merge, pull: stop advising 'commit -a' in case of conflict
98
+* jk/close-stderr-of-credential-cache-deamon (2014-09-16) 1 commit
99
+ - credential-cache: close stderr in daemon process
100
101
+ Will merge to 'next'.
102
123
-* nd/fetch-pass-quiet-to-gc-child-process (2014-08-18) 2 commits
124
- (merged to 'next' on 2014-09-04 at 028cd42)
125
- + fetch: silence git-gc if --quiet is given
126
- + fetch: convert argv_gc_auto to struct argv_array
103
128
- Progress output from "git gc --auto" was visible in "git fetch -q".
104
+* jk/mbox-from-line (2014-09-16) 1 commit
105
+ - mailinfo: make ">From" in-body header check more robust
106
107
+ Will merge to 'next'.
108
131
-* nd/large-blobs (2014-08-18) 5 commits
132
- (merged to 'next' on 2014-09-04 at 16d7c62)
133
- + diff: shortcut for diff'ing two binary SHA-1 objects
134
- + diff --stat: mark any file larger than core.bigfilethreshold binary
135
- + diff.c: allow to pass more flags to diff_populate_filespec
136
- + sha1_file.c: do not die failing to malloc in unpack_compressed_entry
137
- + wrapper.c: introduce gentle xmallocz that does not die()
109
139
- Teach a few codepaths to punt (instead of dying) when large blobs
140
- that would not fit in core are involved in the operation.
110
+* jk/prune-packed-server-info (2014-09-15) 4 commits
111
+ - repack: call prune_packed_objects() and update_server_info() directly
112
+ - server-info: clean up after writing info/packs
113
+ - make update-server-info more robust
114
+ - prune-packed: fix minor memory leak
115
116
+ Will merge to 'next'.
117
143
-* nd/mv-code-cleaning (2014-09-03) 8 commits
144
- (merged to 'next' on 2014-09-03 at 4315447)
145
- + mv: no SP between function name and the first opening parenthese
146
- + mv: combine two if(s)
147
- + mv: unindent one level for directory move code
148
- + mv: move index search code out
149
- + mv: remove an "if" that's always true
150
- + mv: split submodule move preparation code out
151
- + mv: flatten error handling code block
152
- + mv: mark strings for translations
118
154
- Code clean-up.
119
+* mr/mark-i18n-log-rerere (2014-09-15) 2 commits
120
+ (merged to 'next' on 2014-09-15 at ba35eb3)
121
+ + builtin/log.c: mark strings for translation
122
+ + rerere.h: mark string for translation
123
124
+ Will merge to 'master'.
125
157
-* rs/child-process-init (2014-08-20) 4 commits
158
- (merged to 'next' on 2014-09-03 at c17c06c)
159
- + run-command: inline prepare_run_command_v_opt()
160
- + run-command: call run_command_v_opt_cd_env() instead of duplicating it
161
- + run-command: introduce child_process_init()
162
- + run-command: introduce CHILD_PROCESS_INIT
126
164
- Code clean-up.
127
+* pr/use-default-sigpipe-setting (2014-09-18) 1 commit
128
+ - unblock and unignore SIGPIPE
129
130
+ Will merge to 'next'.
131
167
-* rs/list-optim (2014-08-25) 2 commits
168
- (merged to 'next' on 2014-09-04 at eecaf99)
169
- + walker: avoid quadratic list insertion in mark_complete
170
- + sha1_name: avoid quadratic list insertion in handle_one_ref
171
-
172
- Fix a couple of "accumulate into a sorted list" to "accumulate and
173
- then sort the list".
174
-
175
-
176
-* rs/ref-transaction-1 (2014-09-03) 22 commits
177
- (merged to 'next' on 2014-09-03 at 68e20b8)
178
- + update-ref --stdin: pass transaction around explicitly
179
- + update-ref --stdin: narrow scope of err strbuf
180
- + refs.c: make delete_ref use a transaction
181
- + refs.c: make prune_ref use a transaction to delete the ref
182
- + refs.c: remove lock_ref_sha1
183
- + refs.c: remove the update_ref_write function
184
- + refs.c: remove the update_ref_lock function
185
- + refs.c: make lock_ref_sha1 static
186
- + walker.c: use ref transaction for ref updates
187
- + fast-import.c: use a ref transaction when dumping tags
188
- + receive-pack.c: use a reference transaction for updating the refs
189
- + refs.c: change update_ref to use a transaction
190
- + branch.c: use ref transaction for all ref updates
191
- + fast-import.c: change update_branch to use ref transactions
192
- + sequencer.c: use ref transactions for all ref updates
193
- + commit.c: use ref transactions for updates
194
- + replace.c: use the ref transaction functions for updates
195
- + tag.c: use ref transactions when doing updates
196
- + refs.c: add transaction.status and track OPEN/CLOSED
197
- + refs.c: make ref_transaction_begin take an err argument
198
- + refs.c: update ref_transaction_delete to check for error and return status
199
- + refs.c: change ref_transaction_create to do error checking and return status
200
- (this branch is used by rs/ref-transaction, rs/ref-transaction-multi, rs/ref-transaction-reflog and rs/ref-transaction-rename.)
201
-
202
- The second batch of the transactional ref update series.
203
-
204
-
205
-* ta/config-set-1 (2014-08-07) 8 commits
206
- (merged to 'next' on 2014-09-03 at 184b2ef)
207
- + add tests for `git_config_get_string_const()`
208
- + add a test for semantic errors in config files
209
- + rewrite git_config() to use the config-set API
210
- + config: add `git_die_config()` to the config-set API
211
- + change `git_config()` return value to void
212
- + add line number and file name info to `config_set`
213
- + config.c: fix accuracy of line number in errors
214
- + config.c: mark error and warnings strings for translation
215
- (this branch is used by ta/config-set-2.)
216
-
217
- Use the new caching config-set API in git_config() calls.
218
-
219
-
220
-* ta/config-set-2 (2014-08-13) 15 commits
221
- (merged to 'next' on 2014-09-03 at f2eff02)
222
- + builtin/apply.c: replace `git_config()` with `git_config_get_string_const()`
223
- + merge-recursive.c: replace `git_config()` with `git_config_get_int()`
224
- + ll-merge.c: refactor `read_merge_config()` to use `git_config_string()`
225
- + fast-import.c: replace `git_config()` with `git_config_get_*()` family
226
- + branch.c: replace `git_config()` with `git_config_get_string()
227
- + alias.c: replace `git_config()` with `git_config_get_string()`
228
- + imap-send.c: replace `git_config()` with `git_config_get_*()` family
229
- + pager.c: replace `git_config()` with `git_config_get_value()`
230
- + builtin/gc.c: replace `git_config()` with `git_config_get_*()` family
231
- + rerere.c: replace `git_config()` with `git_config_get_*()` family
232
- + fetchpack.c: replace `git_config()` with `git_config_get_*()` family
233
- + archive.c: replace `git_config()` with `git_config_get_bool()` family
234
- + read-cache.c: replace `git_config()` with `git_config_get_*()` family
235
- + http-backend.c: replace `git_config()` with `git_config_get_bool()` family
236
- + daemon.c: replace `git_config()` with `git_config_get_bool()` family
237
- (this branch uses ta/config-set-1.)
238
-
239
- Update git_config() users with callback functions for a very narrow
240
- scope with calls to config-set API that lets us query a single
241
- variable.
132
243
---------------------------------------------------
244
-[New Topics]
133
+* rs/realloc-array (2014-09-18) 2 commits
134
+ - use REALLOC_ARRAY for changing the allocation size of arrays
135
+ - add macro REALLOC_ARRAY
136
246
-* jc/hash-object (2014-09-11) 3 commits
247
- - hash-object: add --literally option
248
- - hash-object: pass 'write_object' as a flag
249
- - hash-object: reduce file-scope statics
250
- (this branch is used by jc/hash-object-fsck-tag.)
137
+ Will merge to 'next'.
138
252
- "hash-object" learned a new "--literally" option to hash any random
253
- garbage into a loose object, to allow us to create a test data for
254
- mechanisms to catch corrupt objects.
139
140
+* so/rebase-doc (2014-09-16) 1 commit
141
+ (merged to 'next' on 2014-09-18 at cce521d)
142
+ + Documentation/git-rebase.txt: <upstream> must be given to specify <branch>
143
257
-* jc/hash-object-fsck-tag (2014-09-11) 2 commits
258
- - t1450: make sure fsck detects a malformed tagger line
259
- - Merge branch 'js/fsck-tag-validation' into HEAD
260
- (this branch uses jc/hash-object and js/fsck-tag-validation.)
144
+ Will merge to 'master'.
145
262
- Using "hash-object --literally", test one of the new breakages
263
- js/fsck-tag-validation topic teaches "fsck" to catch is caught.
146
147
+* ss/compat-default-source-for-newer-gnu (2014-09-15) 1 commit
148
+ (merged to 'next' on 2014-09-15 at 0e87594)
149
+ + compat-util: add _DEFAULT_SOURCE define
150
266
-* jk/fsck-exit-code-fix (2014-09-10) 1 commit
267
- - fsck: exit with non-zero status upon error from fsck_obj()
151
+ Will merge to 'master'.
152
269
- "git fsck" failed to report that it found corrupt objects via its
270
- exit status in some cases.
153
+
154
+* jk/branch-verbose-merged (2014-09-18) 1 commit
155
+ - branch: clean up commit flags after merge-filter walk
156
157
Will merge to 'next'.
158
159
275
-* js/fsck-tag-validation (2014-09-11) 6 commits
276
- - Make sure that index-pack --strict checks tag objects
277
- - Add regression tests for stricter tag fsck'ing
278
- - fsck: check tag objects' headers
279
- - Make sure fsck_commit_buffer() does not run out of the buffer
280
- - fsck_object(): allow passing object data separately from the object itself
281
- - Refactor type_from_string() to allow continuing after detecting an error
282
- (this branch is used by jc/hash-object-fsck-tag.)
283
-
284
- Teach "git fsck" to inspect the contents of annotated tag objects.
160
+* sb/help-unknown-command-sort-fix (2014-09-18) 1 commit
161
+ - help: fix the size passed to qsort
162
163
Will merge to 'next'.
164
165
--------------------------------------------------
166
[Stalled]
167
291
-* rs/ref-transaction-multi (2014-09-03) 7 commits
292
- - ### rs/ref-transaction-multi
293
- - refs.c: make the *_packed_refs functions static
294
- - refs.c: make repack_without_refs static
295
- - remote.c: use a transaction for deleting refs
296
- - refs.c: write updates to packed refs when a transaction has more than one ref
297
- - refs.c: move reflog updates into its own function
298
- - ### rs/ref-transaction-rename
299
- (this branch uses rs/ref-transaction, rs/ref-transaction-reflog and rs/ref-transaction-rename.)
300
-
301
- Follow-up on rs/ref-transaction series to use the packed-ref to
302
- achieve atomicity when multiple refs are involved.
303
-
304
- It appears that rs/ref-transaction series is being rerolled, so
305
- these will be rerolled as well.
306
-
307
-
308
-* rs/ref-transaction-rename (2014-09-03) 6 commits
309
- - refs.c: rollback the lockfile before we die() in repack_without_refs
310
- - refs.c: update rename_ref to use a transaction
311
- - refs.c: use packed refs when deleting refs during a transaction
312
- - refs.c: return error instead of dying when locking fails during transaction
313
- - refs.c: allow passing raw git_committer_info as email to _update_reflog
314
- - ### rs/ref-transaction-reflog
315
- (this branch is used by rs/ref-transaction-multi; uses rs/ref-transaction and rs/ref-transaction-reflog.)
316
-
317
- Follow-up on rs/ref-transaction series to make renaming a ref
318
- transactional (i.e. "delete old and create new" should not leave
319
- an in-between state behind when it fails).
320
-
321
- It appears that rs/ref-transaction series is being rerolled, so
322
- these will be rerolled as well.
323
-
324
-
325
-* rs/ref-transaction-reflog (2014-09-03) 16 commits
326
- - refs.c: allow deleting refs with a broken sha1
327
- - refs.c: remove lock_any_ref_for_update
328
- - refs.c: make unlock_ref/close_ref/commit_ref static
329
- - refs.c: rename log_ref_setup to create_reflog
330
- - reflog.c: use a reflog transaction when writing during expire
331
- - refs.c: allow multiple reflog updates during a single transaction
332
- - refs.c: only write reflog update if msg is non-NULL
333
- - refs.c: add a flag to allow reflog updates to truncate the log
334
- - refs.c: add a transaction function to append a reflog entry
335
- - lockfile.c: make hold_lock_file_for_append preserve meaningful errno
336
- - refs.c: add a function to append a reflog entry to a fd
337
- - refs.c: add a new update_type field to ref_update
338
- - refs.c: rename the transaction functions
339
- - refs.c: make ref_transaction_delete a wrapper for ref_transaction_update
340
- - refs.c: make ref_transaction_create a wrapper to ref_transaction_update
341
- - ### rs/ref-transaction
342
- (this branch is used by rs/ref-transaction-multi and rs/ref-transaction-rename; uses rs/ref-transaction.)
343
-
344
- Cover updates to reflog with the same transaction mechanism as used
345
- for reflog manipulations.
346
-
347
- It appears that rs/ref-transaction series is being rerolled, so
348
- these will be rerolled as well.
349
-
168
+* tr/remerge-diff (2014-09-08) 8 commits
169
+ - log --remerge-diff: show what the conflict resolution changed
170
+ - name-hash: allow dir hashing even when !ignore_case
171
+ - merge-recursive: allow storing conflict hunks in index
172
+ - merge_diff_mode: fold all merge diff variants into an enum
173
+ - combine-diff: do not pass revs->dense_combined_merges redundantly
174
+ - merge-recursive: -Xindex-only to leave worktree unchanged
175
+ - merge-recursive: internal flag to avoid touching the worktree
176
+ - merge-recursive: remove dead conditional in update_stages()
177
351
-* rs/ref-transaction (2014-09-03) 13 commits
352
- - refs.c: fix handling of badly named refs
353
- - refs.c: make write_ref_sha1 static
354
- - fetch.c: change s_update_ref to use a ref transaction
355
- - refs.c: propagate any errno==ENOTDIR from _commit back to the callers
356
- - refs.c: pass a skip list to name_conflict_fn
357
- - refs.c: call lock_ref_sha1_basic directly from commit
358
- - refs.c: move the check for valid refname to lock_ref_sha1_basic
359
- - refs.c: pass NULL as *flags to read_ref_full
360
- - refs.c: pass the ref log message to _create/delete/update instead of _commit
361
- - refs.c: add an err argument to delete_ref_loose
362
- - wrapper.c: add a new function unlink_or_msg
363
- - wrapper.c: simplify warn_if_unremovable
364
- - ### rs/ref-transaction-1
365
- (this branch is used by rs/ref-transaction-multi, rs/ref-transaction-reflog and rs/ref-transaction-rename.)
178
+ "log -p" output learns a new way to let users inspect a merge
179
+ commit by showing the differences between the automerged result
180
+ with conflicts the person who recorded the merge would have seen
181
+ and the final conflict resolution that was recorded in the merge.
182
367
- Rerolled and was asked to wait. Seems to break "git remote rm".
183
+ Review comments sent.
184
185
186
* hv/submodule-config (2014-06-30) 4 commits
@@ -553,80 +369,147 @@ of the repositories listed at
369
--------------------------------------------------
370
[Cooking]
371
372
+* rs/ref-transaction (2014-09-12) 20 commits
373
+ . remote rm/prune: print a message when writing packed-refs fails
374
+ . ref_transaction_commit: bail out on failure to remove a ref
375
+ . lockfile: remove unable_to_lock_error
376
+ . refs.c: do not permit err == NULL
377
+ . for-each-ref.c: improve message before aborting on broken ref
378
+ . refs.c: fix handling of badly named refs
379
+ . branch -d: avoid repeated symref resolution
380
+ . refs.c: change resolve_ref_unsafe reading argument to be a flags field
381
+ . refs.c: make write_ref_sha1 static
382
+ . fetch.c: change s_update_ref to use a ref transaction
383
+ . refs.c: ref_transaction_commit: distinguish name conflicts from other errors
384
+ . refs.c: pass a skip list to name_conflict_fn
385
+ . refs.c: call lock_ref_sha1_basic directly from commit
386
+ . refs.c: move the check for valid refname to lock_ref_sha1_basic
387
+ . rename_ref: don't ask read_ref_full where the ref came from
388
+ . refs.c: pass the ref log message to _create/delete/update instead of _commit
389
+ . refs.c: add an err argument to delete_ref_loose
390
+ . wrapper.c: add a new function unlink_or_msg
391
+ . wrapper.c: remove/unlink_or_warn: simplify, treat ENOENT as success
392
+ . mv test: recreate mod/ directory instead of relying on stale copy
393
+
394
+ Rerolled and was asked to wait. Seems to break HEAD reflog
395
+ upon "checkout HEAD^0".
396
+
397
+ Expecting another reroll.
398
+
399
+
400
+* jc/hash-object (2014-09-11) 3 commits
401
+ - hash-object: add --literally option
402
+ - hash-object: pass 'write_object' as a flag
403
+ - hash-object: reduce file-scope statics
404
+ (this branch is used by jc/hash-object-fsck-tag.)
405
+
406
+ "hash-object" learned a new "--literally" option to hash any random
407
+ garbage into a loose object, to allow us to create a test data for
408
+ mechanisms to catch corrupt objects.
409
+
410
+ Will merge to 'next'.
411
+
412
+
413
+* jc/hash-object-fsck-tag (2014-09-12) 2 commits
414
+ - t1450: make sure fsck detects a malformed tagger line
415
+ - Merge branch 'js/fsck-tag-validation' into HEAD
416
+ (this branch uses jc/hash-object and js/fsck-tag-validation.)
417
+
418
+ Using "hash-object --literally", test one of the new breakages
419
+ js/fsck-tag-validation topic teaches "fsck" to catch is caught.
420
+
421
+ Will merge to 'next'.
422
+
423
+
424
+* jk/fsck-exit-code-fix (2014-09-12) 2 commits
425
+ (merged to 'next' on 2014-09-18 at 34c696f)
426
+ + fsck: return non-zero status on missing ref tips
427
+ + fsck: exit with non-zero status upon error from fsck_obj()
428
+
429
+ "git fsck" failed to report that it found corrupt objects via its
430
+ exit status in some cases.
431
+
432
+ Will merge to 'master'.
433
+
434
+
435
+* js/fsck-tag-validation (2014-09-12) 6 commits
436
+ - Make sure that index-pack --strict checks tag objects
437
+ - Add regression tests for stricter tag fsck'ing
438
+ - fsck: check tag objects' headers
439
+ - Make sure fsck_commit_buffer() does not run out of the buffer
440
+ - fsck_object(): allow passing object data separately from the object itself
441
+ - Refactor type_from_string() to allow continuing after detecting an error
442
+ (this branch is used by jc/hash-object-fsck-tag.)
443
+
444
+ Teach "git fsck" to inspect the contents of annotated tag objects.
445
+
446
+ Will merge to 'next'.
447
+
448
+
449
* as/calloc-takes-nmemb-then-size (2014-09-03) 1 commit
557
- - calloc() and xcalloc() takes nmemb and then size
450
+ (merged to 'next' on 2014-09-12 at a287484)
451
+ + calloc() and xcalloc() takes nmemb and then size
452
453
Code clean-up.
454
561
- Will merge to 'next'.
455
+ Will merge to 'master'.
456
457
458
* tb/complete-diff-ignore-blank-lines (2014-09-03) 1 commit
565
- - completion: Add --ignore-blank-lines for diff
459
+ (merged to 'next' on 2014-09-12 at 1b7d259)
460
+ + completion: Add --ignore-blank-lines for diff
461
567
- Will merge to 'next'.
462
+ Will merge to 'master'.
463
464
465
* jc/parseopt-verify-short-name (2014-09-04) 1 commit
571
- - parse-options: detect attempt to add a duplicate short option name
466
+ (merged to 'next' on 2014-09-12 at 43dba24)
467
+ + parse-options: detect attempt to add a duplicate short option name
468
469
Add checks for a common programming mistake to assign the same
470
short option name to two separate options to help developers.
471
576
- Will merge to 'next'.
472
+ Will merge to 'master'.
473
474
475
* rs/more-uses-of-skip-prefix (2014-09-02) 2 commits
580
- - pack-write: simplify index_pack_lockfile using skip_prefix() and xstrfmt()
581
- - connect: simplify check_ref() using skip_prefix() and starts_with()
476
+ (merged to 'next' on 2014-09-12 at 156a436)
477
+ + pack-write: simplify index_pack_lockfile using skip_prefix() and xstrfmt()
478
+ + connect: simplify check_ref() using skip_prefix() and starts_with()
479
480
Code clean-up.
481
585
- Will merge to 'next'.
482
+ Will merge to 'master'.
483
484
485
* kb/perf-trace (2014-09-08) 1 commit
589
- - trace: correct trace_strbuf() parameter type for !HAVE_VARIADIC_MACROS
486
+ (merged to 'next' on 2014-09-12 at 371df71)
487
+ + trace: correct trace_strbuf() parameter type for !HAVE_VARIADIC_MACROS
488
489
Compilation fix for some compilers.
490
593
- Will merge to 'next'.
491
+ Will merge to 'master'.
492
493
494
* rs/export-strbuf-addchars (2014-09-08) 2 commits
597
- - strbuf: use strbuf_addchars() for adding a char multiple times
598
- - strbuf: export strbuf_addchars()
495
+ (merged to 'next' on 2014-09-12 at 8b25fe0)
496
+ + strbuf: use strbuf_addchars() for adding a char multiple times
497
+ + strbuf: export strbuf_addchars()
498
499
Code clean-up.
500
602
- Will merge to 'next'.
501
+ Will merge to 'master'.
502
503
605
-* tr/remerge-diff (2014-09-08) 8 commits
606
- - log --remerge-diff: show what the conflict resolution changed
607
- - name-hash: allow dir hashing even when !ignore_case
608
- - merge-recursive: allow storing conflict hunks in index
609
- - merge_diff_mode: fold all merge diff variants into an enum
610
- - combine-diff: do not pass revs->dense_combined_merges redundantly
611
- - merge-recursive: -Xindex-only to leave worktree unchanged
612
- - merge-recursive: internal flag to avoid touching the worktree
613
- - merge-recursive: remove dead conditional in update_stages()
614
-
615
- "log -p" output learns a new way to let users inspect a merge
616
- commit by showing the differences between the automerged result
617
- with conflicts the person who recorded the merge would have seen
618
- and the final conflict resolution that was recorded in the merge.
619
-
620
- Review comments sent.
621
-
622
-
623
-* mh/lockfile (2014-09-11) 33 commits
624
- - lockfile.c: store absolute path
625
- - Extract a function commit_lock_file_to()
626
- - trim_last_path_elm(): replace last_path_elm()
504
+* mh/lockfile (2014-09-16) 35 commits
505
+ - get_locked_file_path(): new function
506
+ - lockfile.c: rename static functions
507
+ - lockfile: rename LOCK_NODEREF to LOCK_NO_DEREF
508
+ - commit_locked_index(): extract a function commit_lock_file_to()
509
+ - trim_last_path_component(): replace last_path_elm()
510
- resolve_symlink(): take a strbuf parameter
511
- resolve_symlink(): use a strbuf for internal scratch space
629
- - Change lock_file::filename into a strbuf
512
+ - struct lock_file: change the filename member into a strbuf
513
- commit_lock_file(): use a strbuf to manage temporary space
514
- try_merge_strategy(): use a statically-allocated lock_file object
515
- try_merge_strategy(): remove redundant lock_file allocation
@@ -655,52 +538,51 @@ of the repositories listed at
538
- api-lockfile: expand the documentation
539
- unable_to_lock_die(): rename function from unable_to_lock_index_die()
540
658
- Rerolled and reviews starting.
659
-
660
-
661
-* nd/multiple-work-trees (2014-09-03) 32 commits
662
- . t2025: add a test to make sure grafts is working from a linked checkout
663
- . checkout: don't require a work tree when checking out into a new one
664
- . git_path(): keep "info/sparse-checkout" per work-tree
665
- . count-objects: report unused files in $GIT_DIR/repos/...
666
- . gc: support prune --repos
667
- . gc: factor out gc.pruneexpire parsing code
668
- . gc: style change -- no SP before closing parenthesis
669
- . prune: strategies for linked checkouts
670
- . checkout: reject if the branch is already checked out elsewhere
671
- . checkout: clean up half-prepared directories in --to mode
672
- . checkout: support checking out into a new working directory
673
- . use new wrapper write_file() for simple file writing
674
- . wrapper.c: wrapper to open a file, fprintf then close
675
- . setup.c: support multi-checkout repo setup
676
- . setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
677
- . setup.c: convert check_repository_format_gently to use strbuf
678
- . setup.c: detect $GIT_COMMON_DIR in is_git_directory()
679
- . setup.c: convert is_git_directory() to use strbuf
680
- . git-stash: avoid hardcoding $GIT_DIR/logs/....
681
- . *.sh: avoid hardcoding $GIT_DIR/hooks/...
682
- . git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
683
- . $GIT_COMMON_DIR: a new environment variable
684
- . commit: use SEQ_DIR instead of hardcoding "sequencer"
685
- . fast-import: use git_path() for accessing .git dir instead of get_git_dir()
686
- . reflog: avoid constructing .lock path with git_path
687
- . *.sh: respect $GIT_INDEX_FILE
688
- . git_path(): be aware of file relocation in $GIT_DIR
689
- . path.c: group git_path(), git_pathdup() and strbuf_git_path() together
690
- . path.c: rename vsnpath() to do_git_path()
691
- . git_snpath(): retire and replace with strbuf_git_path()
692
- . path.c: make get_pathname() call sites return const char *
693
- . path.c: make get_pathname() return strbuf instead of static buffer
541
+ Rerolled, reviews in progress; it seems that we will see another reroll?
542
+
543
+
544
+* nd/multiple-work-trees (2014-09-16) 32 commits
545
+ - t2025: add a test to make sure grafts is working from a linked checkout
546
+ - checkout: don't require a work tree when checking out into a new one
547
+ - git_path(): keep "info/sparse-checkout" per work-tree
548
+ - count-objects: report unused files in $GIT_DIR/worktrees/...
549
+ - gc: support prune --worktrees
550
+ - gc: factor out gc.pruneexpire parsing code
551
+ - gc: style change -- no SP before closing parenthesis
552
+ - checkout: clean up half-prepared directories in --to mode
553
+ - checkout: reject if the branch is already checked out elsewhere
554
+ - prune: strategies for linked checkouts
555
+ - checkout: support checking out into a new working directory
556
+ - use new wrapper write_file() for simple file writing
557
+ - wrapper.c: wrapper to open a file, fprintf then close
558
+ - setup.c: support multi-checkout repo setup
559
+ - setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
560
+ - setup.c: convert check_repository_format_gently to use strbuf
561
+ - setup.c: detect $GIT_COMMON_DIR in is_git_directory()
562
+ - setup.c: convert is_git_directory() to use strbuf
563
+ - git-stash: avoid hardcoding $GIT_DIR/logs/....
564
+ - *.sh: avoid hardcoding $GIT_DIR/hooks/...
565
+ - git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
566
+ - $GIT_COMMON_DIR: a new environment variable
567
+ - commit: use SEQ_DIR instead of hardcoding "sequencer"
568
+ - fast-import: use git_path() for accessing .git dir instead of get_git_dir()
569
+ - reflog: avoid constructing .lock path with git_path
570
+ - *.sh: respect $GIT_INDEX_FILE
571
+ - git_path(): be aware of file relocation in $GIT_DIR
572
+ - path.c: group git_path(), git_pathdup() and strbuf_git_path() together
573
+ - path.c: rename vsnpath() to do_git_path()
574
+ - git_snpath(): retire and replace with strbuf_git_path()
575
+ - path.c: make get_pathname() call sites return const char *
576
+ - path.c: make get_pathname() return strbuf instead of static buffer
577
578
A replacement for contrib/workdir/git-new-workdir that does not
579
rely on symbolic links and make sharing of objects and refs safer
580
by making the borrowee and borrowers aware of each other.
581
699
- Re-reroll posted but haven't had a chance to pick it up yet.
700
- The series already received a few comments.
582
+ Rerolled, reviews in progress; it seems that we will see another reroll?
583
584
703
-* cc/interpret-trailers (2014-05-28) 11 commits
585
+* cc/interpret-trailers (2014-09-15) 11 commits
586
- Documentation: add documentation for 'git interpret-trailers'
587
- trailer: add tests for commands in config file
588
- trailer: execute command from 'trailer.<name>.command'
@@ -716,35 +598,39 @@ of the repositories listed at
598
A new filter to programatically edit the tail end of the commit log
599
messages.
600
719
- Comments & reviews?
601
+ Rerolled, with some review comments but not much; it seems that we
602
+ will see another reroll?
603
604
605
* bb/date-iso-strict (2014-08-29) 1 commit
723
- - pretty: provide a strict ISO 8601 date format
606
+ (merged to 'next' on 2014-09-12 at c9d415d)
607
+ + pretty: provide a strict ISO 8601 date format
608
609
"log --date=iso" uses a slight variant of ISO 8601 format that is
610
made more human readable. A new "--date=iso-strict" option gives
611
datetime output that is more strictly conformant.
612
729
- Will merge to 'next'.
613
+ Will merge to 'master'.
614
615
616
* jk/commit-author-parsing (2014-08-29) 6 commits
733
- - determine_author_info(): copy getenv output
734
- - determine_author_info(): reuse parsing functions
735
- - date: use strbufs in date-formatting functions
736
- - record_author_date(): use find_commit_header()
737
- - record_author_date(): fix memory leak on malformed commit
738
- - commit: provide a function to find a header in a buffer
617
+ (merged to 'next' on 2014-09-12 at cfbb6b6)
618
+ + determine_author_info(): copy getenv output
619
+ + determine_author_info(): reuse parsing functions
620
+ + date: use strbufs in date-formatting functions
621
+ + record_author_date(): use find_commit_header()
622
+ + record_author_date(): fix memory leak on malformed commit
623
+ + commit: provide a function to find a header in a buffer
624
625
Code clean-up.
626
742
- Will merge to 'next'.
627
+ Will merge to 'master'.
628
629
630
* jk/fast-export-anonymize (2014-08-28) 2 commits
746
- - docs/fast-export: explain --anonymize more completely
747
- - teach fast-export an --anonymize option
631
+ (merged to 'next' on 2014-09-12 at 0af10fa)
632
+ + docs/fast-export: explain --anonymize more completely
633
+ + teach fast-export an --anonymize option
634
635
Sometimes users want to report a bug they experience on their
636
repository, but they are not at liberty to share the contents of
@@ -752,33 +638,36 @@ of the repositories listed at
638
to replace blob contents, names of people and paths and log
639
messages with bland and simple strings to help them.
640
755
- Will merge to 'next'.
641
+ Will merge to 'master'.
642
643
644
* jk/index-pack-threading-races (2014-08-29) 1 commit
759
- - index-pack: fix race condition with duplicate bases
645
+ (merged to 'next' on 2014-09-12 at 9241312)
646
+ + index-pack: fix race condition with duplicate bases
647
648
When receiving an invalid pack stream that records the same object
649
twice, multiple threads got confused due to a race. We should
650
reject or correct such a stream upon receiving, but that will be a
651
larger change.
652
766
- Will merge to 'next'.
653
+ Will merge to 'master'.
654
655
656
* jk/send-pack-many-refspecs (2014-08-26) 1 commit
770
- - send-pack: take refspecs over stdin
657
+ (merged to 'next' on 2014-09-12 at 7f4ae4e)
658
+ + send-pack: take refspecs over stdin
659
660
The number of refs that can be pushed at once over smart HTTP was
661
limited by the command line length. The limitation has been lifted
662
by passing these refs from the standard input of send-pack.
663
776
- Will merge to 'next'.
664
+ Will merge to 'master'.
665
666
667
* jp/index-with-corrupt-stages (2014-08-29) 2 commits
780
- - read_index_unmerged(): remove unnecessary loop index adjustment
781
- - read_index_from(): catch out of order entries when reading an index file
668
+ (merged to 'next' on 2014-09-12 at 54016d5)
669
+ + read_index_unmerged(): remove unnecessary loop index adjustment
670
+ + read_index_from(): catch out of order entries when reading an index file
671
672
A broken reimplementation of Git could write an invalid index that
673
records both stage #0 and higher stage entries for the same path.
@@ -787,86 +676,94 @@ of the repositories listed at
676
remove higher stage entries, or if it wanted to unresolve and
677
forgot to remove the stage#0 entry).
678
790
- Will merge to 'next'.
679
+ Will merge to 'master'.
680
681
682
* mb/build-contrib-svn-fe (2014-08-28) 1 commit
794
- - contrib/svn-fe: fix Makefile
683
+ (merged to 'next' on 2014-09-12 at acb252b)
684
+ + contrib/svn-fe: fix Makefile
685
796
- Will merge to 'next'.
686
+ Will merge to 'master'.
687
688
689
* mb/fast-import-delete-root (2014-08-29) 2 commits
800
- - fast-import: fix segfault in store_tree()
801
- - t9300: test filedelete command
690
+ (merged to 'next' on 2014-09-12 at d0fda49)
691
+ + fast-import: fix segfault in store_tree()
692
+ + t9300: test filedelete command
693
694
An attempt to remove the entire tree in the "git fast-import" input
695
stream caused it to misbehave.
696
806
- Will merge to 'next'.
697
+ Will merge to 'master'.
698
699
700
* ah/grammofix (2014-09-02) 1 commit
810
- - grammofix in user-facing messages
701
+ (merged to 'next' on 2014-09-12 at 58fbb44)
702
+ + grammofix in user-facing messages
703
812
- Will merge to 'next'.
704
+ Will merge to 'master'.
705
706
707
* da/styles (2014-09-02) 1 commit
816
- - stylefix: asterisks stick to the variable, not the type
708
+ (merged to 'next' on 2014-09-12 at a22322e)
709
+ + stylefix: asterisks stick to the variable, not the type
710
818
- Will merge to 'next'.
819
-
820
-
821
-* da/use-rev-parse-verify-quiet-in-stash (2014-09-09) 1 commit
822
- - stash: prefer --quiet over shell redirection of the standard error stream
823
-
824
- Will merge to 'next'.
711
+ Will merge to 'master'.
712
713
714
* mk/reachable-protect-detached-head (2014-09-03) 1 commit
828
- - reachable.c: add HEAD to reachability starting commits
715
+ (merged to 'next' on 2014-09-12 at de2b50b)
716
+ + reachable.c: add HEAD to reachability starting commits
717
830
- Will merge to 'next'.
718
+ Will merge to 'master'.
719
720
721
* rs/merge-tree-simplify (2014-09-02) 1 commit
834
- - merge-tree: remove unused df_conflict arguments
722
+ (merged to 'next' on 2014-09-12 at 5b4c349)
723
+ + merge-tree: remove unused df_conflict arguments
724
725
Code clean-up.
726
838
- Will merge to 'next'.
727
+ Will merge to 'master'.
728
729
730
* rs/simplify-config-include (2014-09-02) 1 commit
842
- - config: simplify git_config_include()
731
+ (merged to 'next' on 2014-09-12 at e4ffd6d)
732
+ + config: simplify git_config_include()
733
734
Code clean-up.
735
846
- Will merge to 'next'.
736
+ Will merge to 'master'.
737
738
739
* rs/simplify-http-walker (2014-09-02) 1 commit
850
- - http-walker: simplify process_alternates_response() using strbuf
740
+ (merged to 'next' on 2014-09-12 at b5178d2)
741
+ + http-walker: simplify process_alternates_response() using strbuf
742
743
Code clean-up.
744
854
- Will merge to 'next'.
745
+ Will merge to 'master'.
746
747
748
* tb/crlf-tests (2014-09-02) 3 commits
858
- - MinGW: update tests to handle a native eol of crlf
859
- - Makefile: propagate NATIVE_CRLF to C
860
- - t0027: Tests for core.eol=native, eol=lf, eol=crlf
749
+ (merged to 'next' on 2014-09-12 at 2c950af)
750
+ + MinGW: update tests to handle a native eol of crlf
751
+ + Makefile: propagate NATIVE_CRLF to C
752
+ + t0027: Tests for core.eol=native, eol=lf, eol=crlf
753
862
- Will merge to 'next'.
754
+ Will merge to 'master'.
755
756
865
-* ta/config-add-to-empty-or-true-fix (2014-08-18) 1 commit
757
+* ta/config-add-to-empty-or-true-fix (2014-09-11) 2 commits
758
+ (merged to 'next' on 2014-09-15 at af779a7)
759
+ + config: avoid a funny sentinel value "a^"
760
(merged to 'next' on 2014-08-29 at d219212)
761
+ make config --add behave correctly for empty and NULL values
762
869
- We may want to undo the "a^" bit along the lines of $gmane/255445
763
+ "git config --add section.var val" used to lose existing
764
+ section.var whose value was an empty string.
765
+
766
+ Will merge to 'master'.
767
768
769
* sp/stream-clean-filter (2014-08-28) 6 commits
@@ -880,8 +777,9 @@ of the repositories listed at
777
Rerolled. Comments & reviews?
778
779
883
-* jc/push-cert (2014-09-08) 22 commits
780
+* jc/push-cert (2014-09-17) 23 commits
781
- signed push: allow stale nonce in stateless mode
782
+ - signed push: teach smart-HTTP to pass "git push --signed" around
783
- signed push: fortify against replay attacks
784
- signed push: add "pushee" header to push certificate
785
- signed push: remove duplicated protocol info
@@ -909,7 +807,7 @@ of the repositories listed at
807
tips of branches at a public repository really point the commits
808
the pusher wanted to, without having to "trust" the server.
809
912
- Comments & reviews?
810
+ Will start merging early bits to 'next'.
811
812
813
* jc/test-lazy-prereq (2014-06-13) 1 commit
@@ -929,5 +827,16 @@ of the repositories listed at
827
is backward incompatible, the last bit to flip it to be the default
828
is left out of 'master' for now.
829
932
- Nobody seems to be jumping up & down requesting this last step.
933
- Perhaps will drop.
830
+ Nobody seems to be jumping up & down requesting this last step,
831
+ which makes the result somewhat backward incompatible.
832
+ Will perhaps drop.
833
+
834
+--------------------------------------------------
835
+[Discarded]
836
+
837
+* rs/ref-transaction-multi (2014-09-03) 7 commits
838
+* rs/ref-transaction-rename (2014-09-03) 6 commits
839
+* rs/ref-transaction-reflog (2014-09-03) 29 commits
840
+
841
+ It appears that rs/ref-transaction series is being rerolled, so
842
+ these will be rerolled as well.