From 06b685c780d5ce2d14bc7204e3025260cf247a95 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 10 Jun 2015 16:32:09 -0700 Subject: [PATCH] What's cooking (2015/06 #03) --- whats-cooking.txt | 395 +++++++++++++++++++++++++++++++--------------- 1 file changed, 265 insertions(+), 130 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index 40847ef6c4..3aaaf9eaad 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,158 +1,252 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (Jun 2015, #02; Fri, 5) +Subject: What's cooking in git.git (Jun 2015, #03; Wed, 10) X-master-at: 7974889a053574e449b55ca543a486e38e74864f X-next-at: 1a18470cb8c6fbcf40b535cf669aa165844706d5 -What's cooking in git.git (Jun 2015, #02; Fri, 5) +What's cooking in git.git (Jun 2015, #03; Wed, 10) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are only in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'. -A handful of topics that graduated to 'master' a few weeks ago are -now in 'maint', the tip of which has been tagged as v2.4.3. +Somehow we are getting quite a many new topics in the past few +weeks. All the new contributors we acquired recently, including but +not limited to the GSoC and Matthieu's students, are making good +progress, throwing patches and responding to reviews in a reasonable +way, proving themselves to be real assets to the community. -On the 'master' front, another huge batch of "struct object_id" -thing is now in. So is Peff's 'master@{push}' series. +Which, I am very happy about, even though I am a bit behind catching +up with them. "Let's skip commute to gain an extra productive hour" +I tried yesterday did not help enough X-<. I am sure I've either +missed or postponed more than a few topics. I'll try to get to them +but some of them may fall in the cracks; please help by reviewing on +uncommented patches. You can find the changes described here in the integration branches of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html --------------------------------------------------- -[Graduated to "master"] - -* bc/object-id (2015-05-25) 56 commits - (merged to 'next' on 2015-05-26 at 8d9f645) - + struct ref_lock: convert old_sha1 member to object_id - + warn_if_dangling_symref(): convert local variable "junk" to object_id - + each_ref_fn_adapter(): remove adapter - + rev_list_insert_ref(): remove unneeded arguments - + rev_list_insert_ref_oid(): new function, taking an object_oid - + mark_complete(): remove unneeded arguments - + mark_complete_oid(): new function, taking an object_oid - + clear_marks(): rewrite to take an object_id argument - + mark_complete(): rewrite to take an object_id argument - + send_ref(): convert local variable "peeled" to object_id - + upload-pack: rewrite functions to take object_id arguments - + find_symref(): convert local variable "unused" to object_id - + find_symref(): rewrite to take an object_id argument - + write_one_ref(): rewrite to take an object_id argument - + write_refs_to_temp_dir(): convert local variable sha1 to object_id - + submodule: rewrite to take an object_id argument - + shallow: rewrite functions to take object_id arguments - + handle_one_ref(): rewrite to take an object_id argument - + add_info_ref(): rewrite to take an object_id argument - + handle_one_reflog(): rewrite to take an object_id argument - + register_replace_ref(): rewrite to take an object_id argument - + remote: rewrite functions to take object_id arguments - + add_one_ref(): rewrite to take an object_id argument - + string_list_add_one_ref(): rewrite to take an object_id argument - + add_ref_decoration(): convert local variable original_sha1 to object_id - + add_ref_decoration(): rewrite to take an object_id argument - + show_head_ref(): convert local variable "unused" to object_id - + http-backend: rewrite to take an object_id argument - + append_similar_ref(): rewrite to take an object_id argument - + builtin/show-ref: rewrite to take an object_id argument - + show_ref(): convert local variable peeled to object_id - + builtin/show-ref: rewrite to use object_id - + fsck: change functions to use object_id - + cmd_show_branch(): fix error message - + builtin/show-branch: rewrite functions to work with object_id - + append_one_rev(): rewrite to work with object_id - + builtin/show-branch: rewrite functions to take object_id arguments - + append_matching_ref(): rewrite to take an object_id argument - + show_reference(): rewrite to take an object_id argument - + builtin/remote: rewrite functions to take object_id arguments - + add_branch_for_removal(): don't set "util" field of string_list entries - + add_branch_for_removal(): rewrite to take an object_id argument - + builtin/reflog: rewrite ref functions to take an object_id argument - + show_ref_cb(): rewrite to take an object_id argument - + builtin/pack-objects: rewrite to take an object_id argument - + name_ref(): rewrite to take an object_id argument - + grab_single_ref(): rewrite to take an object_id argument - + builtin/fetch: rewrite to take an object_id argument - + get_name(): rewrite to take an object_id argument - + add_pending_uninteresting_ref(): rewrite to take an object_id argument - + append_ref(): rewrite to take an object_id argument - + register_ref(): rewrite to take an object_id argument - + handle_one_ref(): rewrite to take an object_id argument - + builtin/rev-parse: rewrite to take an object_id argument - + each_ref_fn: change to take an object_id parameter - + refs: convert struct ref_entry to use struct object_id - - for_each_ref() callback functions were taught to name the objects - not with "unsigned char sha1[20]" but with "struct object_id". - - -* jk/at-push-sha1 (2015-05-22) 16 commits - (merged to 'next' on 2015-05-26 at d9d342f) - + for-each-ref: accept "%(push)" format - + for-each-ref: use skip_prefix instead of starts_with - + sha1_name: implement @{push} shorthand - + sha1_name: refactor interpret_upstream_mark - + sha1_name: refactor upstream_mark - + remote.c: add branch_get_push - + remote.c: return upstream name from stat_tracking_info - + remote.c: untangle error logic in branch_get_upstream - + remote.c: report specific errors from branch_get_upstream - + remote.c: introduce branch_get_upstream helper - + remote.c: hoist read_config into remote_get_1 - + remote.c: provide per-branch pushremote name - + remote.c: hoist branch.*.remote lookup out of remote_get_1 - + remote.c: drop "remote" pointer from "struct branch" - + remote.c: refactor setup of branch->merge list - + remote.c: drop default_remote_name variable - - Introduce @{push} short-hand to denote the remote-tracking - branch that tracks the branch at the remote the would be - pushed to. - - -* ld/p4-editor-multi-words (2015-05-26) 3 commits - (merged to 'next' on 2015-05-28 at a368a47) - + git-p4: tests: use test-chmtime in place of touch - + git-p4: fix handling of multi-word P4EDITOR - + git-p4: add failing test for P4EDITOR handling - - Unlike "$EDITOR" and "$GIT_EDITOR" that can hold the path to the - command and initial options (e.g. "/path/to/emacs -nw"), 'git p4' - did not let the shell interpolate the contents of the environment - variable that name the editor "$P4EDITOR" (and "$EDITOR", too). - Make it in line with the rest of Git, as well as with Perforce. - -------------------------------------------------- [New Topics] -* jc/ll-merge-expose-path (2015-06-04) 1 commit - - ll-merge: pass the original path to external drivers +* af/tcsh-completion-noclobber (2015-06-09) 1 commit + - git-completion.tcsh: fix redirect with noclobber - Traditionally, external low-level 3-way merge drivers are expected - to produce their results based solely on the contents of the three - variants given in temporary files named by %O, %A and %B on their - command line. Additionally allow them to look at the final path - (given by %P). + The tcsh completion writes a bash scriptlet but that would have + failed for users with noclobber set. + Will merge to 'next'. -* jk/log-missing-default-HEAD (2015-06-03) 1 commit - - log: diagnose empty HEAD more clearly - "git init empty && git -C empty log" said "bad default revision 'HEAD'", - which was found to be a bit confusing to new users. +* es/utf8-stupid-compiler-workaround (2015-06-05) 1 commit + - utf8: NO_ICONV: silence uninitialized variable warning + A compilation workaround. -* nd/slim-index-pack-memory-usage (2015-06-04) 1 commit - (merged to 'next' on 2015-06-04 at 328fd50) - + index-pack: fix truncation of off_t in comparison + Will merge to 'next'. - An earlier optimization broke index-pack for a large object - transfer; this fixes it before the breakage hits any released - version. - Will merge to 'master'. +* fk/doc-format-patch-vn (2015-06-10) 1 commit + - doc: format-patch: fix typo + + Docfix. + + Will merge to 'next'. + + +* gp/status-rebase-i-info (2015-06-09) 5 commits + - SQUASH??? fix misindent + - status: add new tests for status during rebase -i + - status: give more information during rebase -i + - status: differentiate interactive from non-interactive rebases + - status: factor two rebase-related messages together + + Teach "git status" to show a more detailed information regarding + the "rebase -i" session in progress. + + Expecting a reroll. + + +* jc/prompt-document-ps1-state-separator (2015-06-10) 1 commit + - git-prompt.sh: document GIT_PS1_STATESEPARATOR + + Docfix. + + Will merge to 'next'. + + +* jk/index-pack-reduce-recheck (2015-06-09) 1 commit + - index-pack: avoid excessive re-reading of pack directory + + Disable "have we lost a race with competing repack?" check while + receiving a huge object transfer that runs index-pack. + + Will merge to 'next'. + + +* js/sleep-without-select (2015-06-05) 4 commits + - lockfile: wait using sleep_millisec() instead of select() + - lockfile: convert retry timeout computations to millisecond + - help.c: wrap wait-only poll() invocation in sleep_millisec() + - lockfile: replace random() by rand() + + Portability fix. + + Will merge to 'next'. + + +* ld/p4-changes-block-size (2015-06-10) 4 commits + - git-p4: fixing --changes-block-size handling + - git-p4: add tests for non-numeric revision range + - git-p4: test with limited p4 server results + - git-p4: additional testing of --changes-block-size + + More Perforce row number limit workaround for "git p4". + + Will merge to 'next'. + + +* mh/fsck-reflog-entries (2015-06-08) 2 commits + - fsck: report errors if reflog entries point at invalid objects + - fsck_handle_reflog_sha1(): new function + + "git fsck" used to ignore missing or invalid objects recorded in reflog. + + Will merge to 'next'. + + +* mk/utf8-no-iconv-warn (2015-06-08) 1 commit + - utf8.c: print warning about disabled iconv + + Warn when a reencoding is requested in a build without iconv + support, as the end user is likely to get an unexpected result. I + think the same level of safety should be added to a build with + iconv support when the specified encoding is not available, but the + patch does not go there. + + Expecting a reroll. + + +* mr/rebase-i-customize-insn-sheet (2015-06-08) 1 commit + - git-rebase--interactive.sh: add config option for custom instruction format + + Breaks tests. + + Expecting a reroll. + + +* nd/untracked-cache (2015-06-08) 1 commit + - read-cache: fix untracked cache invalidation when split-index is used + + Hotfix for a topic already in 'master'. + + Will merge to 'next'. + + +* pt/am-abort-fix (2015-06-08) 6 commits + - am --abort: keep unrelated commits on unborn branch + - am --abort: support aborting to unborn branch + - am --abort: revert changes introduced by failed 3way merge + - am --skip: support skipping while on unborn branch + - am -3: support 3way merge on unborn branch + - am --skip: revert changes introduced by failed 3way merge + + Various fixes around "git am" that applies a patch to a history + that is not there yet. + + Will merge to 'next'. + + +* pt/am-foreign (2015-06-08) 6 commits + - SQUASH??? do not cat a single file into a pipe + - am: teach mercurial patch parser how to read from stdin + - am: use gmtime() to parse mercurial patch date + - t4150: test applying StGit series + - am: teach StGit patch parser how to read from stdin + - t4150: test applying StGit patch + + Various enhancements around "git am" reading patches generated by + foreign SCM. + + Expecting a reroll. + + +* pt/pull-builtin (2015-06-09) 20 commits + . SQUASH??? adjust to new world order after 9e3751d4 (remote.c: drop "remote" pointer from "struct branch", 2015-05-21) + . pull: remove redirection to git-pull.sh + . pull --rebase: error on no merge candidate cases + . pull --rebase: exit early when the working directory is dirty + . pull: configure --rebase via branch..rebase or pull.rebase + . pull: teach git pull about --rebase + . pull: set reflog message + . pull: implement pulling into an unborn branch + . pull: fast-forward working tree if head is updated + . pull: check if in unresolved merge state + - pull: support pull.ff config + - pull: error on no merge candidates + - pull: pass git-fetch's options to git-fetch + - pull: pass git-merge's options to git-merge + - pull: pass verbosity, --progress flags to fetch and merge + - pull: implement fetch + merge + - pull: implement skeletal builtin pull + - argv-array: implement argv_array_pushv() + - parse-options-cb: implement parse_opt_pass_argv_array() + - parse-options-cb: implement parse_opt_pass_strbuf() + + Expecting a reroll. + + +* rl/send-email-aliases (2015-06-08) 5 commits + - send-email: refactor address list process + - send-email: allow multiple emails using --cc, --to and --bcc + - t9001-send-email: refactor header variable fields replacement + - send-email: allow aliases in patch header and command script outputs + - t9001-send-email: move script creation in a setup test + + "git send-email" now performs alias-expansion on names that are + given via --cccmd, etc. + + Expecting a reroll. + + +* sg/commit-cleanup-scissors (2015-06-09) 1 commit + - commit: cope with scissors lines in commit message + + "git commit --cleanup=scissors" was not careful enough to protect + against getting fooled by a line that looked like scissors. + + Will merge to 'next'. + + +* sg/completion-commit-cleanup (2015-06-08) 1 commit + - completion: teach 'scissors' mode to 'git commit --cleanup=' + + Will merge to 'next'. + + +* wp/sha1-name-negative-match (2015-06-08) 2 commits + - sha1_name.c: introduce '^{/!-}' notation + - test for '!' handling in rev-parse's named commits + + Introduce "branch^{/!-}" notation to name a commit + reachable from branch that does not match the given pattern. + + Expecting a reroll. + + +* bc/object-id (2015-06-10) 7 commits + - ref_newer: convert to use struct object_id + - parse_fetch: convert to use struct object_id + - add_sought_entry_mem: convert to struct object_id + - Add a utility function to make parsing hex values easier. + - Convert struct ref to use object_id. + - sha1_file: introduce has_object_file helper. + - refs: convert some internal functions to use object_id + + (incomplete) -------------------------------------------------- [Stalled] @@ -361,6 +455,38 @@ of the repositories listed at -------------------------------------------------- [Cooking] +* jc/ll-merge-expose-path (2015-06-04) 1 commit + - ll-merge: pass the original path to external drivers + + Traditionally, external low-level 3-way merge drivers are expected + to produce their results based solely on the contents of the three + variants given in temporary files named by %O, %A and %B on their + command line. Additionally allow them to look at the final path + (given by %P). + + Will merge to 'next'. + + +* jk/log-missing-default-HEAD (2015-06-03) 1 commit + - log: diagnose empty HEAD more clearly + + "git init empty && git -C empty log" said "bad default revision 'HEAD'", + which was found to be a bit confusing to new users. + + What's the status of this one? + + +* nd/slim-index-pack-memory-usage (2015-06-04) 1 commit + (merged to 'next' on 2015-06-04 at 328fd50) + + index-pack: fix truncation of off_t in comparison + + An earlier optimization broke index-pack for a large object + transfer; this fixes it before the breakage hits any released + version. + + Will merge to 'master'. + + * gr/rebase-i-drop-warn (2015-06-01) 2 commits - git rebase -i: warn about removed commits - git-rebase -i: add command "drop" to remove a commit @@ -379,7 +505,9 @@ of the repositories listed at Avoid one extra iteration and strbuf_grow() of 8kB in strbuf_read(). - Looked reasonable; perhaps a log message clarification is coming? + Looked reasonable; perhaps a log message clarification is needed. + + Expecting a reroll. * jk/squelch-missing-link-warning-for-unreachable (2015-06-01) 3 commits @@ -395,7 +523,7 @@ of the repositories listed at Will merge to 'master'. -* mh/reporting-broken-refs-from-for-each-ref (2015-06-03) 4 commits +* mh/reporting-broken-refs-from-for-each-ref (2015-06-08) 4 commits - read_loose_refs(): treat NULL_SHA1 loose references as broken - read_loose_refs(): simplify function logic - for-each-ref: report broken references correctly @@ -472,12 +600,15 @@ of the repositories listed at "git format-patch --ignore-if-upstream A..B" did not like to be fed tags as boundary commits. + Will merge to 'next'. + * mg/index-read-error-messages (2015-06-01) 2 commits - messages: uniform error messages for index write - show-index: uniform error messages for index read The tip was RFC. + Expecting a reroll. * pt/pull-optparse (2015-06-02) 3 commits @@ -508,6 +639,8 @@ of the repositories listed at "git am" learned am.threeWay configuration variable. + Will merge to 'next'. + * sb/pack-protocol-mention-smart-http (2015-06-02) 1 commit (merged to 'next' on 2015-06-04 at 8041cf6) @@ -527,6 +660,8 @@ of the repositories listed at The gitmodules API accessed from the C code learned to cache stuff lazily. + What's the doneness of this one? + * jc/diff-ws-error-highlight (2015-05-26) 4 commits (merged to 'next' on 2015-06-01 at 6046560) @@ -703,7 +838,7 @@ of the repositories listed at Still an early WIP -* ee/clean-remove-dirs (2015-04-26) 5 commits +* ee/clean-remove-dirs (2015-06-09) 5 commits - clean: improve performance when removing lots of directories - p7300: add performance tests for clean - t7300: add tests to document behavior of clean and nested git @@ -714,7 +849,7 @@ of the repositories listed at be touched?" check "git clean" does by checking if it has .git/HEAD using the submodule-related code with a more optimized check. - Waiting for a reroll. + Haven't seen reviews on this updated round, and I haven't read it myself. * jc/merge-drop-old-syntax (2015-04-29) 1 commit -- 2.47.3