From bead1ece055e0b5561b3ff59f575b4ca6c0e2fc2 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 12 Aug 2009 19:13:52 -0700 Subject: [PATCH] What's cooking (2009/08 #02) --- whats-cooking.txt | 321 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 206 insertions(+), 115 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index abfcc4cae8..db051a1ffa 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 (Aug 2009, #01; Wed, 05) -X-master-at: 3f55e4107f7906134df029f9a5c44864f9258110 -X-next-at: 2981fa5b8f20e8ff086aceb252c0e693fa2d0c75 +Subject: What's cooking in git.git (Aug 2009, #02; Wed, 12) +X-master-at: 6ffd781226f04629eff63a684b47ad7555143312 +X-next-at: e5cd0abadfa20eaf7a76784ad5802115c75eff2f -What's cooking in git.git (Aug 2009, #01; Wed, 05) +What's cooking in git.git (Aug 2009, #02; Wed, 12) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -11,9 +11,6 @@ only in 'pu' while commits prefixed with '+' are in 'next'. The ones marked with '.' do not appear in any of the branches, but I am still holding onto them. -In preparation for rewinding 'next' after a major release, one topic was -reverted and kicked back to 'pu' to give it a fresh start. - After the 1.6.5 cycle, the next release will be 1.7.0, and we will push out the planned "push safety" change. 1.7.0 would be a good time to introduce "justifiable" changes that are not strictly backward compatible. @@ -23,94 +20,99 @@ During 1.6.5 cycle, 'next' will hold topics meant for 1.6.5 and 1.7.0. ---------------------------------------------------------------- [New Topics] -* gb/apply-ignore-whitespace (Tue Aug 4 13:16:49 2009 +0200) 1 commit - - git apply: option to ignore whitespace differences - -* db/vcs-helper (Wed Aug 5 01:02:25 2009 -0400) 13 commits - - Changes for new vcs-helper series - - Add simple test cases of git-vcs-cvs functionality - - First draft of CVS importer using the foreign-scm machinery - - Allow helpers to request marks for fast-import - - Allow helpers to report in "list" command that the ref is - unchanged - - Add support for "import" helper command - - Add a config option for remotes to specify a foreign vcs - - Allow programs to not depend on remotes having urls - - Allow fetch to modify refs - - Use a function to determine whether a remote is valid - - git-http-fetch: not a builtin - - Use an external program to implement fetching with curl - - Add support for external programs for handling native fetches - -This consolidates various previous rounds from Daniel and Johan. +* ld/p4 (Thu Jul 30 00:13:46 2009 +0100) 1 commit + - git-p4: stream from perforce to speed up clones + +Waiting for Ack/Nack from stakeholders. Probably I should merge this to +'next' soon, keep it there for a week and see if anybody screams, aka +"Nack now or forever hold your peace" ;-). + +* mr/gitweb-xz (Thu Aug 6 10:28:25 2009 -0400) 3 commits + - gitweb: add support for XZ compressed snapshots + - gitweb: update INSTALL regarding specific snapshot settings + - gitweb: support to globally disable a snapshot format + +This should be safe as long as it does not silently enable itself for +folks who merely updated gitweb to this version without explicitly asking +for the new format (but I do not remember if that is what the patch does). + +* jh/cvs-helper (Wed Aug 12 02:13:51 2009 +0200) 4 commits + - Add simple selftests of git-remote-cvs functionality + - Third draft of CVS remote helper program + - Add Python support library for CVS remote helper + - Basic build infrastructure for Python scripts + +Builds on db/vcs-helper. The last round failed its own selftest for me, +but this one seems to be Ok. Documentation/git-remote-cvs.txt needs to be +fixed to build, though. + +* bc/maint-am-email (Thu Aug 6 20:08:13 2009 -0500) 2 commits + + git-am: print fair error message when format detection fails + + am: allow individual e-mail files as input + +It seems that the "not mbox but a single piece of e-mail" format was +something many people relied on. I'm cooking this in 'next', and +hopefully it can graduate both to 'master' and 'maint'. + +* js/maint-cover-letter-non-ascii (Mon Aug 10 18:22:22 2009 +0200) 2 commits + + Correctly mark cover letters' encodings if they are not pure ASCII + + Expose the has_non_ascii() function + +* jc/verify-pack-stat (Fri Aug 7 15:45:30 2009 -0700) 2 commits + + verify-pack --stat-only: show histogram without verifying + + Merge branch 'maint' into jc/verify-pack-stat + +* lt/block-sha1 (Wed Aug 12 15:47:55 2009 -0400) 15 commits + + block-sha1: support for architectures with memory alignment + restrictions + + block-sha1: split the different "hacks" to be individually + selected + + block-sha1: move code around + + block-sha1: improve code on large-register-set machines + + block-sha1: improved SHA1 hashing + + block-sha1: perform register rotation using cpp + + block-sha1: get rid of redundant 'lenW' context + + block-sha1: Use '(B&C)+(D&(B^C))' instead of '(B&C)|(D&(B|C))' in + round 3 + + block-sha1: macroize the rounds a bit further + + block-sha1: re-use the temporary array as we calculate the SHA1 + + block-sha1: make the 'ntohl()' part of the first SHA1 loop + + block-sha1: minor fixups + + block-sha1: try to use rol/ror appropriately + + block-sha1: undo ctx->size change + + Add new optimized C 'block-sha1' routines + +Linus's "written in C, faster than handcrafted asm" SHA-1 implementation +with clean-up and ARM support from Nico. + +* nd/sparse (Tue Aug 11 22:44:06 2009 +0700) 8 commits + . --sparse for porcelains + . Support sparse checkout in unpack_trees() and read-tree + . unpack-trees.c: generalize verify_* functions + . dir.c: export excluded_1() and add_excludes_from_file_1() + . excluded_1(): support exclude "directories" in index + . Read .gitignore from index if it is assume-unchanged + . Avoid writing to buffer in add_excludes_from_file_1() + . Prevent diff machinery from examining assume-unchanged entries on + worktree + +Privately applied but not yet queued to 'pu', expecting a minor reroll +near the tip. + +* jk/maint-merge-msg-fix (Sun Aug 9 06:02:51 2009 -0400) 3 commits + + merge: indicate remote tracking branches in merge message + + merge: fix incorrect merge message for ambiguous tag/branch + + add tests for merge message headings -* je/send-email-no-subject (Wed Aug 5 18:49:54 2009 +0200) 1 commit - - send-email: confirm on empty mail subjects +---------------------------------------------------------------- +[Graduated to "master"] * zf/maint-gitweb-acname (Sun Aug 2 09:42:24 2009 +0200) 1 commit - gitweb: parse_commit_text encoding fix -* jc/maint-clean-nested-dir-safety (Tue Jun 30 15:33:45 2009 -0700) 1 commit - - clean: require double -f options to nuke nested git repository and - work tree - -* jc/shortstatus (Tue Aug 4 23:55:22 2009 -0700) 5 commits - - shortstatus: a new command - - status: show worktree status of conflicted paths separately - - wt-status.c: rework the way changes to the index and work tree are - summarized - - diff-index: keep the original index intact - - diff-index: report unmerged new entries - -* bc/mailsplit-cr-at-eol (Tue Aug 4 22:31:59 2009 -0500) 4 commits - - Allow mailsplit (and hence git-am) to handle mails with CRLF line- - endings - - builtin-mailsplit.c: remove read_line_with_nul() since it is no - longer used - - builtin-mailinfo,builtin-mailsplit: use strbufs - - strbuf: add new function strbuf_getwholeline() - * jc/maint-merge-recursive-fix (Thu Jul 30 17:38:15 2009 -0700) 1 commit - merge-recursive: don't segfault while handling rename clashes ----------------------------------------------------------------- -[Graduated to "master"] - -* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit - + Shift object enumeration out of upload-pack - -* sb/maint-pull-rebase (Sun Jul 19 09:45:16 2009 +0200) 2 commits - + pull: support rebased upstream + fetch + pull --rebase - + t5520-pull: Test for rebased upstream + fetch + pull --rebase - -* sb/read-tree (Thu Jun 25 22:14:10 2009 -0700) 2 commits - + read-tree: migrate to parse-options - + read-tree: convert unhelpful usage()'s to helpful die()'s - -* sb/parse-options (Tue Jul 7 22:15:41 2009 -0700) 4 commits - + prune-packed: migrate to parse-options - + verify-pack: migrate to parse-options - + verify-tag: migrate to parse-options - + write-tree: migrate to parse-options - -* ns/init-mkdir (Sat Jul 25 06:59:28 2009 +0900) 1 commit - + git init: optionally allow a directory argument - -Straightforward usability change. - -* mk/init-db-parse-options (Sun Jul 12 12:24:32 2009 +0200) 1 commit - + init-db: migrate to parse-options - -* jk/maint-show-tag (Sat Jul 18 06:14:37 2009 -0400) 2 commits - + show: add space between multiple items - + show: suppress extra newline when showing annotated tag - -* jc/apply-epoch-patch (Fri Jul 10 18:38:08 2009 -0700) 1 commit - + apply: notice creation/removal patches produced by GNU diff - ----------------------------------------------------------------- -[In 'next'] - * js/run-command-updates (Tue Aug 4 11:28:40 2009 +0200) 7 commits + run-command.c: squelch a "use before assignment" warning + receive-pack: remove unnecessary run_status report @@ -122,12 +124,28 @@ Straightforward usability change. + run_command: return exit code as positive value + MinGW: simplify waitpid() emulation macros -Will merge soon. - * mk/grep-max-depth (Wed Jul 22 19:52:15 2009 +0200) 1 commit + grep: Add --max-depth option. -Will merge soon. +* jp/symlink-dirs (Wed Jul 29 20:22:25 2009 -0700) 3 commits + + git-checkout: be careful about untracked symlinks + + lstat_cache: guard against full match of length of 'name' + parameter + + Demonstrate bugs when a directory is replaced with a symlink + +---------------------------------------------------------------- +[In 'next'] + +* bc/mailsplit-cr-at-eol (Tue Aug 4 22:31:59 2009 -0500) 4 commits + + Allow mailsplit (and hence git-am) to handle mails with CRLF line- + endings + + builtin-mailsplit.c: remove read_line_with_nul() since it is no + longer used + + builtin-mailinfo,builtin-mailsplit: use strbufs + + strbuf: add new function strbuf_getwholeline() + +* gb/apply-ignore-whitespace (Tue Aug 4 13:16:49 2009 +0200) 1 commit + + git apply: option to ignore whitespace differences * cc/replace (Wed May 27 07:14:09 2009 +0200) 14 commits + t6050: check pushing something based on a replaced commit @@ -146,20 +164,28 @@ Will merge soon. "refs/replace/" + refs: add a "for_each_replace_ref" function -Does not seem to hurt normal operation without "replace". The basic idea -should be easier and safer to use than the graft mechanism. I haven't -tried the replacement myself, though. +* jc/1.7.0-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 -* jp/symlink-dirs (Wed Jul 29 20:22:25 2009 -0700) 3 commits - + git-checkout: be careful about untracked symlinks - + lstat_cache: guard against full match of length of 'name' - parameter - + Demonstrate bugs when a directory is replaced with a symlink +This changes exit code from "git diff --ignore-whitespace" and friends +when there is no actual output. It is a backward incompatible change, but +we could argue that it is a bugfix. -James's test scripts to expose corner case bugs in the merge and branch -switching machinery, and a few fix-ups. +* jc/1.7.0-push-safety (Mon Feb 9 00:19:46 2009 -0800) 2 commits + + Refuse deleting the current branch via push + + Refuse updating the current branch in a non-bare repository via + push -* jn/gitweb-blame (Sat Jul 25 00:44:10 2009 +0200) 10 commits +---------------------------------------------------------------- +[In 'pu'] + +* jn/gitweb-blame (Thu Aug 6 19:11:52 2009 +0200) 14 commits + - gitweb: Create links leading to 'blame_incremental' using + JavaScript + - gitweb: Incremental blame (proof of concept) + - gitweb: Add optional "time to generate page" info in footer + + Revert the four topmost commits from jn/gitweb-blame topic + gitweb: Create links leading to 'blame_incremental' using JavaScript + gitweb: Incremental blame (proof of concept) @@ -172,23 +198,63 @@ switching machinery, and a few fix-ups. + gitweb: Mark boundary commits in 'blame' view + gitweb: Make .error style generic -Will merge soon. +I haven't picked up Jakub's replacement to the second one from the tip. +We probably should merge up to "Use light/dark" (aef3768) to 'master' and +start the rest over. -* jc/1.7.0-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 +* jc/maint-clean-nested-dir-safety (Tue Jun 30 15:33:45 2009 -0700) 1 commit + + clean: require double -f options to nuke nested git repository and + work tree -This changes exit code from "git diff --ignore-whitespace" and friends -when there is no actual output. It is a backward incompatible change, but -we could argue that it is a bugfix. +This probably should go in 'master' soonish. + +* jc/shortstatus (Tue Aug 4 23:55:22 2009 -0700) 12 commits + - git stat -s: short status output + - git stat: pathspec limits, unlike traditional "git status" + - git stat: the beginning + + wt-status: collect untracked files in a separate "collect" phase + + Make git_status_config() file scope static to builtin-commit.c + + wt-status: move wt_status_colors[] into wt_status structure + + wt-status: move many global settings to wt_status structure + + commit: --dry-run + + status: show worktree status of conflicted paths separately + + wt-status.c: rework the way changes to the index and work tree are + summarized + + diff-index: keep the original index intact + + diff-index: report unmerged new entries -* jc/1.7.0-push-safety (Mon Feb 9 00:19:46 2009 -0800) 2 commits - + Refuse deleting the current branch via push - + Refuse updating the current branch in a non-bare repository via - push +Slowly progressing. I've addressed issues pointed out by Jeff in his +review, and hopefully the whole thing would be ready to go. ----------------------------------------------------------------- -[In 'pu'] +* db/vcs-helper (Sun Aug 9 15:28:28 2009 -0400) 17 commits + - Allow helpers to request marks for fast-import + - Allow helpers to report in "list" command that the ref is + unchanged + - Add support for "import" helper command + - transport-helper_init(): fix a memory leak in error path + - Add a config option for remotes to specify a foreign vcs + - Allow programs to not depend on remotes having urls + - Allow fetch to modify refs + - Use a function to determine whether a remote is valid + - Use a clearer style to issue commands to remote helpers + + Makefile: install hardlinks for git-remote- supported by + libcurl if possible + + Makefile: do not link three copies of git-remote-* programs + + Makefile: git-http-fetch does not need expat + + http-fetch: Fix Makefile dependancies + + Add transport native helper executables to .gitignore + + git-http-fetch: not a builtin + + Use an external program to implement fetching with curl + + Add support for external programs for handling native fetches + +This consolidates various previous rounds from Daniel and Johan. It seems +that the use of colon ':' before vcs helper name needs to be corrected +before this series can go further. + +* je/send-email-no-subject (Wed Aug 5 18:49:54 2009 +0200) 1 commit + - send-email: confirm on empty mail subjects + +This seems to break t9001. Near the tip of 'pu' I have a iffy workaround. * jh/notes (Wed Jul 29 04:25:26 2009 +0200) 8 commits - t3302-notes-index-expensive: Speed up create_repo() @@ -200,12 +266,20 @@ we could argue that it is a bugfix. - Add a script to edit/inspect notes - Introduce commit notes -* cc/sequencer-rebase-i (Fri Jun 26 23:08:46 2009 +0200) 4 commits +* cc/sequencer-rebase-i (Wed Aug 5 22:53:00 2009 +0200) 8 commits + - rebase -i: use "git sequencer--helper --reset-hard" + - sequencer: add "--reset-hard" option to "git sequencer--helper" + - sequencer: add comments about reset_almost_hard() + - sequencer: add "reset_almost_hard()" and related functions - rebase -i: use "git sequencer--helper --make-patch" - sequencer: free memory used in "make_patch" function - sequencer: add "make_patch" function to save a patch - sequencer: add "builtin-sequencer--helper.c" +More sequencer updates. I didn't look at the latest round that had a +handful "oops, fix that earlier botch" patches, expecting a cleaner +reroll. + * jc/mailinfo-remove-brackets (Wed Jul 15 15:31:12 2009 -0700) 1 commit - mailinfo: -b option keeps [bracketed] strings that is not a [PATCH] marker @@ -220,9 +294,26 @@ we could argue that it is a bugfix. - builtin-add: refactor the meat of interactive_add() - git-apply--interactive: Refactor patch mode code +Progress? + * js/stash-dwim (Mon Jul 27 20:37:10 2009 +0200) 1 commit - Make 'git stash -k' a short form for 'git stash save --keep-index' +This should be merged to 'next' soonish, but I keep forgetting. + +* pb/tracking (Thu Jul 16 16:26:15 2009 -0500) 7 commits + . branch.c: if remote is not config'd for branch, don't try delete + push config + . branch, checkout: introduce autosetuppush + . move deletion of merge configuration to branch.c + . remote: add per-remote autosetupmerge and autosetuprebase + configuration + . introduce a struct tracking_config + . branch: install_branch_config and struct tracking refactoring + . config: allow false and true values for branch.autosetuprebase + +Has been ejected from 'pu' for some time, expecting a reroll. + * jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit - Allow --date=local --date=other-format to work as expected -- 2.11.4.GIT