From 4b969b733a8c58b0d563abe53c67ad3bf415aef8 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 12 Jun 2009 02:10:10 -0700 Subject: [PATCH] What's cooking (2009/06 #01) --- whats-cooking.txt | 362 +++++++++++++++++++++++++++------------------- 1 file changed, 211 insertions(+), 151 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index a08e938c0a..a887cfb810 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,9 +1,9 @@ To: git@vger.kernel.org -Subject: What's cooking in git.git (May 2009, #04; Sun, 31) -X-master-at: f9275c68af58e0f65e1557b5109ccbfdbbbc384a -X-next-at: 426b5a935392df623347be0aea16bca045d44b52 +Subject: What's cooking in git.git (Jun 2009, #01; Fri, 12) +X-master-at: b8364903c3e4cde713102e4a36d3926b020b0f70 +X-next-at: f0de74fb063e75167a6c218a93cfeae5b8bdaaba -What's cooking in git.git (May 2009, #04; Sun, 31) +What's cooking in git.git (Jun 2009, #01; Fri, 12) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -14,122 +14,216 @@ holding onto them. The topics list the commits in reverse chronological order. The topics meant to be merged to the maintenance series have "maint-" in their names. +Unfortunately I am unusually short of time these days, and some of the +topics unfortunately got less "final review before deciding to merge up" +than I would have liked to give them. This message itself has more +"please comment/review" requests than usual. + ---------------------------------------------------------------- [New Topics] -All of these are soon to be in 'next'. +* tr/die_errno (Mon Jun 8 23:02:20 2009 +0200) 4 commits + - Use die_errno() instead of die() when checking syscalls + - Convert existing die(..., strerror(errno)) to die_errno() + - die_errno(): double % in strerror() output just in case + - Introduce die_errno() that appends strerror(errno) to die() + +I didn't check the individual conversion from die() to die_errno() +in this latest round; comments? + +* cb/maint-no-double-merge (Mon Jun 1 11:20:56 2009 +0200) 1 commit + + refuse to merge during a merge + +Will merge to 'master' soonish. + +* sp/msysgit (Thu Jun 11 22:56:12 2009 +0200) 13 commits + + compat/ has subdirectories: do not omit them in 'make clean' + + Fix typo in nedmalloc warning fix + + MinGW: Teach Makefile to detect msysgit and apply specific + settings + + Fix warnings in nedmalloc when compiling with GCC 4.4.0 + + Add custom memory allocator to MinGW and MacOS builds + + MinGW readdir reimplementation to support d_type + + connect.c: Support PuTTY plink and TortoisePlink as SSH on Windows + + git: browsing paths with spaces when using the start command + + MinGW: fix warning about implicit declaration of _getch() + + test-chmtime: work around Windows limitation + + Work around a regression in Windows 7, causing erase_in_line() to + crash sometimes + + Quiet make: do not leave Windows behind + + MinGW: GCC >= 4 does not need SNPRINTF_SIZE_CORR anymore + +A silly typo I failed to spot was fixed by J6t; should be ready for +'master' now. + +* mh/master-send-email (Sun Jun 7 23:40:52 2009 +0200) 8 commits + - send-email: fix a typo in a comment + - Merge branch 'mh/maint-send-email' into mh/master-send-email + - Merge branch 'mh/master-send-email-threaded-fix' into mh/master- + send-email + - add a test for git-send-email for threaded mails without chain- + reply-to + - send-email: fix threaded mails without chain-reply-to + - doc/send-email: clarify the behavior of --in-reply-to with --no- + thread + - send-email: fix non-threaded mails + - add a test for git-send-email for non-threaded mails + +The author seems to have a better organization than the way I queued this +topic, so I am holding off merging it to 'next' yet. My goal was to have +two topics, one eventually mergeable to 'maint', the other to 'master'. + +* mn/maint-iconv-autoconf (Mon Jun 8 20:46:38 2009 -0700) 1 commit + - fix handling of iconv configuration options + +Will merge to 'next' soon. + +* rc/maint-http-local-slot-fix (Sat Jun 6 16:43:26 2009 +0800) 1 commit + + http*: cleanup slot->local after fclose + +* sb/parse-options-integer (Thu Jun 4 16:43:57 2009 -0700) 2 commits + + parse-options: simplify usage argh handling + + parse-options: make OPT_INTEGER's argh explicit + +* sb/pull-rebase (Fri Jun 12 00:39:21 2009 +0200) 3 commits + - parse-remote: remove unused functions + - parse-remote: support default reflist in get_remote_merge_branch + - parse-remote: function to get the tracking branch to be merge + +Will merge to 'next' soon, but it would be nice if we can fix the +"currently works only for the default mapping" before it goes to +'master'. + +* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit + - Shift object enumeration out of upload-pack + +* ml/http (Wed May 27 23:16:03 2009 -0400) 2 commits + - http.c: add http.sslCertNoPass option + - http.c: prompt for SSL client certificate password + +I think "sslCertNoPass" is a mistake. We should aim for the ideal (i.e. +detect when we do not need passphrase), and live with a configuration +kludge until the code achives the ideal (i.e. "needPass" to trigger the +new codepath to ask for passphrase), _if_ that ideal is achievable. And +in this particular case, I think the ideal is not rocket science. + +* mg/pushurl (Tue Jun 9 18:01:38 2009 +0200) 5 commits + - builtin-remote: Make "remote -v" display push urls + - builtin-remote: Show push urls as well + - technical/api-remote: Describe new struct remote member pushurl + - t5516: Check pushurl config setting + - Allow push and fetch urls to be different + +Will merge to 'next' soon. + +---------------------------------------------------------------- +[Graduated to "master"] + +* tr/maint-doc-stash-pop (Thu May 28 11:40:15 2009 +0200) 1 commit + + Documentation: teach stash/pop workflow instead of stash/apply -* bc/solaris (Wed May 27 21:17:08 2009 -0500) 4 commits - - Makefile: introduce SANE_TOOL_PATH for prepending required +* da/pretty-tempname (Sun May 31 01:35:52 2009 -0700) 3 commits + + diff: generate pretty filenames in prep_temp_blob() + + compat: add a basename() compatibility function + + compat: add a mkstemps() compatibility function + +* cb/maint-1.6.0-xdl-merge-fix (Mon May 25 01:21:14 2009 +0100) 2 commits + + Change xdl_merge to generate output even for null merges + + t6023: merge-file fails to output anything for a degenerate merge + +---------------------------------------------------------------- +[Will merge to "master" soon] + +* bc/solaris (Sun Jun 7 07:40:29 2009 +0200) 10 commits + - configure: test whether -lresolv is needed + + Makefile: insert SANE_TOOL_PATH to PATH before /bin or /usr/bin + + git-compat-util.h: avoid using c99 flex array feature with Sun + compiler 5.8 + + Makefile: add section for SunOS 5.7 + + Makefile: introduce SANE_TOOL_PATH for prepending required elements to PATH - - Makefile: add section for SunOS 5.7 - - Makefile: add NEEDS_RESOLV to optionally add -lresolv to compile + + Makefile: define __sun__ on SunOS + + git-compat-util.h: tweak the way _XOPEN_SOURCE is set on Solaris + + On Solaris choose the OLD_ICONV iconv() declaration based on the + UNIX spec + + Makefile: add NEEDS_RESOLV to optionally add -lresolv to compile arguments - - Makefile: use /usr/ucb/install on SunOS platforms rather than + + Makefile: use /usr/ucb/install on SunOS platforms rather than ginstall -* nw/maint-cvsexportcommit (Fri May 29 00:23:33 2009 +0100) 1 commit - - git-cvsexportcommit can't commit files which have been removed - from CVS +We saw some success report with Sun's c99 compiler, which would allow us +to include the last remaining patch from Brandon with updates. I lost +track of the status of the tip patch for autoconf. Is it ready to go? +Comments from Solaris folks are appreciated. -* tr/maint-doc-stash-pop (Thu May 28 11:40:15 2009 +0200) 1 commit - - Documentation: teach stash/pop workflow instead of stash/apply +* cb/match_refs_internal_tail (Sun May 31 16:26:48 2009 +0200) 1 commit + + match_refs: search ref list tail internally -* da/pretty-tempname (Sun May 31 01:35:52 2009 -0700) 3 commits - - diff: generate pretty filenames in prep_temp_blob() - - compat: add a basename() compatibility function - - compat: add a mkstemps() compatibility function +* nw/maint-cvsexportcommit (Fri May 29 00:23:33 2009 +0100) 1 commit + + git-cvsexportcommit can't commit files which have been removed + from CVS * ak/maint-for-each-ref-no-lookup (Wed May 27 15:23:12 2009 -0400) 1 commit - - for-each-ref: Do not lookup objects when they will not be used + + for-each-ref: Do not lookup objects when they will not be used -* cb/match_refs_internal_tail (Wed May 27 22:13:44 2009 +0200) 1 commit - - match_refs: search ref list tail internally +I think this makes sense, except that I have this nagging feeling that its +use of for_each_rawref() where the original used for_each_ref() may have +some unintended side effects in corner cases. -I need to replace this with the new iteration... +* ph/submodule-rebase (Wed Jun 3 00:59:12 2009 +0200) 3 commits + - git-submodule: add support for --merge. + + Rename submodule..rebase to submodule..update + + git-submodule: add support for --rebase. -* gb/am-foreign (Wed May 27 11:25:19 2009 +0200) 4 commits - - git-am: refactor 'cleaning up and aborting' - - git-am foreign patch support: StGIT support - - git-am foreign patch support: autodetect some patch formats - - git-am foreign patch support: introduce patch_format +I think people do not have issues with the first two, even though some +might still argue that "update --merge" is not a good mode of +operation. ----------------------------------------------------------------- -[Graduated to "master"] +* da/araxis-mergetool (Sun May 24 00:24:41 2009 +0000) 1 commit + + mergetool--lib: add support for araxis merge -* sb/opt-filename (Sat May 23 11:53:13 2009 -0700) 2 commits - + parse-opts: add OPT_FILENAME and transition builtins - + parse-opts: prepare for OPT_FILENAME - -* rs/maint-grep-word-regexp-fix (Sat May 23 13:45:26 2009 +0200) 1 commit - + grep: fix word-regexp at the beginning of lines - -* mm/apply-double-slash (Thu May 21 14:25:11 2009 +0200) 1 commit - + apply: handle filenames with double slashes better - -* bc/old-iconv (Fri May 22 18:47:06 2009 -0500) 10 commits - + t8005: convert CP1251 character set to ISO8859-5 - + t8005: use more portable character encoding names - + t5100: use ancient encoding syntax for backwards compatibility - + t9301: use ISO8859-1 rather than ISO-8859-1 - + t3901: Use ISO8859-1 instead of ISO-8859-1 for backward - compatibility - + t3901: avoid negation on right hand side of '|' - + builtin-mailinfo.c: use "ISO8859-1" instead of "latin1" as - fallback encoding - + builtin-mailinfo.c: compare character encodings case insensitively - + Use 'UTF-8' rather than 'utf-8' everywhere for backward - compatibility - + t3900: use ancient iconv names for backward compatibility - -* sb/show-branch-parse-options (Thu May 21 00:33:18 2009 -0700) 3 commits - + show-branch: migrate to parse-options API - + Merge branch 'mh/show-branch-color' into sb/show-branch-parse- - options - + parse-options: add PARSE_OPT_LITERAL_ARGHELP for complicated - argh's - -* sb/maint-1.6.2-opt-filename-fix (Sat May 23 11:53:11 2009 -0700) 2 commits - + apply, fmt-merge-msg: use relative filenames - + commit: -F overrides -t - -* jc/solaris-0811 (Fri May 22 22:55:31 2009 -0700) 2 commits - - OpenSolaris 200811 (SunOS 5.11) does not want OLD_ICONV - - Teach Solaris that _XOPEN_SOURCE=600 really menas XPG6 - -* mw/send-email (Mon Apr 13 13:23:52 2009 -0500) 6 commits - + send-email: Remove superfluous `my $editor = ...' - + send-email: 'References:' should only reference what is sent - + send-email: Handle "GIT:" rather than "GIT: " during --compose - + Docs: send-email: --smtp-server-port can take symbolic ports - + Docs: send-email: Refer to CONFIGURATION section for - sendemail.multiedit - + Docs: send-email: Put options back into alphabetical order - -* jc/mktree (Thu May 14 15:49:10 2009 -0700) 9 commits - + mktree: validate entry type in input - + mktree --batch: build more than one tree object - + mktree --missing: updated usage message and man page - + mktree --missing: allow missing objects - + t1010: add mktree test - + mktree: do not barf on a submodule commit - + builtin-mktree.c: use a helper function to handle one line of - input - + mktree: use parse-options - + build-in git-mktree - -* jc/maint-add-p-coalesce-fix (Sat May 16 10:48:23 2009 -0700) 2 commits - + Revert "git-add--interactive: remove hunk coalescing" - + Splitting a hunk that adds a line at the top fails in "add -p" - -* sb/format-patch-parseopt (Sat May 16 02:24:46 2009 -0700) 1 commit - + format-patch: migrate to parse-options API - -* cc/bisect (Sun May 17 17:36:46 2009 +0200) 3 commits (early part) - + bisect: check ancestors without forking a "git rev-list" process - + commit: add function to unparse a commit and its parents - + bisect: rework some rev related functions to make them more - reusable +* cc/bisect (Sat Jun 6 06:41:35 2009 +0200) 5 commits + + t6030: test skipping away from an already skipped commit + + bisect: when skipping, choose a commit away from a skipped commit + + bisect: add parameters to "filter_skipped" + + bisect: display first bad commit without forking a new process + + bisect: drop unparse_commit() and use clear_commit_marks() + +Regardless of metrics, this is an improvement from the current one. Will +merge to 'master', and let the finer details taken care of later. + +* rc/http-push (Sat Jun 6 16:44:02 2009 +0800) 24 commits + + http*: add helper methods for fetching objects (loose) + + http*: add helper methods for fetching packs + + http: use new http API in fetch_index() + + http*: add http_get_info_packs + + http-push.c::fetch_symref(): use the new http API + + http-push.c::remote_exists(): use the new http API + + http.c::http_fetch_ref(): use the new http API + + transport.c::get_refs_via_curl(): use the new http API + + http.c: new functions for the http API + + http: create function end_url_with_slash + + http*: move common variables and macros to http.[ch] + + transport.c::get_refs_via_curl(): do not leak refs_url + + Don't expect verify_pack() callers to set pack_size + + http-push: do not SEGV after fetching a bad pack idx file + + http*: copy string returned by sha1_to_hex + + http-walker: verify remote packs + + http-push, http-walker: style fixes + + t5550-http-fetch: test fetching of packed objects + + http-push: fix missing "#ifdef USE_CURL_MULTI" around + "is_running_queue" + + http-push: send out fetch requests on queue + + t5540-http-push: test fetching of packed objects + + t5540-http-push: test fetching of loose objects + + Merge branch 'rc/maint-http-local-slot-fix' into rc/http-push + + http*: cleanup slot->local after fclose + +I do not use http-push myself, and as I said, I have shortage of git time +in recent weeks, so these are not as carefully reviewed as usual; but +RCTay is proving to be a very reliable HTTP guy I can trust, so unless +there are regression reports from people who actually use http-push, this +will be in 'master' soon. ---------------------------------------------------------------- [Stalled and may need help and prodding to go forward] @@ -144,12 +238,6 @@ I need to replace this with the new iteration... Dscho asked about the performance implications of this; I do not think I saw any progress on that yet... -* ph/submodule-rebase (Fri Apr 24 09:06:38 2009 +1000) 1 commit - + git-submodule: add support for --rebase. - -There was a discussion on --rebase vs --merge and needs for unified -configuration variable handling for this patch... - * lt/read-directory (Fri May 15 12:01:29 2009 -0700) 3 commits - Add initial support for pathname conversion to UTF-8 - read_directory(): infrastructure for pathname character set @@ -171,8 +259,7 @@ may be long overdue but seems to be a hard problem. * ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit - blame.c: start libifying the blame infrastructure -A few minor point remains in this initial one. I hate to do these minor -fix-ups myself, but I may end up doing so... +A few minor point remains in this initial one. * jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit - Allow --date=local --date=other-format to work as expected @@ -220,8 +307,13 @@ in binary mode as well. ---------------------------------------------------------------- [Actively cooking] -* da/araxis-mergetool (Sun May 24 00:24:41 2009 +0000) 1 commit - + mergetool--lib: add support for araxis merge +* gb/am-foreign (Wed May 27 11:25:19 2009 +0200) 4 commits + - git-am: refactor 'cleaning up and aborting' + - git-am foreign patch support: StGIT support + - git-am foreign patch support: autodetect some patch formats + - git-am foreign patch support: introduce patch_format + +Should re-review and merge to 'next' but I am short of time these days. * jc/cache-tree (Fri May 22 23:14:25 2009 -0700) 5 commits + Avoid "diff-index --cached" optimization under --find-copies- @@ -231,47 +323,17 @@ in binary mode as well. + cache-tree.c::cache_tree_find(): simplify internal API + write-tree --ignore-cache-tree -* cb/maint-1.6.0-xdl-merge-fix (Mon May 25 01:21:14 2009 +0100) 2 commits - - Change xdl_merge to generate output even for null merges - - t6023: merge-file fails to output anything for a degenerate merge - -Soon in 'next'; +I believe the code is right, but this touches a very low-level code with +high chance of subtle breakages unless you are really careful. I'll let +it simmer a bit longer in 'next'. * jc/diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits - diff: Rename QUIET internal option to QUICK - diff: change semantics of "ignore whitespace" options -* cc/bisect (Thu May 28 23:21:16 2009 +0200) 2 commits - - bisect: display first bad commit without forking a new process - - bisect: drop unparse_commit() and use clear_commit_marks() - -Soon in 'next'; - -* rc/http-push (Sat May 30 01:59:50 2009 +0800) 21 commits - - http*: add helper methods for fetching objects (loose) - - http*: add helper methods for fetching packs - - http: use new http API in fetch_index() - - http*: add http_get_info_packs - - Use the new http API in fetch_symref() - - Use the new http API in update_remote_info_refs() - - Use the new http API in http_fetch_ref() - - Use the new http API in get_refs_via_curl() - - Two new functions for the http API - - http: create function end_url_with_slash - - http*: move common variables and macros to http.[ch] - - Some cleanup in get_refs_via_curl() - - Don't expect verify_pack() callers to set pack_size - - http-push: do not SEGV after fetching a bad pack idx file - - http*: copy string returned by sha1_to_hex - - http-walker: verify remote packs - - http-push, http-walker: style fixes - - http-push: fix missing "#ifdef USE_CURL_MULTI" around - "is_running_queue" - - http-push: send out fetch requests on queue - - t5540-http-push: test fetching of packed objects - - t5540-http-push: test fetching of loose objects - -Updated (but not yet with the "slot->local = NULL" patch) +I am not sure if it should wait for a major version bump but this is a +good semantics change. Perhaps merge to 'next' soonish, but I am +undecided. Comments? * cc/replace (Wed May 27 07:14:09 2009 +0200) 14 commits - t6050: check pushing something based on a replaced commit @@ -290,8 +352,6 @@ Updated (but not yet with the "slot->local = NULL" patch) "refs/replace/" - refs: add a "for_each_replace_ref" function -Rebased to master. - ---------------------------------------------------------------- [On Hold]