What's cooking (2014/08 #04)

Junio C Hamano committed Aug 26, 2014 at 15:05 UTC a7525a26004fb900833d03e1d4398f02f043afe7
1 file changed +369 -261
whats-cooking.txt
+369 -261
@@ -1,21 +1,22 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Aug 2014, #03; Wed, 20)
4 -X-master-at: 6c4ab27f2378ce67940b4496365043119d7ffff2
5 -X-next-at: 9eef2c89753895da807c936ff1ba3a255c8370c9
3 +Subject: What's cooking in git.git (Aug 2014, #04; Tue, 26)
4 +X-master-at: 4109c28e055dba27d73cefb956bea5e611f66ec0
5 +X-next-at: 11be0d652a0216982fcd6503ffcadf94f8ac3fd9
6
7 -What's cooking in git.git (Aug 2014, #03; Wed, 20)
7 +What's cooking in git.git (Aug 2014, #04; Tue, 26)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
12 '+' are in 'next'.
13
14 -A few fixes for regressions have been posted since 2.1 was tagged,
15 -which I'd like to address before moving any topic to 'master',
16 -rewinding 'next', or doing anything for the 2.2 cycle. Hopefully by
17 -the end of this week 'next' will be rewound and rebuilt and then we
18 -can start taking patches for new topics in earnest from that point.
14 +The 'maint' branch now is for the 2.1.x maintenance track, and a few
15 +fixes for recent regressions have been merged to 'maint' and 'master'.
16 +The 'next' has been rewound, while kicking a couple of topics back
17 +to 'pu' per topic owners' requests. I still haven't caught up with
18 +new topics and rerolls that came late in the last cycle yet but
19 +hopefully I can in the coming days.
20
21 You can find the changes described here in the integration branches
22 of the repositories listed at
@@ -23,164 +24,133 @@ of the repositories listed at
24 http://git-blame.blogspot.com/p/git-public-repositories.html
25
26 --------------------------------------------------
26 -[New Topics]
27 -
28 -* br/http-init-fix (2014-08-18) 2 commits
29 - - http: style fixes for curl_multi_init error check
30 - - http.c: die if curl_*_init fails
31 -
32 - Needs S-o-b from peff for the topmost one.
33 -
34 -
35 -* br/imap-send-simplify-tunnel-child-process (2014-08-20) 2 commits
36 - - imap-send.c: imap_folder -> imap_server_conf.folder
37 - - git-imap-send: simplify tunnel construction
38 -
39 - Will merge to 'next'.
27 +[Graduated to "master"]
28
29 +* jk/diff-tree-t-fix (2014-08-20) 1 commit
30 + (merged to 'next' on 2014-08-21 at 0f652d6)
31 + + intersect_paths: respect mode in git's tree-sort
32
42 -* jc/config-mak-document-darwin-vs-macosx (2014-08-15) 1 commit
43 - - config.mak.uname: add hint on uname_R for MacOS X
44 - (this branch uses km/no-apple-common-crypto-on-darwin-8-and-below.)
45 -
46 - Will merge to 'next'.
33 + Fix (rarely used) "git diff-tree -t" regression in 2.0.
34
35
36 * jk/fix-profile-feedback-build (2014-08-19) 1 commit
50 - - Makefile: make perf tests optional for profile build
37 + (merged to 'next' on 2014-08-21 at b282021)
38 + + Makefile: make perf tests optional for profile build
39
40 Fix profile-feedback build broken in 2.1 for tarball releases.
41
54 - Will merge to 'next'.
55 -
42
43 * jk/pack-shallow-always-without-bitmap (2014-08-12) 1 commit
58 - - pack-objects: turn off bitmaps when we see --shallow lines
44 + (merged to 'next' on 2014-08-21 at e04c935)
45 + + pack-objects: turn off bitmaps when we see --shallow lines
46
47 Reachability bitmaps do not work with shallow operations.
48 + Fixes regression in 2.0.
49
62 - Will merge to 'next'.
63 -
64 -
65 -* jn/header-dependencies (2014-08-10) 1 commit
66 - - Update hard-coded header dependencies
50 +--------------------------------------------------
51 +[New Topics]
52
68 - Needs further discussions on the list.
53 +* et/spell-poll-infinite-with-minus-one-only (2014-08-22) 1 commit
54 + - upload-pack: keep poll(2)'s timeout to -1
55
56 + We used to pass -1000 to poll(2), expecting it to also mean "no
57 + timeout", which should be spelled as -1.
58
71 -* jn/unpack-trees-checkout-m-carry-deletion (2014-08-13) 4 commits
72 - - SQUASH???
73 - - checkout -m: attempt merge when deletion of path was staged
74 - - unpack-trees: use 'cuddled' style for if-else cascade
75 - - unpack-trees: simplify 'all other failures' case
76 -
77 - Needs tests; perhaps squashing in the topmost "SQUASH???" is enough.
59 + Will merge to 'next'.
60
61
80 -* km/no-apple-common-crypto-on-darwin-8-and-below (2014-08-15) 1 commit
81 - - config.mak.uname: set NO_APPLE_COMMON_CRYPTO on older systems
82 - (this branch is used by jc/config-mak-document-darwin-vs-macosx.)
62 +* jk/make-simplify-dependencies (2014-08-25) 2 commits
63 + - Makefile: use `find` to determine static header dependencies
64 + - i18n: treat "make pot" as an explicitly-invoked target
65
84 - Build automation for older versions of MacOS X.
66 + Admit that keeping LIB_H up-to-date, only for those that do not use
67 + the automatically generated dependencies, is a losing battle, and
68 + make it conservative by making everything depend on anything.
69
70 Will merge to 'next'.
71
72
89 -* nd/large-blobs (2014-08-18) 5 commits
90 - - diff: shortcut for diff'ing two binary SHA-1 objects
91 - - diff --stat: mark any file larger than core.bigfilethreshold binary
92 - - diff.c: allow to pass more flags to diff_populate_filespec
93 - - sha1_file.c: do not die failing to malloc in unpack_compressed_entry
94 - - wrapper.c: introduce gentle xmallocz that does not die()
95 -
96 - Will merge to 'next'.
73 +* jk/prompt-stash-could-be-packed (2014-08-25) 1 commit
74 + - git-prompt: do not look for refs/stash in $GIT_DIR
75
76 + The prompt script checked $GIT_DIR/ref/stash file to see if there
77 + is a stash, which was a no-no.
78
99 -* nd/mv-code-cleaning (2014-08-11) 9 commits
100 - - SQUASH???
101 - - mv: no SP between function name and the first opening parenthese
102 - - mv: combine two if(s)
103 - - mv: unindent one level for directory move code
104 - - mv: move index search code out
105 - - mv: remove an "if" that's always true
106 - - mv: split submodule move preparation code out
107 - - mv: flatten error handling code block
108 - - mv: mark strings for translations
79 + Will merge to 'next'.
80
110 - Needs rerolling to account for the topmost "SQUASH???" simplification.
81
82 +* jk/prune-top-level-refs-after-packing (2014-08-25) 1 commit
83 + - pack-refs: prune top-level refs like "refs/foo"
84
113 -* nd/strbuf-utf8-replace (2014-08-11) 1 commit
114 - - utf8.c: fix strbuf_utf8_replace() consuming data beyond input string
85 + After "pack-refs --prune" packed refs at the top-level, it failed
86 + to prune them.
87
88 Will merge to 'next'.
89
90
119 -* rr/mergetool-temporary-filename-tweak (2014-08-19) 1 commit
120 - - Allow the user to change the temporary file name for mergetool
121 -
122 - Needs rerolling (new paragraph in doc seems to be in a wrong place)
91 +* jk/fast-import-fixes (2014-08-25) 2 commits
92 + - fast-import: fix buffer overflow in dump_tags
93 + - fast-import: clean up pack_data pointer in end_packfile
94
124 -
125 -* rs/clean-menu-item-defn (2014-08-18) 1 commit
126 - - clean: use f(void) instead of f() to declare a pointer to a function without arguments
95 + With sufficiently long refnames, fast-import could have overflown
96 + an on-stack buffer.
97
98 Will merge to 'next'.
99
100
131 -* rs/inline-compat-path-macros (2014-08-18) 1 commit
132 - - turn path macros into inline function
101 +* nd/fetch-pass-quiet-to-gc-child-process (2014-08-18) 2 commits
102 + - fetch: silence git-gc if --quiet is given
103 + - fetch: convert argv_gc_auto to struct argv_array
104 +
105 + Progress output from "git gc --auto" was visible in "git fetch -q".
106
107 Will merge to 'next'.
108
109
137 -* rs/refresh-beyond-symlink (2014-08-10) 1 commit
138 - - read-cache: check for leading symlinks when refreshing index
110 +* rs/list-optim (2014-08-25) 2 commits
111 + - walker: avoid quadratic list insertion in mark_complete
112 + - sha1_name: avoid quadratic list insertion in handle_one_ref
113
140 - "git add x" where x that used to be a directory has become a
141 - symbolic link to a directory misbehaved.
114 + Fix a couple of "accumulate into a sorted list" to "accumulate and
115 + then sort the list".
116
117 Will merge to 'next'.
118
119
146 -* sb/blame-msg-i18n (2014-08-12) 1 commit
147 - - builtin/blame.c: add translation to warning about failed revision walk
120 +* sb/mailsplit-dead-code-removal (2014-08-13) 1 commit
121 + - mailsplit.c: remove dead code
122
123 Will merge to 'next'.
124
125
152 -* sb/plug-leaks (2014-08-10) 2 commits
153 - - clone.c: don't leak memory in cmd_clone
154 - - remote.c: don't leak the base branch name in format_tracking_info
155 -
156 - Will merge to 'next'.
157 -
126 +* tb/pretty-format-cd-date-format (2014-08-21) 1 commit
127 + - pretty: note that %cd respects the --date= option
128
159 -* sb/prepare-revision-walk-error-check (2014-08-12) 1 commit
160 - - prepare_revision_walk(): check for return value in all places
129 + Documentation update.
130
131 Will merge to 'next'.
132
133
165 -* sb/unpack-trees-dead-code-removal (2014-08-12) 2 commits
166 - - SQUASH???
167 - - unpack-tree.c: remove dead code
168 -
169 - Will discard (jn/unpack-trees-checkout-m-carry-deletion should do the same).
134 +* jk/name-decoration-alloc (2014-08-26) 3 commits
135 + - log-tree: use FLEX_ARRAY in name_decoration
136 + - log-tree: make name_decoration hash static
137 + - log-tree: make add_name_decoration a public function
138
171 -
172 -* so/rebase-doc (2014-08-12) 1 commit
173 - - Documentation/git-rebase.txt: -f forces a rebase that would otherwise be a no-op
174 -
175 - May need description on what makes various modes of operation to
176 - decide that the request can become a "no-op".
139 + The API to allocate the structure to keep track of commit
140 + decoration was cumbersome to use, inviting lazy code to
141 + overallocate memory.
142
143 Will merge to 'next'.
144
145 +--------------------------------------------------
146 +[Stalled]
147 +
148 +* cb/mergetool-difftool (2014-07-21) 2 commits
149 + - difftool: don't assume that default sh is sane
150 + - mergetool: don't require a work tree for --tool-help
151
181 -* sp/stream-clean-filter (2014-08-12) 2 commits
182 - - convert: Stream from fd to required clean filter instead of mmap
183 - - convert: Refactor would_convert_to_git() to single arg 'path'
152 + Update the way the "difftool --help" shows the help message that is
153 + shared with the "mergetool" to reduce one shell dependency.
154
155 Will be rerolled.
156
@@ -191,54 +161,11 @@ of the repositories listed at
161 Will be rerolled.
162
163
194 -* jc/push-cert (2014-08-19) 18 commits
195 - - signed push: final protocol update
196 - - send-pack: send feature request on push-cert packet
197 - - receive-pack: GPG-validate push certificates
198 - - the beginning of the signed push
199 - - pack-protocol doc: typofix for PKT-LINE
200 - - gpg-interface: move parse_signature() to where it should be
201 - - gpg-interface: move parse_gpg_output() to where it should be
202 - - send-pack: clarify that cmds_sent is a boolean
203 - - send-pack: refactor inspecting and resetting status and sending commands
204 - - send-pack: rename "new_refs" to "need_pack_data"
205 - - send-pack: factor out capability string generation
206 - - send-pack: always send capabilities
207 - - send-pack: refactor decision to send update per ref
208 - - send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher
209 - - receive-pack: factor out queueing of command
210 - - receive-pack: do not reuse old_sha1[] to other things
211 - - receive-pack: parse feature request a bit earlier
212 - - receive-pack: do not overallocate command structure
213 -
214 - Allow "git push" request to be signed, so that it can be verified
215 - audited, using the GPG signature of the person who pushed, that the
216 - tips of branches at a public repository really point the commits
217 - the pusher wanted to, without having to "trust" the server.
218 -
219 - Needs further discussion and then a reroll.
220 -
221 - Replay attack prevention needs to be tightened and also need to fix
222 - a few minor typos.
223 -
224 -* jk/diff-tree-t-fix (2014-08-20) 1 commit
225 - - intersect_paths: respect mode in git's tree-sort
226 -
227 - Fix (rarely used) "git diff-tree -t" regression in 2.0.
228 -
229 - Will merge to 'next'.
230 -
231 -
232 -* rs/child-process-init (2014-08-20) 4 commits
233 - - run-command: inline prepare_run_command_v_opt()
234 - - run-command: call run_command_v_opt_cd_env() instead of duplicating it
235 - - run-command: introduce child_process_init()
236 - - run-command: introduce CHILD_PROCESS_INIT
164 +* rr/mergetool-temporary-filename-tweak (2014-08-21) 1 commit
165 + - Allow the user to change the temporary file name for mergetool
166
238 - Will merge to 'next'.
167 + Needs rerolling (new paragraph in doc seems to be in a wrong place)
168
240 ---------------------------------------------------
241 -[Stalled]
169
170 * jk/tag-contains (2014-06-30) 8 commits
171 . perf: add tests for tag --contains
@@ -306,9 +233,6 @@ of the repositories listed at
233 A new filter to programatically edit the tail end of the commit log
234 messages.
235
309 - What is the status of this one? I think I saw reviews by Michael
310 - but after that I do not recall seeing any updates.
311 -
236
237 * mh/lockfile (2014-04-15) 25 commits
238 . trim_last_path_elm(): replace last_path_elm()
@@ -455,18 +379,185 @@ of the repositories listed at
379 --------------------------------------------------
380 [Cooking]
381
458 -* tf/imap-send-create (2014-08-01) 3 commits
459 - - SQUASH??? varargs form of issue-imap-cmd is no longer used
382 +* br/http-init-fix (2014-08-21) 2 commits
383 + - http: style fixes for curl_multi_init error check
384 + - http.c: die if curl_*_init fails
385 +
386 + Will merge to 'next'.
387 +
388 +
389 +* br/imap-send-simplify-tunnel-child-process (2014-08-20) 2 commits
390 + - imap-send.c: imap_folder -> imap_server_conf.folder
391 + - git-imap-send: simplify tunnel construction
392 +
393 + Will merge to 'next'.
394 +
395 +
396 +* jc/config-mak-document-darwin-vs-macosx (2014-08-15) 1 commit
397 + - config.mak.uname: add hint on uname_R for MacOS X
398 + (this branch uses km/no-apple-common-crypto-on-darwin-8-and-below.)
399 +
400 + Will merge to 'next'.
401 +
402 +
403 +* jn/unpack-trees-checkout-m-carry-deletion (2014-08-25) 3 commits
404 + - checkout -m: attempt merge when deletion of path was staged
405 + - unpack-trees: use 'cuddled' style for if-else cascade
406 + - unpack-trees: simplify 'all other failures' case
407 +
408 + Will merge to 'next'.
409 +
410 +
411 +* km/no-apple-common-crypto-on-darwin-8-and-below (2014-08-15) 1 commit
412 + - config.mak.uname: set NO_APPLE_COMMON_CRYPTO on older systems
413 + (this branch is used by jc/config-mak-document-darwin-vs-macosx.)
414 +
415 + Build automation for older versions of MacOS X.
416 +
417 + Will merge to 'next'.
418 +
419 +
420 +* nd/large-blobs (2014-08-18) 5 commits
421 + - diff: shortcut for diff'ing two binary SHA-1 objects
422 + - diff --stat: mark any file larger than core.bigfilethreshold binary
423 + - diff.c: allow to pass more flags to diff_populate_filespec
424 + - sha1_file.c: do not die failing to malloc in unpack_compressed_entry
425 + - wrapper.c: introduce gentle xmallocz that does not die()
426 +
427 + Will merge to 'next'.
428 +
429 +
430 +* nd/mv-code-cleaning (2014-08-11) 9 commits
431 + - SQUASH???
432 + - mv: no SP between function name and the first opening parenthese
433 + - mv: combine two if(s)
434 + - mv: unindent one level for directory move code
435 + - mv: move index search code out
436 + - mv: remove an "if" that's always true
437 + - mv: split submodule move preparation code out
438 + - mv: flatten error handling code block
439 + - mv: mark strings for translations
440 +
441 + SQUASH!!! Will merge to 'next'.
442 +
443 +
444 +* nd/strbuf-utf8-replace (2014-08-11) 1 commit
445 + - utf8.c: fix strbuf_utf8_replace() consuming data beyond input string
446 +
447 + Will merge to 'next'.
448 +
449 +
450 +* rs/clean-menu-item-defn (2014-08-18) 1 commit
451 + - clean: use f(void) instead of f() to declare a pointer to a function without arguments
452 +
453 + Will merge to 'next'.
454 +
455 +
456 +* rs/inline-compat-path-macros (2014-08-18) 1 commit
457 + - turn path macros into inline function
458 +
459 + Will merge to 'next'.
460 +
461 +
462 +* rs/refresh-beyond-symlink (2014-08-10) 1 commit
463 + - read-cache: check for leading symlinks when refreshing index
464 +
465 + "git add x" where x that used to be a directory has become a
466 + symbolic link to a directory misbehaved.
467 +
468 + Will merge to 'next'.
469 +
470 +
471 +* sb/blame-msg-i18n (2014-08-12) 1 commit
472 + - builtin/blame.c: add translation to warning about failed revision walk
473 +
474 + Will merge to 'next'.
475 +
476 +
477 +* sb/plug-leaks (2014-08-10) 2 commits
478 + - clone.c: don't leak memory in cmd_clone
479 + - remote.c: don't leak the base branch name in format_tracking_info
480 +
481 + Will merge to 'next'.
482 +
483 +
484 +* sb/prepare-revision-walk-error-check (2014-08-12) 1 commit
485 + - prepare_revision_walk(): check for return value in all places
486 +
487 + Will merge to 'next'.
488 +
489 +
490 +* so/rebase-doc (2014-08-12) 1 commit
491 + - Documentation/git-rebase.txt: -f forces a rebase that would otherwise be a no-op
492 +
493 + May need description on what makes various modes of operation to
494 + decide that the request can become a "no-op".
495 +
496 + Will merge to 'next'.
497 +
498 +
499 +* sp/stream-clean-filter (2014-08-22) 4 commits
500 + - convert: stream from fd to required clean filter instead of mmap
501 + - memory_limit_check(): allow a limit that does not fit in "int"
502 + - sha1_file.c: introduce GIT_MMAP_LIMIT to limit mmap size
503 + - convert: drop arguments other than 'path' from would_convert_to_git()
504 +
505 + Reroll posted but haven't had time to look at it yet.
506 +
507 +
508 +* jc/push-cert (2014-08-25) 20 commits
509 + - signed push: fortify against replay attacks
510 + - signed-push: add "pushee" header to push certificate
511 + - signed push: remove duplicated protocol info
512 + - send-pack: send feature request on push-cert packet
513 + - receive-pack: GPG-validate push certificates
514 + - the beginning of the signed push
515 + - pack-protocol doc: typofix for PKT-LINE
516 + - gpg-interface: move parse_signature() to where it should be
517 + - gpg-interface: move parse_gpg_output() to where it should be
518 + - send-pack: clarify that cmds_sent is a boolean
519 + - send-pack: refactor inspecting and resetting status and sending commands
520 + - send-pack: rename "new_refs" to "need_pack_data"
521 + - send-pack: factor out capability string generation
522 + - send-pack: always send capabilities
523 + - send-pack: refactor decision to send update per ref
524 + - send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher
525 + - receive-pack: factor out queueing of command
526 + - receive-pack: do not reuse old_sha1[] for other things
527 + - receive-pack: parse feature request a bit earlier
528 + - receive-pack: do not overallocate command structure
529 +
530 + Allow "git push" request to be signed, so that it can be verified
531 + audited, using the GPG signature of the person who pushed, that the
532 + tips of branches at a public repository really point the commits
533 + the pusher wanted to, without having to "trust" the server.
534 +
535 + The tip two feels still a bit slushy, but otherwise should be
536 + reasonably solid to build upon.
537 +
538 +
539 +* rs/child-process-init (2014-08-20) 4 commits
540 + - run-command: inline prepare_run_command_v_opt()
541 + - run-command: call run_command_v_opt_cd_env() instead of duplicating it
542 + - run-command: introduce child_process_init()
543 + - run-command: introduce CHILD_PROCESS_INIT
544 +
545 + Will merge to 'next'.
546 +
547 +
548 +* tf/imap-send-create (2014-08-25) 2 commits
549 - imap-send: create target mailbox if it is missing
550 - imap-send: clarify CRAM-MD5 vs LOGIN documentation
551
463 - Will merge to 'next' after dealing with the SQUASH??? fix-up.
552 + Will merge to 'next'.
553
554
555 * bc/archive-pax-header-mode (2014-08-04) 1 commit
467 - (merged to 'next' on 2014-08-13 at 9972bb2)
556 + (merged to 'next' on 2014-08-26 at 51fca1a)
557 + archive: honor tar.umask even for pax headers
558
559 + Originally merged to 'next' on 2014-08-13
560 +
561 Implementations of "tar" that do not understand an extended pax
562 header would extract the contents of it in a regular file; make
563 sure the permission bits of this file follows the same tar.umask
@@ -511,11 +602,13 @@ of the repositories listed at
602
603
604 * jk/pretty-empty-format (2014-07-30) 3 commits
514 - (merged to 'next' on 2014-08-13 at 543bb4d)
605 + (merged to 'next' on 2014-08-26 at 1eb7cc3)
606 + pretty: make empty userformats truly empty
607 + pretty: treat "--format=" as an empty userformat
608 + revision: drop useless string offset when parsing "--pretty"
609
610 + Originally merged to 'next' on 2014-08-13
611 +
612 "git log --pretty/format=" with an empty format string did not mean
613 the more obvious "No output whatsoever" but "Use default format",
614 which was counterintuitive.
@@ -558,6 +651,8 @@ of the repositories listed at
651 - config.c: mark error and warnings strings for translation
652 (this branch is used by ta/config-set-2; uses ta/config-set.)
653
654 + Will merge to 'next'.
655 +
656
657 * ta/config-set-2 (2014-08-13) 15 commits
658 - builtin/apply.c: replace `git_config()` with `git_config_get_string_const()`
@@ -577,11 +672,15 @@ of the repositories listed at
672 - daemon.c: replace `git_config()` with `git_config_get_bool()` family
673 (this branch uses ta/config-set and ta/config-set-1.)
674
675 + Will merge to 'next'.
676 +
677
678 * ta/pretty-parse-config (2014-08-04) 1 commit
582 - (merged to 'next' on 2014-08-13 at 07396f4)
679 + (merged to 'next' on 2014-08-26 at 901e8c2)
680 + pretty.c: make git_pretty_formats_config return -1 on git_config_string failure
681
682 + Originally merged to 'next' on 2014-08-13
683 +
684 Will merge to 'master'.
685
686
@@ -596,9 +695,11 @@ of the repositories listed at
695
696
697 * pr/remotes-in-hashmap (2014-07-30) 1 commit
599 - (merged to 'next' on 2014-08-13 at 850c14a)
698 + (merged to 'next' on 2014-08-26 at 2052a31)
699 + use a hashmap to make remotes faster
700
701 + Originally merged to 'next' on 2014-08-13
702 +
703 Optimize remotes configuration look-up in a repository with very
704 many remotes defined.
705
@@ -634,40 +735,30 @@ of the repositories listed at
735 No more nitpicks and better design suggestions?
736
737
637 -* nd/lock-paths-absolute (2014-08-01) 3 commits
638 - - lockfile.c: store absolute path
639 - - lockfile.c: remove PATH_MAX limit in resolve_symlink()
640 - - lockfile.c: remove PATH_MAX limitation (except in resolve_symlink)
641 -
642 - Will drop and ask Michael to possibly cooperate and merge with mh/lockfile.
643 -
644 -
645 -* mm/config-message-i18n (2014-08-01) 1 commit
646 - - config.c: mark error and warnings strings for translation
647 -
648 - Will discard (now at the bottom of ta/config-set-1 topic).
649 -
650 -
738 * mm/config-edit-global (2014-07-25) 3 commits
652 - (merged to 'next' on 2014-07-31 at ecce1c7)
739 + (merged to 'next' on 2014-08-26 at 3a47fc5)
740 + commit: advertise config --global --edit on guessed identity
741 + home_config_paths(): let the caller ignore xdg path
742 + config --global --edit: create a template file if needed
743
744 + Originally merged to 'next' on 2014-07-31
745 +
746 Start "git config --edit --global" from a skeletal per-user
747 configuration file contents, instead of a total blank, when the
748 user does not already have any. This immediately reduces the need
749 for a later "Have you forgotten setting core.user?" and we can add
750 more to the template as we gain more experience.
751
663 - Will cook in 'next'.
752 + Will merge to 'master'.
753
754
755 * rs/init-no-duplicate-real-path (2014-07-28) 1 commit
667 - (merged to 'next' on 2014-07-31 at 683112e)
756 + (merged to 'next' on 2014-08-26 at c66e1c4)
757 + init: avoid superfluous real_path() calls
758
670 - Will cook in 'next'.
759 + Originally merged to 'next' on 2014-07-31
760 +
761 + Will merge to 'master'.
762
763
764 * rs/ref-transaction-reflog (2014-07-23) 15 commits
@@ -694,20 +785,8 @@ of the repositories listed at
785 No more nitpicks and better design suggestions?
786
787
697 -* cb/mergetool-difftool (2014-07-21) 2 commits
698 - - difftool: don't assume that default sh is sane
699 - - mergetool: don't require a work tree for --tool-help
700 -
701 - Update the way the "difftool --help" shows the help message that is
702 - shared with the "mergetool" to reduce one shell dependency.
703 -
704 - Will be rerolled.
705 -
706 -
707 -* rs/strbuf-getcwd (2014-08-18) 11 commits
708 - (merged to 'next' on 2014-08-18 at 9eef2c8)
709 - + fixup! setup: convert setup_git_directory_gently_1 et al. to strbuf
710 - (merged to 'next' on 2014-07-31 at 6edc3bc)
788 +* rs/strbuf-getcwd (2014-08-26) 10 commits
789 + (merged to 'next' on 2014-08-26 at 11be0d6)
790 + use strbuf_add_absolute_path() to add absolute paths
791 + abspath: convert absolute_path() to strbuf
792 + use xgetcwd() to set $GIT_DIR
@@ -718,8 +797,14 @@ of the repositories listed at
797 + setup: convert setup_git_directory_gently_1 et al. to strbuf
798 + unix-sockets: use strbuf_getcwd()
799 + strbuf: add strbuf_getcwd()
800 + (this branch is tangled with nd/lock-paths-absolute.)
801
722 - Will cook in 'next'.
802 + Originally merged to 'next' on 2014-08-18
803 +
804 + Reduce the use of fixed sized buffer passed to getcwd() calls
805 + by introducing xgetcwd() helper.
806 +
807 + Will merge to 'master'.
808
809
810 * jc/not-mingw-cygwin (2014-07-21) 2 commits
@@ -731,13 +816,17 @@ of the repositories listed at
816 and we still add more uses of the former. Convert them to the
817 latter to avoid confusion.
818
819 + Will merge to 'next'.
820 +
821
822 * ta/config-set (2014-07-29) 2 commits
736 - (merged to 'next' on 2014-08-13 at 99011c8)
823 + (merged to 'next' on 2014-08-26 at 81395f9)
824 + test-config: add tests for the config_set API
825 + add `config_set` API for caching config-like files
826 (this branch is used by ta/config-set-1 and ta/config-set-2.)
827
828 + Originally merged to 'next' on 2014-08-13
829 +
830 Add in-core caching layer to let us avoid reading the same
831 configuration files number of times.
832
@@ -773,95 +862,87 @@ of the repositories listed at
862
863
864 * jc/reopen-lock-file (2014-07-14) 1 commit
776 - (merged to 'next' on 2014-07-21 at 8277dc9)
865 + (merged to 'next' on 2014-08-26 at c5a5a12)
866 + lockfile: allow reopening a closed but still locked file
867
868 + Originally merged to 'next' on 2014-07-21
869 +
870 Needed in the "commit -p" code path to update the cache tree in the
871 index (e.g. for dt/cache-tree-repair topic).
872
782 - Will cook in 'next'.
783 -
784 -
785 -* nd/multiple-work-trees (2014-07-17) 31 commits
786 - (merged to 'next' on 2014-07-17 at a29d310)
787 - + checkout: don't require a work tree when checking out into a new one
788 - + git_path(): keep "info/sparse-checkout" per work-tree
789 - + count-objects: report unused files in $GIT_DIR/repos/...
790 - + gc: support prune --repos
791 - + gc: factor out gc.pruneexpire parsing code
792 - + gc: style change -- no SP before closing parenthesis
793 - + prune: strategies for linked checkouts
794 - + checkout: detach if the branch is already checked out elsewhere
795 - + checkout: clean up half-prepared directories in --to mode
796 - + checkout: support checking out into a new working directory
797 - + use new wrapper write_file() for simple file writing
798 - + wrapper.c: wrapper to open a file, fprintf then close
799 - + setup.c: support multi-checkout repo setup
800 - + setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
801 - + setup.c: convert check_repository_format_gently to use strbuf
802 - + setup.c: detect $GIT_COMMON_DIR in is_git_directory()
803 - + setup.c: convert is_git_directory() to use strbuf
804 - + git-stash: avoid hardcoding $GIT_DIR/logs/....
805 - + *.sh: avoid hardcoding $GIT_DIR/hooks/...
806 - + git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
807 - + $GIT_COMMON_DIR: a new environment variable
808 - + commit: use SEQ_DIR instead of hardcoding "sequencer"
809 - + fast-import: use git_path() for accessing .git dir instead of get_git_dir()
810 - + reflog: avoid constructing .lock path with git_path
811 - + *.sh: respect $GIT_INDEX_FILE
812 - + git_path(): be aware of file relocation in $GIT_DIR
813 - + path.c: group git_path(), git_pathdup() and strbuf_git_path() together
814 - + path.c: rename vsnpath() to do_git_path()
815 - + git_snpath(): retire and replace with strbuf_git_path()
816 - + path.c: make get_pathname() call sites return const char *
817 - + path.c: make get_pathname() return strbuf instead of static buffer
818 - (this branch is used by nd/multiple-work-trees-1.)
873 + Will merge to 'master'.
874 +
875 +
876 +* nd/multiple-work-trees (2014-07-29) 39 commits
877 + - checkout --to: do not touch existing target directory
878 + - checkout: prefix --to argument properly when cwd is moved
879 + - environment.c: fix incorrect git_graft_file initialization
880 + - checkout --to: fix dangling pointers in remove_junk()
881 + - checkout: no auto-detach if the ref is already checked out
882 + - prune --repos: fix uninitialized access
883 + - checkout: no need to call check_linked_checkouts if head_ref is NULL
884 + - gitrepository-layout.txt: s/ignored/ignored if/
885 + - checkout: don't require a work tree when checking out into a new one
886 + - git_path(): keep "info/sparse-checkout" per work-tree
887 + - count-objects: report unused files in $GIT_DIR/repos/...
888 + - gc: support prune --repos
889 + - gc: factor out gc.pruneexpire parsing code
890 + - gc: style change -- no SP before closing parenthesis
891 + - prune: strategies for linked checkouts
892 + - checkout: detach if the branch is already checked out elsewhere
893 + - checkout: clean up half-prepared directories in --to mode
894 + - checkout: support checking out into a new working directory
895 + - use new wrapper write_file() for simple file writing
896 + - wrapper.c: wrapper to open a file, fprintf then close
897 + - setup.c: support multi-checkout repo setup
898 + - setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
899 + - setup.c: convert check_repository_format_gently to use strbuf
900 + - setup.c: detect $GIT_COMMON_DIR in is_git_directory()
901 + - setup.c: convert is_git_directory() to use strbuf
902 + - git-stash: avoid hardcoding $GIT_DIR/logs/....
903 + - *.sh: avoid hardcoding $GIT_DIR/hooks/...
904 + - git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
905 + - $GIT_COMMON_DIR: a new environment variable
906 + - commit: use SEQ_DIR instead of hardcoding "sequencer"
907 + - fast-import: use git_path() for accessing .git dir instead of get_git_dir()
908 + - reflog: avoid constructing .lock path with git_path
909 + - *.sh: respect $GIT_INDEX_FILE
910 + - git_path(): be aware of file relocation in $GIT_DIR
911 + - path.c: group git_path(), git_pathdup() and strbuf_git_path() together
912 + - path.c: rename vsnpath() to do_git_path()
913 + - git_snpath(): retire and replace with strbuf_git_path()
914 + - path.c: make get_pathname() call sites return const char *
915 + - path.c: make get_pathname() return strbuf instead of static buffer
916
917 A replacement for contrib/workdir/git-new-workdir that does not
918 rely on symbolic links and make sharing of objects and refs safer
919 by making the borrowee and borrowers aware of each other.
920
824 - Will kick back to 'pu'.
825 -
826 -
827 -* nd/multiple-work-trees-1 (2014-07-29) 8 commits
828 - (merged to 'next' on 2014-08-13 at 4f3a585)
829 - + checkout --to: do not touch existing target directory
830 - + checkout: prefix --to argument properly when cwd is moved
831 - + environment.c: fix incorrect git_graft_file initialization
832 - + checkout --to: fix dangling pointers in remove_junk()
833 - + checkout: no auto-detach if the ref is already checked out
834 - + prune --repos: fix uninitialized access
835 - + checkout: no need to call check_linked_checkouts if head_ref is NULL
836 - + gitrepository-layout.txt: s/ignored/ignored if/
837 - (this branch uses nd/multiple-work-trees.)
838 -
839 - Continue polishing nd/multiple-work-trees topic in 'next'.
840 -
841 - Will kick back to 'pu'.
921 + Kicked back to 'pu'.
922
923
924 * dt/cache-tree-repair (2014-07-14) 4 commits
845 - (merged to 'next' on 2014-07-21 at e83db34)
925 + (merged to 'next' on 2014-08-26 at 6faccdb)
926 + cache-tree: Write updated cache-tree after commit
927 + cache-tree: subdirectory tests
928 + test-dump-cache-tree: invalid trees are not errors
929 + cache-tree: create/update cache-tree on checkout
930
931 + Originally merged to 'next' on 2014-07-21
932 +
933 Add a few more places in "commit" and "checkout" that make sure
934 that the cache-tree is fully populated in the index.
935
854 - Will cook in 'next'.
936 + Will merge to 'master'.
937
938
939 * hv/submodule-config (2014-06-30) 4 commits
858 - (merged to 'next' on 2014-07-17 at 5e0ce45)
859 - + do not die on error of parsing fetchrecursesubmodules option
860 - + use new config API for worktree configurations of submodules
861 - + extract functions for submodule config set and lookup
862 - + implement submodule config cache for lookup of submodule names
940 + - do not die on error of parsing fetchrecursesubmodules option
941 + - use new config API for worktree configurations of submodules
942 + - extract functions for submodule config set and lookup
943 + - implement submodule config cache for lookup of submodule names
944
864 - Will cook in 'next'.
945 + Kicked back to 'pu'.
946
947
948 * rs/ref-transaction (2014-07-17) 12 commits
@@ -909,3 +990,30 @@ of the repositories listed at
990 . abspath.c: use PATH_MAX in real_path_internal()
991
992 rs/strbuf-getcwd topic covers this codepath in a better way.
993 +
994 +
995 +* jn/header-dependencies (2014-08-10) 1 commit
996 + . Update hard-coded header dependencies
997 +
998 + Replaced by jk/make-simplify-dependencies topic.
999 +
1000 +
1001 +* sb/unpack-trees-dead-code-removal (2014-08-12) 2 commits
1002 + . SQUASH???
1003 + . unpack-tree.c: remove dead code
1004 +
1005 + Replaced by jn/unpack-trees-checkout-m-carry-deletion topic.
1006 +
1007 +
1008 +* mm/config-message-i18n (2014-08-01) 1 commit
1009 + . config.c: mark error and warnings strings for translation
1010 +
1011 + Now at the bottom of ta/config-set-1 topic.
1012 +
1013 +
1014 +* nd/lock-paths-absolute (2014-08-01) 3 commits
1015 + . lockfile.c: store absolute path
1016 + . lockfile.c: remove PATH_MAX limit in resolve_symlink()
1017 + . lockfile.c: remove PATH_MAX limitation (except in resolve_symlink)
1018 +
1019 + Will drop and ask Michael to possibly cooperate and merge with mh/lockfile.