From 5be8d38af2acf6bace37291fad235cf18c17cd5b Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 25 May 2009 01:17:59 -0700 Subject: [PATCH] What's cooking (2009/05 #03) --- whats-cooking.txt | 298 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 174 insertions(+), 124 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index a1bfac8d9d..d9fe4afefc 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, #02; Sun, 17) -X-master-at: 55524fcf9d6676ca3840227092bf3a14ba404615 -X-next-at: 540caa5c275c0ad44c1bc979c37075f58e3459de +Subject: What's cooking in git.git (May 2009, #03; Mon, 25) +X-master-at: 9619ff14159ab3401636b9883a715b0f20b051df +X-next-at: 2435664148ab70c34750a9f1339d4ca898bd289e -What's cooking in git.git (May 2009, #02; Sun, 17) +What's cooking in git.git (May 2009, #03; Mon, 25) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -17,32 +17,110 @@ meant to be merged to the maintenance series have "maint-" in their names. ---------------------------------------------------------------- [New Topics] -* 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 - -* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits - - Fix for a merge where a branch has an F->D transition - - Add a reminder test case for a merge with F/D transition +* sb/opt-filename (Sat May 23 11:53:13 2009 -0700) 5 commits + - parse-opts: add OPT_FILENAME and transition builtins + - parse-opts: prepare for OPT_FILENAME + - Merge branch 'jc/mktree' into sb/opt-filename + - Merge branch 'sb/format-patch-parseopt' into sb/opt-filename + - Merge branch 'sb/show-branch-parse-options' into sb/opt-filename + - Merge branch 'master' into sb/opt-filename + + apply, fmt-merge-msg: use relative filenames + + commit: -F overrides -t + +There are quite a few new callers to parse_options() in 'next' and 'pu' +that are more likely to graduate before this series, so for now I merged a +few of them and adjusted the commit "prepare for OPT_FILENAME". I tried +to be careful but extra sets of eyeballs would be helpful. + +* da/araxis-mergetool (Sun May 24 00:24:41 2009 +0000) 1 commit + + mergetool--lib: add support for araxis merge + +I admit that I feel certain distaste in supporting a closed tool, but we +already make things bearable for people on Windows; Araxis is no worse, +right? + +* 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/cache-tree (Fri May 22 23:14:25 2009 -0700) 5 commits + - Avoid "diff-index --cached" optimization under --find-copies- + harder + - Optimize "diff-index --cached" using cache-tree + - t4007: modernize the style + - cache-tree.c::cache_tree_find(): simplify inernal API + - write-tree --ignore-cache-tree + +* 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 + +* 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 + +* 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 -Although the reported breakage is covered with the patch, Alex feels the -solution unsatisfactory. Cleaning up D/F conflict handling in merge-recursive -may be long overdue but seems to be a hard problem. +---------------------------------------------------------------- +[Graduated to "master"] -* 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" +* cc/bisect (Sat May 9 17:55:47 2009 +0200) 20 commits + + bisect: make "git bisect" use new "--next-all" bisect-helper + function + + bisect: add "check_good_are_ancestors_of_bad" function + + bisect: implement the "check_merge_bases" function + + bisect: automatically sort sha1_array if needed when looking it up + + bisect: make skipped array functions more generic + + bisect: remove too much function nesting + + bisect: use new "struct argv_array" to prepare argv for + "setup_revisions" + + bisect: store good revisions in a "sha1_array" + + bisect: implement "rev_argv_push" to fill an argv with revs + + bisect: use "sha1_array" to store skipped revisions + + am: simplify "sq" function by using "git rev-parse --sq-quote" + + bisect: use "git rev-parse --sq-quote" instead of a custom "sq" + function + + rev-parse: add --sq-quote to shell quote arguments + + rev-list: remove stringed output flag from "show_bisect_vars" + + bisect--helper: remove "--next-vars" option as it is now useless + + bisect: use "git bisect--helper --next-exit" in "git-bisect.sh" + + bisect--helper: add "--next-exit" to output bisect results + + bisect: move common bisect functionality to "bisect_common" + + rev-list: refactor printing bisect vars + + rev-list: make "estimate_bisect_steps" non static -* sb/format-patch-parseopt (Sat May 16 02:24:46 2009 -0700) 1 commit - - format-patch: migrate to parse-options API +Rewriting major part of "git-bisect" shell script continues. The patches +seem to be reasonably clean. * fc/decorate-tag (Thu May 14 00:32:53 2009 +0300) 2 commits + Prettify log decorations even more @@ -67,43 +145,15 @@ may be long overdue but seems to be a hard problem. * js/maint-no-ln-across-libexec-and-bin (Mon May 11 13:02:18 2009 +0200) 1 commit + Add NO_CROSS_DIRECTORY_HARDLINKS support to the Makefile -* jh/notes (Sat May 16 13:44:17 2009 +0200) 5 commits - - Teach "-m " and "-F " to "git notes edit" - - Add an expensive test for git-notes - - Speed up git notes lookup - - Add a script to edit/inspect notes - - Introduce commit notes - * tp/send-email-from-config (Tue May 12 15:48:56 2009 -0700) 1 commit + send-email: Add config option for sender address -* 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 - conversion - - Add 'fill_directory()' helper function for directory traversal - ----------------------------------------------------------------- -[Will merge to "master" soon] - -* 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 - * ae/anon-fetch-info (Fri Apr 17 10:20:11 2009 +0200) 1 commit + fetch: Strip usernames from url's before storing them * ac/graph-horizontal-line (Tue Apr 21 08:47:01 2009 -0400) 1 commit + graph API: Use horizontal lines for more compact graphs -* ph/submodule-rebase (Fri Apr 24 09:06:38 2009 +1000) 1 commit - + git-submodule: add support for --rebase. - * mh/show-branch-color (Sat Apr 25 13:46:14 2009 +0200) 2 commits + bash completion: show-branch color support + show-branch: color the commit status signs @@ -118,12 +168,6 @@ may be long overdue but seems to be a hard problem. * jk/maint-add-empty (Tue Apr 28 23:21:01 2009 -0400) 1 commit + add: don't complain when adding empty project root -When you say "git add ." in an empty directory, you get "No path matches -''", instead of "No path matches '.'", and this "fixes" it by hiding the -error and making the command silently succeed. Strictly speaking it -introduces inconsistency, but I think an empty directory is so -uninteresting special case that not signalling it as an error is Ok. - * ar/unlink-err (Wed Apr 29 23:24:52 2009 +0200) 3 commits + print unlink(2) errno in copy_or_link_directory + replace direct calls to unlink(2) with unlink_or_warn @@ -154,9 +198,6 @@ uninteresting special case that not signalling it as an error is Ok. + parseopt: add OPT_NEGBIT + parseopt: add OPT_NEGBIT -I somehow botched the commit log message of the top one; it is about -fixing "ls-files --no-empty-directory". - * jk/maint-1.6.0-trace-argv (Fri May 8 05:06:15 2009 -0400) 1 commit + fix GIT_TRACE segfault with shell-quoted aliases @@ -166,10 +207,6 @@ fixing "ls-files --no-empty-directory". * rr/forbid-bs-in-ref (Fri May 8 07:32:37 2009 +0200) 1 commit + Disallow '\' in ref names -This retroactively forbids use of what people could have been using -happily, which, strictly speaking, is a no-no, but makes sense in the -longer term. - * do/maint-merge-recursive-fix (Sat May 9 14:49:59 2009 -0700) 1 commit + merge-recursive: never leave index unmerged while recursing @@ -180,37 +217,51 @@ longer term. + Teach 'git checkout' to preload the index contents + Avoid unnecessary 'lstat()' calls in 'get_stat_data()' -* cc/bisect (Sat May 9 17:55:47 2009 +0200) 20 commits - + bisect: make "git bisect" use new "--next-all" bisect-helper - function - + bisect: add "check_good_are_ancestors_of_bad" function - + bisect: implement the "check_merge_bases" function - + bisect: automatically sort sha1_array if needed when looking it up - + bisect: make skipped array functions more generic - + bisect: remove too much function nesting - + bisect: use new "struct argv_array" to prepare argv for - "setup_revisions" - + bisect: store good revisions in a "sha1_array" - + bisect: implement "rev_argv_push" to fill an argv with revs - + bisect: use "sha1_array" to store skipped revisions - + am: simplify "sq" function by using "git rev-parse --sq-quote" - + bisect: use "git rev-parse --sq-quote" instead of a custom "sq" - function - + rev-parse: add --sq-quote to shell quote arguments - + rev-list: remove stringed output flag from "show_bisect_vars" - + bisect--helper: remove "--next-vars" option as it is now useless - + bisect: use "git bisect--helper --next-exit" in "git-bisect.sh" - + bisect--helper: add "--next-exit" to output bisect results - + bisect: move common bisect functionality to "bisect_common" - + rev-list: refactor printing bisect vars - + rev-list: make "estimate_bisect_steps" non static +* da/mergetool-lib (Sat May 2 01:57:21 2009 -0700) 1 commit + + mergetool--lib: specialize diff options for emerge and ecmerge -Rewriting major part of "git-bisect" shell script continues. The patches -seem to be reasonably clean. +---------------------------------------------------------------- +[Will merge to "master" soon] + +* 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 + +* ph/submodule-rebase (Fri Apr 24 09:06:38 2009 +1000) 1 commit + + git-submodule: add support for --rebase. + +* cc/bisect (Sun May 17 17:36:46 2009 +0200) 3 commits + + 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 ---------------------------------------------------------------- [Stalled and may need help and prodding to go forward] +* 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 + conversion + - Add 'fill_directory()' helper function for directory traversal + +Before adding the real "conversion", this needs a few real fixups, I +think. For example there is one hardcoded array that is used without +bounds check. + +* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits + - Fix for a merge where a branch has an F->D transition + - Add a reminder test case for a merge with F/D transition + +Although the reported breakage is covered with the patch, Alex feels the +solution unsatisfactory. Cleaning up D/F conflict handling in merge-recursive +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 @@ -263,13 +314,36 @@ in binary mode as well. ---------------------------------------------------------------- [Actively cooking] -* da/mergetool-lib (Sat May 2 01:57:21 2009 -0700) 1 commit - - mergetool--lib: specialize diff options for emerge and ecmerge +* 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 -Can somebody tell me what the current status of this is? I thought there -was some objection, but I lost track... +* jh/notes (Sat May 16 13:44:17 2009 +0200) 5 commits + - Teach "-m " and "-F " to "git notes edit" + - Add an expensive test for git-notes + - Speed up git notes lookup + - Add a script to edit/inspect notes + - Introduce commit notes -* rc/http-push (Sat May 16 11:51:52 2009 +0800) 12 commits +* rc/http-push (Mon May 18 16:14:24 2009 +0800) 15 commits + - http*: add helper methods for fetching objects (loose) + - http*: add helper methods for fetching objects/info/packs + - http*: add helper methods for fetching packs - http*: add fetch_http_pack_index - http: create function end_url_with_slash - http*: move common variables and macros to http.[ch] @@ -284,8 +358,7 @@ was some objection, but I lost track... - t5540-http-push: test fetching of packed objects - t5540-http-push: test fetching of loose objects -There was an 11-patch updates but in the middle there were some -compilation breakage issues; only early part of that series is queued. +This is not the re-rolled 18-patch series we discussed yesterday. * cc/replace (Tue Apr 14 00:36:59 2009 +0200) 13 commits - Documentation: add documentation for "git replace" @@ -318,26 +391,3 @@ command line would not work very well with this series. These are for 1.7.0, but the messages when they trigger together may need to be rethought. - ----------------------------------------------------------------- -[Discarded] - -* js/notes (Tue Apr 14 00:03:36 2009 +0200) 15 commits - . Documentation: fix 'linkgit' macro in "git-notes.txt" - . tests: fix "export var=val" - . notes: refuse to edit notes outside refs/notes/ - . t3301: use test_must_fail instead of ! - . t3301: fix confusing quoting in test for valid notes ref - . notes: use GIT_EDITOR and core.editor over VISUAL/EDITOR - . notes: only clean up message file when editing - . handle empty notes gracefully - . git notes show: test empty notes - . git-notes: fix printing of multi-line notes - . notes: fix core.notesRef documentation - . Add an expensive test for git-notes - . Speed up git notes lookup - . Add a script to edit/inspect notes - . Introduce commit notes - -This has been replaced by jh/notes series. - -- 2.11.4.GIT