From: Junio C Hamano Date: Mon, 28 Dec 2009 09:54:57 +0000 (-0800) Subject: What's cooking (2009/12 #05) X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1c3f427882dbe1c63ccdaf86741837dfbb981051;p=thirdparty%2Fgit.git What's cooking (2009/12 #05) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index 7ed9b6eeba..4466a294fe 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 (Dec 2009, #04; Wed, 09) -X-master-at: 80d93611c55fec171e0d9aba98db079952f9d7aa -X-next-at: 245e2a65f71e0255a90a3c45ea82bcdd19f85eff +Subject: What's cooking in git.git (Dec 2009, #05; Mon, 28) +X-master-at: c2ff10c98e22ae64d553273e6d67bb123a1c916f +X-next-at: ba67783643e94c85cfa57edf932dea2abdf68711 -What's cooking in git.git (Dec 2009, #04; Wed, 09) +What's cooking in git.git (Dec 2009, #05; Mon, 28) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -14,89 +14,140 @@ still holding onto them. -------------------------------------------------- [Graduated to "master"] -* jk/maint-add-p-delete-fix (2009-12-08) 1 commit. - (merged to 'next' on 2009-12-08 at 3c2c08a) - + add-interactive: fix deletion of non-empty files - -Fixes a regression in 1.6.5.3. +* sr/vcs-helper (2009-12-07) 14 commits + (merged to 'next' on 2009-12-07 at 8f041bc) + + tests: handle NO_PYTHON setting + (merged to 'next' on 2009-12-03 at e45b562) + + builtin-push: don't access freed transport->url + (merged to 'next' on 2009-11-27 at 83268ab) + + Add Python support library for remote helpers + + Basic build infrastructure for Python scripts + + Allow helpers to report in "list" command that the ref is unchanged + + Fix various memory leaks in transport-helper.c + + Allow helper to map private ref names into normal names + + Add support for "import" helper command + + Allow specifying the remote helper in the url + + Add a config option for remotes to specify a foreign vcs + + Allow fetch to modify refs + + Use a function to determine whether a remote is valid + + Allow programs to not depend on remotes having urls + + Fix memory leak in helper method for disconnect -* jn/maint-pull-rebase-error-message (2009-11-27) 1 commit. - (merged to 'next' on 2009-12-03 at 2ced03c) - + pull: clarify advice for the unconfigured error case +* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit + (merged to 'next' on 2009-10-11 at 043acdf) + + send-email: make --no-chain-reply-to the default -Replaces old 'jn/rfc-pull-rebase-error-message' topic. +* jc/1.7.0-push-safety (2009-02-09) 2 commits + (merged to 'next' on 2009-10-11 at 81b8128) + + Refuse deleting the current branch via push + + Refuse updating the current branch in a non-bare repository via push --------------------------------------------------- -[New Topics] +* jc/1.7.0-diff-whitespace-only-status (2009-08-30) 4 commits + (merged to 'next' on 2009-10-11 at 546c74d) + + diff.c: fix typoes in comments + + Make test case number unique + + diff: Rename QUIET internal option to QUICK + + diff: change semantics of "ignore whitespace" options + (this branch is used by jc/1.7.0-diff-whitespace-prepare and jc/diff-whitespace-prepare.) -* cc/reset-more (2009-12-08) 6 commits - - Documentation: reset: add some tables to describe the different options - - Documentation: reset: describe new "--keep-local-changes" option - - reset: add test cases for "--keep-local-changes" option - - reset: add option "--keep-local-changes" to "git reset" - - reset: use "unpack_trees()" directly instead of "git read-tree" - - reset: add a few tests for "git reset --merge" +This changes exit code from "git diff --ignore-whitespace" and friends +when there is no actual output. -The documentation is much clearer than the previous round in describing -what it does, but I find it a bit unclear in describing what it is _good_ -for (iow, scenarios and use cases). +* gb/1.7.0-diff-whitespace-only-output (2009-11-19) 1 commit + (merged to 'next' on 2009-11-21 at 3375bf4) + + No diff -b/-w output for all-whitespace changes + (this branch is used by jc/1.7.0-diff-whitespace-prepare and jc/diff-whitespace-prepare.) -Breaks 'pu' and does not pass test on its own yet. +Likewise but for the output of "diff --git" headers. -* tr/http-push-ref-status (2009-12-08) 3 commits - - transport-helper.c::push_refs(): emit "no refs" error message - - transport.c::transport_push(): make ref status affect return value - - refactor ref status logic for pushing +* jk/1.7.0-status (2009-12-11) 16 commits + (merged to 'next' on 2009-12-24 at e9929b3) + + status/commit: do not suggest "reset HEAD " while merging + + commit/status: "git add " is not necessarily how to resolve + + commit/status: check $GIT_DIR/MERGE_HEAD only once + (merged to 'next' on 2009-12-08 at 9b57d84) + + t7508-status: test all modes with color + + t7508-status: status --porcelain ignores relative paths setting + (merged to 'next' on 2009-12-07 at 7723acf) + + status: reduce duplicated setup code + + status: disable color for porcelain format + (merged to 'next' on 2009-12-05 at 44dcefd) + + status -s: obey color.status + + builtin-commit: refactor short-status code into wt-status.c + (merged to 'next' on 2009-11-27 at 91691ec) + + t7508-status.sh: Add tests for status -s + + status -s: respect the status.relativePaths option + (merged to 'next' on 2009-11-21 at 884bb56) + + docs: note that status configuration affects only long format + (merged to 'next' on 2009-10-11 at 65c8513) + + commit: support alternate status formats + + status: add --porcelain output format + + status: refactor format option parsing + + status: refactor short-mode printing to its own function + (this branch uses jc/1.7.0-status.) --------------------------------------------------- -[Stalled] +Gives the --short output format to post 1.7.0 "git commit --dry-run" that +is similar to that of post 1.7.0 "git status". -* je/send-email-no-subject (2009-08-05) 1 commit. - (merged to 'next' on 2009-10-11 at 1b99c56) - + send-email: confirm on empty mail subjects +* jc/1.7.0-status (2009-09-05) 4 commits + (merged to 'next' on 2009-10-11 at 9558627) + + status: typo fix in usage + + git status: not "commit --dry-run" anymore + + git stat -s: short status output + + git stat: the beginning of "status that is not a dry-run of commit" + (this branch is used by jk/1.7.0-status.) -The existing tests cover the positive case (i.e. as long as the user says -"yes" to the "do you really want to send this message that lacks subject", -the message is sent) of this feature, but the feature itself needs its own -test to verify the negative case (i.e. does it correctly stop if the user -says "no"?) +With this, "git status" is no longer "git commit --dry-run". -* jc/checkout-merge-base (2009-11-20) 2 commits - - "rebase --onto A...B" replays history on the merge base between A and B - - "checkout A...B" switches to the merge base between A and B +-------------------------------------------------- +[New Topics] -I've been using the first one for a while myself but do not see many users -want this (yet); the new feature is not urgent anyway. +* jc/cache-unmerge (2009-12-25) 9 commits + - rerere forget path: forget recorded resolution + - rerere: refactor rerere logic to make it independent from I/O + - rerere: remove silly 1024-byte line limit + - resolve-undo: teach "update-index --unresolve" to use resolve-undo info + - resolve-undo: "checkout -m path" uses resolve-undo information + - resolve-undo: allow plumbing to clear the information + - resolve-undo: basic tests + - resolve-undo: record resolved conflicts in a new index extension section + - builtin-merge.c: use standard active_cache macros -* tr/maint-merge-ours-clarification (2009-11-15) 1 commit - (merged to 'next' on 2009-11-21 at fadaf7b) - + rebase: refuse to rebase with -s ours +* js/filter-branch-prime (2009-12-15) 1 commit + - filter-branch: remove an unnecessary use of 'git read-tree' -I do not think we reached a concensus for solving conflicts between "give -them rope" and "protect users from clearly meaningless combinations". The -author obviously is for the latter (and I am inclined to agree); Dscho -seems to think otherwise. +* mg/tag-d-show (2009-12-10) 1 commit + - tag -d: print sha1 of deleted tag -* jc/fix-tree-walk (2009-10-22) 8 commits - (merged to 'next' on 2009-10-22 at 10c0c8f) - + Revert failed attempt since 353c5ee - + read-tree --debug-unpack - (merged to 'next' on 2009-10-11 at 0b058e2) - + unpack-trees.c: look ahead in the index - + unpack-trees.c: prepare for looking ahead in the index - + Aggressive three-way merge: fix D/F case - + traverse_trees(): handle D/F conflict case sanely - + more D/F conflict tests - + tests: move convenience regexp to match object names to test-lib.sh +* sb/maint-octopus (2009-12-11) 3 commits + - octopus: remove dead code + - octopus: reenable fast-forward merges + - octopus: make merge process simpler to follow -This has some stupid bugs and reverted from 'next' until I can fix it, but -the "temporarily" turned out to be very loooong. Sigh. We won't have a -proper fix in 1.6.6. +* il/exec-error-report (2009-12-24) 2 commits + - Improve transport helper exec failure reporting + - Report exec errors from run-command -------------------------------------------------- [Cooking] -* bg/maint-add-all-doc (2009-12-07) 4 commits. +* jh/commit-status (2009-12-07) 1 commit + - [test?] Add commit.status, --status, and --no-status + +* jc/checkout-merge-base (2009-11-20) 2 commits + (merged to 'next' on 2009-12-24 at ff4d1d4) + + "rebase --onto A...B" replays history on the merge base between A and B + + "checkout A...B" switches to the merge base between A and B + +* tr/http-push-ref-status (2009-12-24) 6 commits + - transport-helper.c::push_refs(): emit "no refs" error message + - transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed + - transport.c::transport_push(): make ref status affect return value + - refactor ref status logic for pushing + - t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs + - t5541-http-push.sh: add tests for non-fast-forward pushes + +* bg/maint-add-all-doc (2009-12-07) 4 commits - squash! rm documentation--also mention add-u where we mention commit-a - git-rm doc: Describe how to sync index & work tree - git-add/rm doc: Consistently back-quote @@ -114,16 +165,21 @@ because I wrote the initial version) and this neatly fix it as well. - Pass unknown protocols to external protocol handlers - Support mandatory capabilities - Add remote helper debug mode - (this branch uses early parts of sr/vcs-helper.) - -Yet another round. - -* jh/commit-status (2009-12-07) 1 commit - - [test?] Add commit.status, --status, and --no-status * mm/diag-path-in-treeish (2009-12-07) 1 commit - Detailed diagnosis when parsing an object name fails. +* mh/rebase-fixup (2009-12-07) 2 commits + - Add a command "fixup" to rebase --interactive + - t3404: Use test_commit to set up test repository + (this branch is used by ns/rebase-auto-squash.) + +Initial round of "fixup" action that is similar to "squash" action in +"rebase -i" that excludes the commit log message from follow-up commits +when composing the log message for the updated one. Expected is a further +improvement to skip opening the editor if a pick is followed only by +"fixup" and no "squash". + * ns/rebase-auto-squash (2009-12-08) 2 commits - fixup! rebase -i --autosquash - rebase -i --autosquash: auto-squash commits @@ -142,8 +198,6 @@ Yet another round. - Rename t9301 to t9350, to make room for more fast-import tests - fast-import: Proper notes tree manipulation -Rerolled and under discussion. - * fc/opt-quiet-gc-reset (2009-12-02) 1 commit - General --quiet improvements @@ -151,17 +205,6 @@ Rerolled and under discussion. - Document date formats accepted by parse_date() - builtin-commit: add --date option -* mh/rebase-fixup (2009-12-07) 2 commits - - Add a command "fixup" to rebase --interactive - - t3404: Use test_commit to set up test repository - (this branch is used by ns/rebase-auto-squash.) - -Initial round of "fixup" action that is similar to "squash" action in -"rebase -i" that excludes the commit log message from follow-up commits -when composing the log message for the updated one. Expected is a further -improvement to skip opening the editor if a pick is followed only by -"fixup" and no "squash". - * sr/gfi-options (2009-12-04) 7 commits - fast-import: add (non-)relative-marks feature - fast-import: allow for multiple --import-marks= arguments @@ -171,8 +214,6 @@ improvement to skip opening the editor if a pick is followed only by - fast-import: put marks reading in its own function - fast-import: put option parsing code in separate functions -Rerolled. - * ap/merge-backend-opts (2008-07-18) 6 commits - Document that merge strategies can now take their own options - Extend merge-subtree tests to test -Xsubtree=dir. @@ -189,57 +230,16 @@ but otherwise seemed good. - run test suite without dashed git-commands in PATH - build dashless "bin-wrappers" directory similar to installed bindir -Rerolled. - * tr/http-updates (2009-12-01) 3 commits (merged to 'next' on 2009-12-07 at f08d447) + Allow curl to rewind the RPC read buffer + Add an option for using any HTTP authentication scheme, not only basic + http: maintain curl sessions -* jc/diff-whitespace-prepare (2009-11-28) 2 commits - - diff: flip the default diff.bwoutputonly to true - - diff: optionally allow traditional "-b/-w affects only output" semantics - (this branch uses gb/1.7.0-diff-whitespace-only-output and jc/1.7.0-diff-whitespace-only-status; is used by jc/1.7.0-diff-whitespace-prepare.) - -This was to redo the two -b/-w semantic changes to prepare the migration of -existing users before 1.7.0 happens, but I think we should drop it. - -Comments? - -* sr/vcs-helper (2009-12-07) 14 commits - (merged to 'next' on 2009-12-07 at 8f041bc) - + tests: handle NO_PYTHON setting - (merged to 'next' on 2009-12-03 at e45b562) - + builtin-push: don't access freed transport->url - (merged to 'next' on 2009-11-27 at 83268ab) - + Add Python support library for remote helpers - + Basic build infrastructure for Python scripts - + Allow helpers to report in "list" command that the ref is unchanged - + Fix various memory leaks in transport-helper.c - + Allow helper to map private ref names into normal names - + Add support for "import" helper command - + Allow specifying the remote helper in the url - + Add a config option for remotes to specify a foreign vcs - + Allow fetch to modify refs - + Use a function to determine whether a remote is valid - + Allow programs to not depend on remotes having urls - + Fix memory leak in helper method for disconnect - (this branch shares commits with il/vcs-helper.) - -Should be among the first to graduate after 1.6.6 final. - -* tr/reset-checkout-patch (2009-11-19) 1 commit. - (merged to 'next' on 2009-11-22 at b224950) - + {checkout,reset} -p: make patch direction configurable - -I do not particularly like a configuration like this that changes the -behaviour of a command in a drastic way---it will make helping others -much harder. - -Comments? - -* nd/sparse (2009-11-25) 20 commits. +* nd/sparse (2009-12-14) 22 commits + (merged to 'next' on 2009-12-24 at 1fa9ff3) + + commit: correctly respect skip-worktree bit + + ie_match_stat(): do not ignore skip-worktree bit with CE_MATCH_IGNORE_VALID (merged to 'next' on 2009-11-25 at 71380f5) + tests: rename duplicate t1009 (merged to 'next' on 2009-11-23 at f712a41) @@ -263,127 +263,45 @@ Comments? + Add test-index-version + update-index: refactor mark_valid() in preparation for new options -There were some test glitches reported and at least one test seems to -be broken in the sense that it is not testing what it is trying to. -Fix-up expected. - -------------------------------------------------- -[For 1.7.0] - -* jk/1.7.0-status (2009-12-08) 13 commits. - (merged to 'next' on 2009-12-08 at 9b57d84) - + t7508-status: test all modes with color - + t7508-status: status --porcelain ignores relative paths setting - (merged to 'next' on 2009-12-07 at 7723acf) - + status: reduce duplicated setup code - + status: disable color for porcelain format - (merged to 'next' on 2009-12-05 at 44dcefd) - + status -s: obey color.status - + builtin-commit: refactor short-status code into wt-status.c - (merged to 'next' on 2009-11-27 at 91691ec) - + t7508-status.sh: Add tests for status -s - + status -s: respect the status.relativePaths option - (merged to 'next' on 2009-11-21 at 884bb56) - + docs: note that status configuration affects only long format - (merged to 'next' on 2009-10-11 at 65c8513) - + commit: support alternate status formats - + status: add --porcelain output format - + status: refactor format option parsing - + status: refactor short-mode printing to its own function - (this branch uses jc/1.7.0-status.) - -Gives the --short output format to post 1.7.0 "git commit --dry-run" that -is similar to that of post 1.7.0 "git status". - -Immediately after 1.6.6 while rebuilding 'next', we may want to reorder a -few commits at the tip, as "docs: affects only long format" describes a -limitation that has disappeared. +[Ejected] -* jc/1.7.0-status (2009-09-05) 4 commits. - (merged to 'next' on 2009-10-11 at 9558627) - + status: typo fix in usage - + git status: not "commit --dry-run" anymore - + git stat -s: short status output - + git stat: the beginning of "status that is not a dry-run of commit" - (this branch is used by jk/1.7.0-status.) - -With this, "git status" is no longer "git commit --dry-run". - -* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit. - (merged to 'next' on 2009-10-11 at 043acdf) - + send-email: make --no-chain-reply-to the default - -As the title says. - -* jc/1.7.0-push-safety (2009-02-09) 2 commits. - (merged to 'next' on 2009-10-11 at 81b8128) - + Refuse deleting the current branch via push - + Refuse updating the current branch in a non-bare repository via push - -* jc/1.7.0-diff-whitespace-only-status (2009-08-30) 4 commits. - (merged to 'next' on 2009-10-11 at 546c74d) - + diff.c: fix typoes in comments - + Make test case number unique - + diff: Rename QUIET internal option to QUICK - + diff: change semantics of "ignore whitespace" options - (this branch is used by jc/1.7.0-diff-whitespace-prepare and jc/diff-whitespace-prepare.) - -This changes exit code from "git diff --ignore-whitespace" and friends -when there is no actual output. It is a backward incompatible change, -and jc/diff-whitespace-prepare topic is meant to ease the transition. - -* gb/1.7.0-diff-whitespace-only-output (2009-11-19) 1 commit - (merged to 'next' on 2009-11-21 at 3375bf4) - + No diff -b/-w output for all-whitespace changes - (this branch is used by jc/1.7.0-diff-whitespace-prepare and jc/diff-whitespace-prepare.) - -Likewise but for the output of "diff --git" headers. - -* jc/1.7.0-diff-whitespace-prepare (2009-11-28) 2 commits - - diff: disable diff.bwoutputonly warning - - diff: flip the diff.bwoutputonly default to false - (this branch uses gb/1.7.0-diff-whitespace-only-output, jc/1.7.0-diff-whitespace-only-status and jc/diff-whitespace-prepare.) - -And this is to actually flip the default and eventually remove the warning. -As I am contemplating of dropping jc/diff-whitespace-prepare, this should -also be dropped as well. - -* ns/1.7.0-send-email-no-chain-reply-to (2009-08-22) 1 commit - - send-email: make --no-chain-reply-to the default - -And this is to actually flip the default in 1.7.0. +* je/send-email-no-subject (2009-08-05) 1 commit + (merged to 'next' on 2009-10-11 at 1b99c56) + + send-email: confirm on empty mail subjects --------------------------------------------------- -[Reverted from 'next'] - -* jc/botched-maint-cygwin-count-objects (2009-11-24) 2 commits. - (merged to 'next' on 2009-11-25 at 8aa62a0) - + Revert "ST_BLOCKS_COUNTS_IN_BLKSIZE to say on-disk size is (st_blksize * st_blocks)" - (merged to 'next' on 2009-11-22 at 4ba5880) - + ST_BLOCKS_COUNTS_IN_BLKSIZE to say on-disk size is (st_blksize * st_blocks) - -This is a revert of the tip one I merged prematurely to 'next'. The real -fix from Ramsay is already in 'master'. - -* ks/precompute-completion (2009-11-15) 4 commits. - (merged to 'next' on 2009-11-15 at 23cdb96) - + Revert ks/precompute-completion series - (merged to 'next' on 2009-10-28 at cd5177f) - + completion: ignore custom merge strategies when pre-generating - (merged to 'next' on 2009-10-22 at f46a28a) - + bug: precomputed completion includes scripts sources - (merged to 'next' on 2009-10-14 at adf722a) - + Speedup bash completion loading - -Reverted out of 'next', to be replaced with jn/faster-completion-startup -topic. +* jc/fix-tree-walk (2009-10-22) 8 commits + (merged to 'next' on 2009-10-22 at 10c0c8f) + + Revert failed attempt since 353c5ee + + read-tree --debug-unpack + (merged to 'next' on 2009-10-11 at 0b058e2) + + unpack-trees.c: look ahead in the index + + unpack-trees.c: prepare for looking ahead in the index + + Aggressive three-way merge: fix D/F case + + traverse_trees(): handle D/F conflict case sanely + + more D/F conflict tests + + tests: move convenience regexp to match object names to test-lib.sh --------------------------------------------------- -[Haven't been purged from 'pu' yet] +This has some stupid bugs and reverted from 'next' until I can fix it, but +the "temporarily" turned out to be very loooong. -* jc/grep-full-tree (2009-11-24) 1 commit. - - grep: --full-tree +* jc/grep-full-tree (2009-11-24) 1 commit + . grep: --full-tree The interaction with this option and pathspecs need to be worked out better. I _think_ "grep --full-tree -e pattern -- '*.h'" should find from all the header files in the tree, for example. + +* cc/reset-more (2009-12-08) 6 commits + . Documentation: reset: add some tables to describe the different options + . Documentation: reset: describe new "--keep-local-changes" option + . reset: add test cases for "--keep-local-changes" option + . reset: add option "--keep-local-changes" to "git reset" + . reset: use "unpack_trees()" directly instead of "git read-tree" + . reset: add a few tests for "git reset --merge" + +The documentation is much clearer than the previous round in describing +what it does, but I find it a bit unclear in describing what it is _good_ +for (iow, scenarios and use cases). + +Breaks 'pu' and does not pass test on its own yet.