{"thread":{"id":"21756","subject":"What's cooking in git.git (Nov 2009, #06; Wed, 25)","startedAt":"2009-11-26T01:03:33Z","lastAt":"2009-11-28T00:45:25Z","messageCount":12,"participants":["Junio C Hamano","Sverre Rabbelier","Johan Herland","Jeff King","Jonathan Nieder","Johannes Schindelin","Daniel Barkalow"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"128416","messageId":"7v8wduksgq.fsf@alter.siamese.dyndns.org","threadId":"21756","inReplyTo":null,"subject":"What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2009-11-26T01:03:33Z","receivedAt":"2009-11-26T01:03:33Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"I wanted to do a 1.6.6-rc1 but somehow ended up spending too much time in\nmail compose buffer instead of in C-mode today.  There are a few topics\nthat are in \"stalled\" state that may be worthy of being in 1.6.6.\n\nWe should start updating the Release Notes to make the 1.7.0 warning a bit\nmore visible.\n\n-- >8 --\n\nHere are the topics that have been cooking.  Commits prefixed with '-' are\nonly in 'pu' while commits prefixed with '+' are in 'next'.  The ones\nmarked with '.' do not appear in any of the integration branches, but I am\nstill holding onto them.\n\nIn 1.7.0, we plan to correct handful of warts in the interfaces everybody\nagrees that they were mistakes.  The resulting system may not be strictly\nbackward compatible.  Currently planned changes are:\n\n * refuse push to update the checked out branch in a non-bare repo by\n   default\n\n   Make \"git push\" into a repository to update the branch that is checked\n   out fail by default.  You can countermand this default by setting a\n   configuration variable in the receiving repository.\n\n   http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007\n\n * refuse push to delete the current branch by default\n\n   Make \"git push $there :$killed\" to delete the branch that is pointed at\n   by its HEAD fail by default.  You can countermand this default by\n   setting a configuration variable in the receiving repository.\n\n   http://thread.gmane.org/gmane.comp.version-control.git/108862/focus=108936\n\n * \"git send-email\" won't make deep threads by default\n\n   Many people said that by default when sending more than 2 patches the\n   threading git-send-email makes by default is hard to read, and they\n   prefer the default be one cover letter and each patch as a direct\n   follow-up to the cover letter.  You can countermand this by setting a\n   configuration variable.\n\n   http://article.gmane.org/gmane.comp.version-control.git/109790\n\n * \"git status\" won't be \"git-commit --dry-run\" anymore\n\n   http://thread.gmane.org/gmane.comp.version-control.git/125989/focus=125993\n\n * \"git diff -w --exit-code\" will exit success if only differences it\n   found are whitespace changes that are stripped away from the output.\n\n   http://thread.gmane.org/gmane.comp.version-control.git/119731/focus=119751\n\n * \"git diff -w/-b\" won't even produce \"diff --git\" header when all changes\n   are about whitespaces.\n\n   http://thread.gmane.org/gmane.comp.version-control.git/133256\n\n--------------------------------------------------\n[Graduated to \"master\"]\n\n* bg/fetch-multi (2009-11-10) 9 commits.\n  (merged to 'next' on 2009-11-21 at 282f464)\n + Re-implement 'git remote update' using 'git fetch'\n + builtin-fetch: add --dry-run option\n + builtin-fetch: add --prune option\n + teach warn_dangling_symref to take a FILE argument\n + remote: refactor some logic into get_stale_heads()\n + Add missing test for 'git remote update --prune'\n + Add the configuration option skipFetchAll\n + Teach the --multiple option to 'git fetch'\n + Teach the --all option to 'git fetch'\n\n* bg/apply-doc (2009-11-22) 4 commits\n  (merged to 'next' on 2009-11-22 at b42fece)\n + apply: Use the term \"working tree\" consistently\n + apply: Format all options using back-quotes\n + apply: apply works outside a repository\n + Clarify and correct -z\n\n* cc/replace (2009-11-19) 3 commits\n  (merged to 'next' on 2009-11-21 at 2aaf84b)\n + Documentation: talk a little bit about GIT_NO_REPLACE_OBJECTS\n + Documentation: fix typos and spelling in replace documentation\n + replace: use a GIT_NO_REPLACE_OBJECTS env variable\n\n* mm/maint-hint-failed-merge (2009-11-22) 2 commits.\n  (merged to 'next' on 2009-11-22 at c0f64c2)\n + user-manual: Document that \"git merge\" doesn't like uncommited changes.\n + merge-recursive: point the user to commit when file would be overwritten.\n\n* rj/maint-cygwin-count-objects (2009-11-19) 2 commits.\n  (merged to 'next' on 2009-11-22 at 4ba5880)\n + ST_BLOCKS_COUNTS_IN_BLKSIZE to say on-disk size is (st_blksize * st_blocks)\n + git-count-objects: Fix a disk-space under-estimate on Cygwin\n\n* rs/color-escape-has-zero-width (2009-11-23) 1 commit\n + Teach %w() that color escape codes have zero width\n\n* jc/log-stdin (2009-11-23) 5 commits\n  (merged to 'next' on 2009-11-23 at ea71363)\n + Add trivial tests for --stdin option to log family\n  (merged to 'next' on 2009-11-21 at c3e2e52)\n + Make --stdin option to \"log\" family read also pathspecs\n + setup_revisions(): do not call get_pathspec() too early\n + Teach --stdin option to \"log\" family\n + read_revision_from_stdin(): use strbuf\n\n* mr/gitweb-snapshot (2009-11-07) 4 commits.\n  (merged to 'next' on 2009-11-21 at e825ad9)\n + gitweb: Smarter snapshot names\n + gitweb: Document current snapshot rules via new tests\n + t/gitweb-lib.sh: Split gitweb output into headers and body\n  (merged to 'next' on 2009-10-11 at 22ba047)\n + gitweb: check given hash before trying to create snapshot\n\n* rs/work-around-grep-opt-insanity (2009-11-23) 2 commits.\n  (merged to 'next' on 2009-11-25 at bf972d8)\n + Protect scripted Porcelains from GREP_OPTIONS insanity\n + mergetool--lib: simplify guess_merge_tool()\n\n--------------------------------------------------\n[New Topics]\n\n* jc/botched-maint-cygwin-count-objects (2009-11-24) 2 commits\n  (merged to 'next' on 2009-11-25 at 8aa62a0)\n + Revert \"ST_BLOCKS_COUNTS_IN_BLKSIZE to say on-disk size is (st_blksize * st_blocks)\"\n  (merged to 'next' on 2009-11-22 at 4ba5880)\n + ST_BLOCKS_COUNTS_IN_BLKSIZE to say on-disk size is (st_blksize * st_blocks)\n\nThis is a revert of the tip one I merged prematurely to 'next'.  The real\nfix from Ramsay is already in 'master'.\n\n* jc/grep-full-tree (2009-11-24) 1 commit.\n - grep: --full-tree\n\nWe probably would want test, doc and a configuration variable to make it\ndefault (or non-default) before we can merge it to 'master'.\n\n* uk/maint-shortlog-encoding (2009-11-25) 1 commit.\n - shortlog: respect commit encoding\n\nThe fix is a maint material but the patch was against next, so I\nback-rebased it myself.  I tried to be careful but please double check the\nresult.\n\nPerhaps merge it to 'master' before 1.6.6-rc1?\n\n--------------------------------------------------\n[Stalled]\n\n* je/send-email-no-subject (2009-08-05) 1 commit.\n  (merged to 'next' on 2009-10-11 at 1b99c56)\n + send-email: confirm on empty mail subjects\n\nThe existing tests cover the positive case (i.e. as long as the user says\n\"yes\" to the \"do you really want to send this message that lacks subject\",\nthe message is sent) of this feature, but the feature itself needs its own\ntest to verify the negative case (i.e. does it correctly stop if the user\nsays \"no\"?)\n\n* fc/send-email-envelope (2009-11-22) 1 commit.\n - t9001: test --envelope-sender option of send-email\n\nThe new feature itself looked promising; this is just an unrelated test\npatch.\n\n* jn/rfc-pull-rebase-error-message (2009-11-12) 1 commit\n - git-pull.sh --rebase: overhaul error handling when no candidates are found\n\nI heard this needs at least retitling among other changes?\n\n* sr/vcs-helper (2009-11-18) 12 commits\n - Add Python support library for remote helpers\n - Basic build infrastructure for Python scripts\n - Allow helpers to report in \"list\" command that the ref is unchanged\n - Fix various memory leaks in transport-helper.c\n - Allow helper to map private ref names into normal names\n - Add support for \"import\" helper command\n - Allow specifying the remote helper in the url\n - Add a config option for remotes to specify a foreign vcs\n - Allow fetch to modify refs\n - Use a function to determine whether a remote is valid\n - Allow programs to not depend on remotes having urls\n - Fix memory leak in helper method for disconnect\n\nReplaced again, and looking good.  Perhaps Daniel has some comments?\n\n* jh/notes (2009-11-20) 10 commits\n - Add more testcases to test fast-import of notes\n - Rename t9301 to t9350, to make room for more fast-import tests\n - fast-import: Proper notes tree manipulation using the notes API\n - Refactor notes concatenation into a flexible interface for combining notes\n - Notes API: Allow multiple concurrent notes trees with new struct notes_tree\n - Notes API: for_each_note(): Traverse the entire notes tree with a callback\n - Notes API: get_note(): Return the note annotating the given object\n - Notes API: add_note(): Add note objects to the internal notes tree structure\n - Notes API: init_notes(): Initialize the notes tree from the given notes ref\n - Notes API: get_commit_notes() -> format_note() + remove the commit restriction\n\nJohan waits for an Ack from Shawn on \"fast-import\" one.\n\n* tr/maint-merge-ours-clarification (2009-11-15) 1 commit\n  (merged to 'next' on 2009-11-21 at fadaf7b)\n + rebase: refuse to rebase with -s ours\n\nI do not think we reached a concensus for solving conflicts between \"give\nthem rope\" and \"protect users from clearly meaningless combinations\".  The\nauthor obviously is for the latter (and I am inclined to agree); Dscho\nseems to think otherwise.\n\n* jc/fix-tree-walk (2009-10-22) 8 commits\n  (merged to 'next' on 2009-10-22 at 10c0c8f)\n + Revert failed attempt since 353c5ee\n + read-tree --debug-unpack\n  (merged to 'next' on 2009-10-11 at 0b058e2)\n + unpack-trees.c: look ahead in the index\n + unpack-trees.c: prepare for looking ahead in the index\n + Aggressive three-way merge: fix D/F case\n + traverse_trees(): handle D/F conflict case sanely\n + more D/F conflict tests\n + tests: move convenience regexp to match object names to test-lib.sh\n\nThis has some stupid bugs and reverted from 'next' until I can fix it, but\nthe \"temporarily\" turned out to be very loooong.  Sigh...\n\n* sr/gfi-options (2009-09-06) 6 commits.\n - fast-import: test the new option command\n - fast-import: add option command\n - fast-import: test the new feature command\n - fast-import: add feature command\n - fast-import: put marks reading in it's own function\n - fast-import: put option parsing code in separate functions\n\nSverre is working on a re-roll to address comments from Shawn.\n\n--------------------------------------------------\n[Cooking]\n\n* jc/mailinfo-remove-brackets (2009-07-15) 1 commit.\n  (merged to 'next' on 2009-11-25 at 09d498f)\n + mailinfo: -b option keeps [bracketed] strings that is not a [PATCH] marker\n\nJim Meyering sent a patch to do a subset of what this does; to allow\nkeeping '[SECURITY]' when the subject says '[SECURITY][PATCH]', you need\nto also teach \"am\" to pass the new -b option, but that is independent of\nwhat Jim showed the need in real-world, so I think this can go in as-is.\n\nPerhaps merge it to 'master' before 1.6.6-rc1?\n\n* jc/checkout-merge-base (2009-11-20) 2 commits\n - \"rebase --onto A...B\" replays history on the merge base between A and B\n - \"checkout A...B\" switches to the merge base between A and B\n\nI've been using the first one for a while myself but do not see many users\nwant this (yet); the new feature is not urgent anyway.\n\n* tr/reset-checkout-patch (2009-11-19) 1 commit.\n  (merged to 'next' on 2009-11-22 at b224950)\n + {checkout,reset} -p: make patch direction configurable\n\nI do not particularly like a configuration like this that changes the\nbehaviour of a command in a drastic way---it will make helping others much\nharder.\n\nPerhaps merge it to 'master' before 1.6.6-rc1?\n\n* jn/gitweb-blame (2009-11-24) 8 commits.\n  (merged to 'next' on 2009-11-25 at 0a5b649)\n + gitweb.js: fix padLeftStr() and its usage\n + gitweb.js: Harden setting blamed commit info in incremental blame\n + gitweb.js: fix null object exception in initials calculation\n + gitweb: Minify gitweb.js if JSMIN is defined\n + gitweb: Create links leading to 'blame_incremental' using JavaScript\n  (merged to 'next' on 2009-10-11 at 73c4a83)\n + gitweb: Colorize 'blame_incremental' view during processing\n + gitweb: Incremental blame (using JavaScript)\n + gitweb: Add optional \"time to generate page\" info in footer\n\nAjax-y blame, with further fixes.  As this does not seem to break existing\nfeatures, I am inclined to say that we push this out early, as a new\nfeature with known breakages, to give it wider audience.\n\n* em/commit-claim (2009-11-04) 1 commit\n  (merged to 'next' on 2009-11-23 at b5df6fd)\n + commit -c/-C/--amend: reset timestamp and authorship to committer with --reset-author\n\nI am not sure if the option name does a good job at explaining it to the\nend users, but I think the code and feature is solid.\n\nPerhaps merge it to 'master' before 1.6.6-rc1?\n\n* cc/bisect-doc (2009-11-08) 1 commit\n - Documentation: add \"Fighting regressions with git bisect\" article\n\nNobody seems to think this should go to Documentation/technical instead,\nso unless I hear otherwise, we will have it as-is in 'next' shortly.\n\nPerhaps merge it to 'master' before 1.6.6-rc1?\n\n* nd/sparse (2009-11-25) 20 commits.\n  (merged to 'next' on 2009-11-25 at 71380f5)\n + tests: rename duplicate t1009\n  (merged to 'next' on 2009-11-23 at f712a41)\n + sparse checkout: inhibit empty worktree\n + Add tests for sparse checkout\n + read-tree: add --no-sparse-checkout to disable sparse checkout support\n + unpack-trees(): ignore worktree check outside checkout area\n + unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index\n + unpack-trees(): \"enable\" sparse checkout and load $GIT_DIR/info/sparse-checkout\n + unpack-trees.c: generalize verify_* functions\n + unpack-trees(): add CE_WT_REMOVE to remove on worktree alone\n + Introduce \"sparse checkout\"\n + dir.c: export excluded_1() and add_excludes_from_file_1()\n + excluded_1(): support exclude files in index\n + unpack-trees(): carry skip-worktree bit over in merged_entry()\n + Read .gitignore from index if it is skip-worktree\n + Avoid writing to buffer in add_excludes_from_file_1()\n + Teach Git to respect skip-worktree bit (writing part)\n + Teach Git to respect skip-worktree bit (reading part)\n + Introduce \"skip-worktree\" bit in index, teach Git to get/set this bit\n + Add test-index-version\n + update-index: refactor mark_valid() in preparation for new options\n\n* jc/pretty-lf (2009-10-04) 1 commit.\n - Pretty-format: %[+-]x to tweak inter-item newlines\n\nPerhaps drop the \"%-x\" part and merge it to 'next' and to 'master' before\n1.6.6?\n\n--------------------------------------------------\n[For 1.7.0]\n\n* jk/1.7.0-status (2009-09-05) 5 commits.\n  (merged to 'next' on 2009-11-21 at 884bb56)\n + docs: note that status configuration affects only long format\n  (merged to 'next' on 2009-10-11 at 65c8513)\n + commit: support alternate status formats\n + status: add --porcelain output format\n + status: refactor format option parsing\n + status: refactor short-mode printing to its own function\n (this branch uses jc/1.7.0-status.)\n\nGives the --short output format to post 1.7.0 \"git commit --dry-run\" that\nis similar to that of post 1.7.0 \"git status\".\n\n* jc/1.7.0-status (2009-09-05) 4 commits.\n  (merged to 'next' on 2009-10-11 at 9558627)\n + status: typo fix in usage\n + git status: not \"commit --dry-run\" anymore\n + git stat -s: short status output\n + git stat: the beginning of \"status that is not a dry-run of commit\"\n (this branch is used by jk/1.7.0-status.)\n\nWith this, \"git status\" is no longer \"git commit --dry-run\".\n\n* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit.\n  (merged to 'next' on 2009-10-11 at 043acdf)\n + send-email: make --no-chain-reply-to the default\n\n* jc/1.7.0-diff-whitespace-only-status (2009-08-30) 4 commits.\n  (merged to 'next' on 2009-10-11 at 546c74d)\n + diff.c: fix typoes in comments\n + Make test case number unique\n + diff: Rename QUIET internal option to QUICK\n + diff: change semantics of \"ignore whitespace\" options\n\nThis changes exit code from \"git diff --ignore-whitespace\" and friends\nwhen there is no actual output.  It is a backward incompatible change, but\nwe could argue that it is a bugfix.\n\n* gb/1.7.0-diff-whitespace-only-outout (2009-11-19) 1 commit\n  (merged to 'next' on 2009-11-21 at 3375bf4)\n + No diff -b/-w output for all-whitespace changes\n\n* jc/1.7.0-push-safety (2009-02-09) 2 commits.\n  (merged to 'next' on 2009-10-11 at 81b8128)\n + Refuse deleting the current branch via push\n + Refuse updating the current branch in a non-bare repository via push\n\n--------------------------------------------------\n[I have been too busy to purge these]\n\n* jc/log-tz (2009-03-03) 1 commit.\n - Allow --date=local --date=other-format to work as expected\n\nMaybe some people care about this.  I dunno.\n\n* jc/1.7.0-no-commit-no-ff-2 (2009-10-22) 1 commit.\n . git-merge: forbid fast-forward and up-to-date when --no-commit is given\n\nThis makes \"git merge --no-commit\" fail when it results in fast-forward or\nup-to-date.  It appears nobody wants to have this, so I dropped it.\n\n* ne/rev-cache (2009-10-19) 7 commits.\n . support for commit grafts, slight change to general mechanism\n . support for path name caching in rev-cache\n . full integration of rev-cache into git, completed test suite\n . administrative functions for rev-cache, start of integration into git\n . support for non-commit object caching in rev-cache\n . basic revision cache system, no integration or features\n . man page and technical discussion for rev-cache\n\nThe author indicated that there is another round coming.  Does not seem to\npass the tests when merged to 'pu', so it has been ejected for now.\n\n* pb/gitweb-no-project-list (2009-11-06) 3 commits.\n . gitweb: Polish the content tags support\n . gitweb: Support for no project list on gitweb front page\n . gitweb: Refactor project list routines\n\nI picked these up but didn't queue as Warthog9's comments made certain\namount of sense to me.\n\n* ks/precompute-completion (2009-11-15) 4 commits.\n  (merged to 'next' on 2009-11-15 at 23cdb96)\n + Revert ks/precompute-completion series\n  (merged to 'next' on 2009-10-28 at cd5177f)\n + completion: ignore custom merge strategies when pre-generating\n  (merged to 'next' on 2009-10-22 at f46a28a)\n + bug: precomputed completion includes scripts sources\n  (merged to 'next' on 2009-10-14 at adf722a)\n + Speedup bash completion loading\n\nReverted out of 'next', to be replaced with jn/faster-completion-startup\ntopic.\n"},{"id":"128418","messageId":"fabb9a1e0911251715u661ce0aem79a4d700d552e105@mail.gmail.com","threadId":"21756","inReplyTo":"7v8wduksgq.fsf@alter.siamese.dyndns.org","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Sverre Rabbelier","fromEmail":"srabbelier@gmail.com","sentAt":"2009-11-26T01:15:58Z","receivedAt":"2009-11-26T01:15:58Z","isPatch":false,"sender":{"key":"srabbelier@gmail.com","avatar":"https://avatars.githubusercontent.com/u/3098?v=4"},"body":"Heya,\n\nOn Thu, Nov 26, 2009 at 02:03, Junio C Hamano <gitster@pobox.com> wrote:\n> * sr/vcs-helper (2009-11-18) 12 commits\n>  - Add Python support library for remote helpers\n>  - Basic build infrastructure for Python scripts\n>  - Allow helpers to report in \"list\" command that the ref is unchanged\n>  - Fix various memory leaks in transport-helper.c\n>  - Allow helper to map private ref names into normal names\n>  - Add support for \"import\" helper command\n>  - Allow specifying the remote helper in the url\n>  - Add a config option for remotes to specify a foreign vcs\n>  - Allow fetch to modify refs\n>  - Use a function to determine whether a remote is valid\n>  - Allow programs to not depend on remotes having urls\n>  - Fix memory leak in helper method for disconnect\n>\n> Replaced again, and looking good.  Perhaps Daniel has some comments?\n\nIndeed, Johan, Daniel, is the current version good for next?\n\n-- \nCheers,\n\nSverre Rabbelier\n"},{"id":"128442","messageId":"200911260837.15377.johan@herland.net","threadId":"21756","inReplyTo":"fabb9a1e0911251715u661ce0aem79a4d700d552e105@mail.gmail.com","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Johan Herland","fromEmail":"johan@herland.net","sentAt":"2009-11-26T07:37:15Z","receivedAt":"2009-11-26T07:37:15Z","isPatch":false,"sender":{"key":"johan@herland.net","avatar":"https://avatars.githubusercontent.com/u/547031?v=4"},"body":"On Thursday 26 November 2009, Sverre Rabbelier wrote:\n> Heya,\n> \n> On Thu, Nov 26, 2009 at 02:03, Junio C Hamano <gitster@pobox.com> wrote:\n> > * sr/vcs-helper (2009-11-18) 12 commits\n> >  - Add Python support library for remote helpers\n> >  - Basic build infrastructure for Python scripts\n> >  - Allow helpers to report in \"list\" command that the ref is unchanged\n> >  - Fix various memory leaks in transport-helper.c\n> >  - Allow helper to map private ref names into normal names\n> >  - Add support for \"import\" helper command\n> >  - Allow specifying the remote helper in the url\n> >  - Add a config option for remotes to specify a foreign vcs\n> >  - Allow fetch to modify refs\n> >  - Use a function to determine whether a remote is valid\n> >  - Allow programs to not depend on remotes having urls\n> >  - Fix memory leak in helper method for disconnect\n> >\n> > Replaced again, and looking good.  Perhaps Daniel has some comments?\n> \n> Indeed, Johan, Daniel, is the current version good for next?\n\nAs I replied to an earlier \"What's cooking\" email, it all looks good to me, \nbut I would really like Daniel's ACK on the transport layer parts.\n\n\n...Johan\n\n-- \nJohan Herland, <johan@herland.net>\nwww.herland.net\n"},{"id":"128532","messageId":"20091127065904.GE20844@coredump.intra.peff.net","threadId":"21756","inReplyTo":"7v8wduksgq.fsf@alter.siamese.dyndns.org","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2009-11-27T06:59:04Z","receivedAt":"2009-11-27T06:59:04Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Wed, Nov 25, 2009 at 05:03:33PM -0800, Junio C Hamano wrote:\n\n> * jc/grep-full-tree (2009-11-24) 1 commit.\n>  - grep: --full-tree\n> \n> We probably would want test, doc and a configuration variable to make it\n> default (or non-default) before we can merge it to 'master'.\n\nI can try to pick this up. But did we reach a decision on having a\nconfiguration variable?\n\n-Peff\n"},{"id":"128565","messageId":"alpine.DEB.1.00.0911271536100.4521@intel-tinevez-2-302","threadId":"21756","inReplyTo":"20091127144553.GA24366@progeny.tock","subject":"Breaking expectations in 1.7.0, was Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2009-11-27T14:38:31Z","receivedAt":"2009-11-27T14:38:31Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Fri, 27 Nov 2009, Jonathan Nieder wrote:\n\n> If --full-tree does become the default, I think it should be in 1.7.0,\n> when it is expected for some habits to break (with a configuration\n> variable for the transition, I guess).\n\nI recently read more and more about 1.7.0 being expected to break \nexpectations, and more and more expectations about more and more being \nexpected to be broken there.\n\nThis is a very slippery slope.  You have been warned.\n\nCiao,\nDscho\n"},{"id":"128564","messageId":"20091127144553.GA24366@progeny.tock","threadId":"21756","inReplyTo":"20091127065904.GE20844@coredump.intra.peff.net","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2009-11-27T14:45:53Z","receivedAt":"2009-11-27T14:45:53Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Jeff King wrote:\n> On Wed, Nov 25, 2009 at 05:03:33PM -0800, Junio C Hamano wrote:\n\n>> * jc/grep-full-tree (2009-11-24) 1 commit.\n>>  - grep: --full-tree\n>> \n>> We probably would want test, doc and a configuration variable to make it\n>> default (or non-default) before we can merge it to 'master'.\n>\n> I can try to pick this up. But did we reach a decision on having a\n> configuration variable?\n\nI am not sure, but I will say I would prefer not to have one.  Surely\nwe can come up with a UI that does not require searching through\ngit-config(1) to be made convenient.\n\nCouldn’t we just add the option (with test and documentation) first,\nto get some experience with how we end up using the two forms?  \n\nIf --full-tree does become the default, I think it should be in 1.7.0,\nwhen it is expected for some habits to break (with a configuration\nvariable for the transition, I guess).  This might be okay, since\nconstructions like 'git grep foo -- \"./*.h\"' should still work.\n"},{"id":"128569","messageId":"20091127153349.GA24647@progeny.tock","threadId":"21756","inReplyTo":"alpine.DEB.1.00.0911271536100.4521@intel-tinevez-2-302","subject":"Re: Breaking expectations in 1.7.0, was Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2009-11-27T15:33:49Z","receivedAt":"2009-11-27T15:33:49Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Johannes Schindelin wrote:\n\n> I recently read more and more about 1.7.0 being expected to break \n> expectations, and more and more expectations about more and more being \n> expected to be broken there.\n> \n> This is a very slippery slope.  You have been warned.\n\nI was trained by 1.6.0 and 1.5.0, I guess.  I think it would be hard to\nargue that 1.5.0 breaking compatibility in some places (the behavior of\n'git add', for example) was a bad thing.  I also liked the major 1.6.0\nchange, but I did have the benefit of being warned far in advance.\n\nOf course, the best break with compatibility is the one that does not\nbreak expectations.\n\nI’m on the fence about the default git grep behavior for that reason.\nI think --full-tree really would be a better default.  Every once in a\nwhile, I really do find myself wondering why git grep has not given me\nthe results I expected; it can take a moment to remember that this is\nbecause I am in a subdirectory.  But it is not clear it is worth the\nchange. \n\nAm I right to infer you are less conflicted about this, or was it just\na good opportunity to bring to mind that important principle?\n\nJonathan\n"},{"id":"128586","messageId":"7vvdgvn7ny.fsf@alter.siamese.dyndns.org","threadId":"21756","inReplyTo":"20091127144553.GA24366@progeny.tock","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2009-11-27T18:29:05Z","receivedAt":"2009-11-27T18:29:05Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jonathan Nieder <jrnieder@gmail.com> writes:\n\n>> I can try to pick this up. But did we reach a decision on having a\n>> configuration variable?\n>\n> I am not sure, but I will say I would prefer not to have one.  Surely\n> we can come up with a UI that does not require searching through\n> git-config(1) to be made convenient.\n>\n> Couldn’t we just add the option (with test and documentation) first,\n> to get some experience with how we end up using the two forms?  \n>\n> If --full-tree does become the default, I think it should be in 1.7.0,\n> when it is expected for some habits to break (with a configuration\n> variable for the transition, I guess).  This might be okay, since\n> constructions like 'git grep foo -- \"./*.h\"' should still work.\n\nThe flipping of \"grep\" default is too late for 1.7.0, as we have only\nstarted discussing it, and I want the release after 1.6.6 to be 1.7.0.\n\nI do not think we want nor need to have other things we have already\nprepared and have been advertising for 1.7.0 to wait one more cycle.\n"},{"id":"128583","messageId":"20091127183141.GA3544@progeny.tock","threadId":"21756","inReplyTo":"20091127153349.GA24647@progeny.tock","subject":"Re: Breaking expectations in 1.7.0, was Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2009-11-27T18:32:55Z","receivedAt":"2009-11-27T18:32:55Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Hi again,\n\nI wrote:\n\n> I was trained by 1.6.0 and 1.5.0, I guess.\n\nThis misses the point.  The big difference is that 1.7.0 is not that far\naway, so it is not the time to tack on world-shaking changes.\n\nSo please substitute 1.8.0 or 1.9.0 for 1.7.0 in my message to Peff.\n\nThe point doesn’t change, though, which is that I think it makes no\nsense to add a configuration variable for this before changing the\ndefault.\n\nThanks for the clarification,\nJonathan\n"},{"id":"128591","messageId":"20091127185838.GA3602@progeny.tock","threadId":"21756","inReplyTo":"7vvdgvn7ny.fsf@alter.siamese.dyndns.org","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2009-11-27T18:58:38Z","receivedAt":"2009-11-27T18:58:38Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Junio C Hamano wrote:\n\n> The flipping of \"grep\" default is too late for 1.7.0, as we have only\n> started discussing it, and I want the release after 1.6.6 to be 1.7.0.\n\nYes, I’m sorry I suggested it.  I think you had mentioned this plan\nbefore, but somehow it escaped my mind.\n"},{"id":"128594","messageId":"alpine.LNX.2.00.0911271417010.14365@iabervon.org","threadId":"21756","inReplyTo":"fabb9a1e0911251715u661ce0aem79a4d700d552e105@mail.gmail.com","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Daniel Barkalow","fromEmail":"barkalow@iabervon.org","sentAt":"2009-11-27T19:17:36Z","receivedAt":"2009-11-27T19:17:36Z","isPatch":false,"sender":{"key":"barkalow@iabervon.org","avatar":"https://avatars.githubusercontent.com/u/55364219?v=4"},"body":"On Thu, 26 Nov 2009, Sverre Rabbelier wrote:\n\n> Heya,\n> \n> On Thu, Nov 26, 2009 at 02:03, Junio C Hamano <gitster@pobox.com> wrote:\n> > * sr/vcs-helper (2009-11-18) 12 commits\n> >  - Add Python support library for remote helpers\n> >  - Basic build infrastructure for Python scripts\n> >  - Allow helpers to report in \"list\" command that the ref is unchanged\n> >  - Fix various memory leaks in transport-helper.c\n> >  - Allow helper to map private ref names into normal names\n> >  - Add support for \"import\" helper command\n> >  - Allow specifying the remote helper in the url\n> >  - Add a config option for remotes to specify a foreign vcs\n> >  - Allow fetch to modify refs\n> >  - Use a function to determine whether a remote is valid\n> >  - Allow programs to not depend on remotes having urls\n> >  - Fix memory leak in helper method for disconnect\n> >\n> > Replaced again, and looking good.  Perhaps Daniel has some comments?\n> \n> Indeed, Johan, Daniel, is the current version good for next?\n\nLooks good to me.\n\n\t-Daniel\n*This .sig left intentionally blank*"},{"id":"128611","messageId":"fabb9a1e0911271645i51fa3c7an6b416892a7c1592e@mail.gmail.com","threadId":"21756","inReplyTo":"alpine.LNX.2.00.0911271417010.14365@iabervon.org","subject":"Re: What's cooking in git.git (Nov 2009, #06; Wed, 25)","fromName":"Sverre Rabbelier","fromEmail":"srabbelier@gmail.com","sentAt":"2009-11-28T00:45:25Z","receivedAt":"2009-11-28T00:45:25Z","isPatch":false,"sender":{"key":"srabbelier@gmail.com","avatar":"https://avatars.githubusercontent.com/u/3098?v=4"},"body":"Heya,\n\nOn Fri, Nov 27, 2009 at 20:17, Daniel Barkalow <barkalow@iabervon.org> wrote:\n> On Thu, 26 Nov 2009, Sverre Rabbelier wrote:\n>> On Thu, Nov 26, 2009 at 02:03, Junio C Hamano <gitster@pobox.com> wrote:\n>> > * sr/vcs-helper (2009-11-18) 12 commits\n>> > Replaced again, and looking good.  Perhaps Daniel has some comments?\n>>\n>> Indeed, Johan, Daniel, is the current version good for next?\n>\n> Looks good to me.\n\nAwesome, I'd say this is good for next then.\n\n-- \nCheers,\n\nSverre Rabbelier\n"}]}