To: git@vger.kernel.org
-Subject: What's cooking in git.git (Feb 2012, #08; Wed, 22)
-X-master-at: f1f1b96e99fa064ed9f0da263d4b4eb0407b3ceb
-X-next-at: b4472eeb9efa715ecf088c254868d80ebfa252fd
+Subject: What's cooking in git.git (Feb 2012, #09; Sun, 26)
+X-master-at: 3724cc7c58df709cffbf6cc0701d1ca6fa5a5ba2
+X-next-at: 62a6ddf54b0fda0c3cc0e609af05c6ce3503f51c
-What's cooking in git.git (Feb 2012, #08; Wed, 22)
+What's cooking in git.git (Feb 2012, #09; Sun, 26)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with '-' are
--------------------------------------------------
[New Topics]
+* jc/am-3-nonstandard-popt (2012-02-26) 2 commits
+ (merged to 'next' on 2012-02-26 at 62a6ddf)
+ + test: "am -3" can accept non-standard -p<num>
+ (merged to 'next' on 2012-02-26 at 1363bd6)
+ + am -3: allow nonstandard -p<num> option
+
+The code to synthesize the fake ancestor tree used by 3-way merge
+fallback in "git am" was not prepared to read a patch created with
+a non-standard -p<num> value.
+
+* cb/fsck-squelch-dangling (2012-02-26) 1 commit
+ - fsck: do not print dangling objects by default
+
+Introduces "fsck --dangling" and removes the output for dangling objects
+from the default output.
+
+I personally do not think it is worth risking backward compatibility in
+the way this patch implements the squelching of the output. An approach
+to add --no-dangling option without changing the default would be OK,
+though.
+
+* rf/no-no-no-parseopt (2012-02-26) 3 commits
+ - parse-options: remove PARSE_OPT_NEGHELP
+ - parse-options: allow positivation of options starting, with no-
+ - test-parse-options: convert to OPT_BOOL()
+
+Options that use PARSE_OPT_NEGHELP needed to word their help text in
+a strange way.
+
+--------------------------------------------------
+[Graduated to "master"]
+
+* fc/push-prune (2012-02-22) 4 commits
+ (merged to 'next' on 2012-02-23 at 8044055)
+ + push: add '--prune' option
+ + remote: refactor code into alloc_delete_ref()
+ + remote: reorganize check_pattern_match()
+ + remote: use a local variable in match_push_refs()
+
+"git push" learned the "--prune" option, similar to "git fetch".
+
* jb/filter-ignore-sigpipe (2012-02-21) 1 commit
- - Ignore SIGPIPE when running a filter driver
+ (merged to 'next' on 2012-02-23 at 605dd39)
+ + Ignore SIGPIPE when running a filter driver
-Looked sane.
-Will merge to "next".
+When the filter driver exits before reading the content before the main
+git process writes the contents to be filtered to the pipe to it, the
+latter could be killed with SIGPIPE instead of ignoring such an event as
+an error.
-* jc/pickaxe-ignore-case (2012-02-21) 1 commit
- - pickaxe: allow -i to search in patch case-insensitively
+* jc/add-refresh-unmerged (2012-02-17) 1 commit
+ (merged to 'next' on 2012-02-21 at 09f8721)
+ + refresh_index: do not show unmerged path that is outside pathspec
+
+"git add --refresh <pathspec>" warned about unmerged paths outside the
+given pathspec.
* jc/doc-merge-options (2012-02-22) 1 commit
- - Documentation/merge-options.txt: group "ff" related options together
+ (merged to 'next' on 2012-02-23 at dcf1d13)
+ + Documentation/merge-options.txt: group "ff" related options together
Documentation for "git merge" had "--ff-only" far away from other options
related to the handling of fast-forward merges.
-* ph/cherry-pick-advice-refinement (2012-02-22) 1 commit
- - cherry-pick: No advice to commit if --no-commit
+* jk/config-include (2012-02-17) 10 commits
+ (merged to 'next' on 2012-02-20 at 7b150b7)
+ + config: add include directive
+ + config: eliminate config_exclusive_filename
+ + config: stop using config_exclusive_filename
+ + config: provide a version of git_config with more options
+ + config: teach git_config_rename_section a file argument
+ + config: teach git_config_set_multivar_in_file a default path
+ + config: copy the return value of prefix_filename
+ + t1300: add missing &&-chaining
+ + docs/api-config: minor clarifications
+ + docs: add a basic description of the config API
-* pj/completion-remote-set-url-branches (2012-02-22) 2 commits
- - completion: normalize increment/decrement style
- - completion: remote set-* <name> and <branch>
+An assignment to the include.path pseudo-variable causes the named file
+to be included in-place when Git looks up configuration variables.
-* th/git-diffall (2012-02-22) 1 commit
- - contrib: added git-diffall
+* jk/maint-avoid-streaming-filtered-contents (2012-02-24) 3 commits
+ (merged to 'next' on 2012-02-26 at 25e014c)
+ + do not stream large files to pack when filters are in use
+ + teach dry-run convert_to_git not to require a src buffer
+ + teach convert_to_git a "dry run" mode
+
+The bulk check-in codepath streamed contents that needs smudge/clean
+filters without running them, instead of punting and delegating to the
+codepath to run filters after slurping everything to core.
+
+* jn/gitweb-search-optim (2012-02-23) 3 commits
+ (merged to 'next' on 2012-02-23 at 9f9125f)
+ + gitweb: Faster project search
+ + gitweb: Option for filling only specified info in fill_project_list_info
+ + gitweb: Refactor checking if part of project info need filling
+ (this branch is used by jn/gitweb-hilite-regions.)
---------------------------------------------------
-[Graduated to "master"]
+"gitweb" learns to read various pieces of information for the repositories
+lazily, instead of reading everything that could be needed (including the
+ones that are not necessary for a specific task).
+
+* js/configure-libintl (2012-02-20) 1 commit
+ (merged to 'next' on 2012-02-21 at 79d7ccc)
+ + configure: don't use -lintl when there is no gettext support
+
+Build fix for autoconf, meant for 'maint' track.
+
+* ld/git-p4-expanded-keywords (2012-02-14) 1 commit
+ (merged to 'next' on 2012-02-16 at a9004c5)
+ + git-p4: add initial support for RCS keywords
+
+Teach git-p4 to unexpand $RCS$-like keywords that are embedded in
+tracked contents in order to reduce unnecessary merge conflicts.
+
+Replaced with the rerolled patch.
+
+* pj/remote-set-branches-usage-fix (2012-02-19) 1 commit
+ (merged to 'next' on 2012-02-21 at cb71d0e)
+ + remote: fix set-branches usage and documentation
+
+Documentation fix.
+
+* sp/smart-http-failure-to-push (2012-02-23) 1 commit
+ (merged to 'next' on 2012-02-23 at fe0b2aa)
+ + disconnect from remote helpers more gently
+
+When a remote helper exits before reading the blank line from the main git
+process to signal the end of commands, the latter could be killed with
+SIGPIPE. Instead we should ignore such event as a non-error.
-* jk/diff-highlight (2012-02-13) 5 commits
- (merged to 'next' on 2012-02-20 at ba040ae)
- + diff-highlight: document some non-optimal cases
- + diff-highlight: match multi-line hunks
- + diff-highlight: refactor to prepare for multi-line hunks
- + diff-highlight: don't highlight whole lines
- + diff-highlight: make perl strict and warnings fatal
+* tr/maint-bundle-long-subject (2012-02-23) 4 commits
+ (merged to 'next' on 2012-02-23 at b2c1605)
+ + t5704: match tests to modern style
+ + strbuf: improve strbuf_get*line documentation
+ + bundle: use a strbuf to scan the log for boundary commits
+ + bundle: put strbuf_readline_fd in strbuf.c with adjustments
-Updates diff-highlight (in contrib/).
+"git bundle create" produced a corrupt bundle file upon seeing commits
+with excessively long subject line.
-* jn/gitweb-unborn-head (2012-02-17) 1 commit
- (merged to 'next' on 2012-02-20 at 80e3ff2)
- + gitweb: Fix "heads" view when there is no current branch
+* tr/perftest (2012-02-17) 3 commits
+ (merged to 'next' on 2012-02-20 at 4c75ba9)
+ + Add a performance test for git-grep
+ + Introduce a performance testing framework
+ + Move the user-facing test library to test-lib-functions.sh
-"gitweb" compared non-existent value of HEAD with the names of commit
-objects at tips of branches, triggering runtime warnings.
+The beginning of a new performance benchmark framework.
--------------------------------------------------
[Stalled]
+* jc/diff-ignore-case (2012-02-19) 6 commits
+ - diff -i
+ - diff: --ignore-case
+ - xdiff: introduce XDF_IGNORE_CASE
+ - xdiff: introduce XDF_INEXACT_MATCH
+ - xdiff: PATIENCE/HISTOGRAM are not independent option bits
+ - xdiff: remove XDL_PATCH_* macros
+
+"git diff" learns "--ignore-case" option.
+
+Commits near the tip need to be better titled.
+
+* jc/pickaxe-ignore-case (2012-02-21) 1 commit
+ - pickaxe: allow -i to search in patch case-insensitively
+
+The original "-S" pickaxe probably needs to be taught about the option.
+
* jl/maint-submodule-relative (2012-02-09) 2 commits
- submodules: always use a relative path from gitdir to work tree
- submodules: always use a relative path to gitdir
The bottom one was not clearly explained and needs a reroll.
-* zj/diff-stat-dyncol (2012-02-15) 6 commits
- . diff --stat: use less columns for change counts
- - (squash to the previous -- replace the last line of the log with the following)
- - diff --stat: use the full terminal width
- - (squash to the previous -- replace the log message with this)
- - diff --stat: tests for long filenames and big change counts
- - Merge branches zj/decimal-width and zj/term-columns
-
-I am beginning to think that the last one should wait until the dust from
-the earlier part settles.
-
* jc/advise-push-default (2011-12-18) 1 commit
- push: hint to use push.default=upstream when appropriate
Ævar. The second one needs more work, both in perl/Git.pm and prompt.c, to
give precedence to tty over SSH_ASKPASS when terminal is available.
-* jc/split-blob (2012-01-24) 6 commits
+* jc/split-blob (2012-02-23) 7 commits
+ - fixup?
- chunked-object: streaming checkout
- chunked-object: fallback checkout codepaths
- bulk-checkin: support chunked-object encoding
people an easy target to shoot for, they may be encouraged to help
out. The plan is not working :-(.
-* nd/columns (2012-02-08) 15 commits
- . column: Fix some compiler and sparse warnings
- . column: add a corner-case test to t3200
- . columns: minimum coding style fixes
- . tag: add --column
- . column: support piping stdout to external git-column process
- . status: add --column
- . branch: add --column
- . help: reuse print_columns() for help -a
- . column: add column.ui for default column output settings
- . column: support columns with different widths
- . column: add columnar layout
- . Stop starting pager recursively
- . Add git-column and column mode parsing
- . column: add API to print items in columns
- . Save terminal width before setting up pager
-
-Expecting a reroll on top of zj/term-columns topic.
-
--------------------------------------------------
[Cooking]
-* fc/push-prune (2012-02-22) 4 commits
- - push: add '--prune' option
- - remote: refactor code into alloc_delete_ref()
- - remote: reorganize check_pattern_match()
- - remote: use a local variable in match_push_refs()
+* zj/diff-stat-dyncol (2012-02-24) 10 commits
+ - diff --stat: add config option to limit graph width
+ - diff --stat: enable limiting of the graph part
+ - diff --stat: add a test for output with COLUMNS=40
+ - diff --stat: use a maximum of 5/8 for the filename part
+ - merge --stat: use the full terminal width
+ - log --stat: use the full terminal width
+ - show --stat: use the full terminal width
+ - diff --stat: use the full terminal width
+ - diff --stat: tests for long filenames and big change counts
+ - Merge branches zj/decimal-width, zj/term-columns and jc/diff-stat-scaler
-Rerolled and looked sane.
-Will merge to "next".
+Rerolled.
-* jc/add-refresh-unmerged (2012-02-17) 1 commit
- (merged to 'next' on 2012-02-21 at 09f8721)
- + refresh_index: do not show unmerged path that is outside pathspec
+* nd/columns (2012-02-26) 11 commits
+ - tag: add --column
+ - column: support piping stdout to external git-column process
+ - status: add --column
+ - branch: add --column
+ - help: reuse print_columns() for help -a
+ - column: add column.ui for default column output settings
+ - column: support columns with different widths
+ - column: add columnar layout
+ - Stop starting pager recursively
+ - Add git-column and column mode parsing
+ - column: add API to print items in columns
-"git add --refresh <pathspec>" warned about unmerged paths outside the
-given pathspec.
+Rerolled.
-* jc/diff-ignore-case (2012-02-19) 6 commits
- - diff -i
- - diff: --ignore-case
- - xdiff: introduce XDF_IGNORE_CASE
- - xdiff: introduce XDF_INEXACT_MATCH
- - xdiff: PATIENCE/HISTOGRAM are not independent option bits
- - xdiff: remove XDL_PATCH_* macros
-
-"git diff" learns "--ignore-case" option.
-
-* jn/gitweb-hilite-regions (2012-02-19) 5 commits
- - gitweb: Use esc_html_match_hl() in 'grep' search
- - gitweb: Highlight matched part of shortened project description
- - gitweb: Highlight matched part of project description when searching projects
- - gitweb: Highlight matched part of project name when searching projects
- - gitweb: Introduce esc_html_hl_regions
- (this branch uses jn/gitweb-search-optim.)
+* ph/cherry-pick-advice-refinement (2012-02-22) 1 commit
+ (merged to 'next' on 2012-02-26 at 1c930c3)
+ + cherry-pick: No advice to commit if --no-commit
-Not reviewed and do not know what this is about yet ;-).
+The advice given by a conflicted "cherry-pick --no-commit" told the user
+to make a commit after resolving conflicts.
-* jn/gitweb-search-optim (2012-02-19) 3 commits
- - gitweb: Faster project search
- - gitweb: Option for filling only specified info in fill_project_list_info
- - gitweb: Refactor checking if part of project info need filling
- (this branch is used by jn/gitweb-hilite-regions.)
+Will merge to "master".
-The API introduced in the second step still has yucky design, but at least
-it is more clear than the previous rounds what this is trying to do.
+* pj/completion-remote-set-url-branches (2012-02-22) 2 commits
+ (merged to 'next' on 2012-02-26 at 0062008)
+ + completion: normalize increment/decrement style
+ + completion: remote set-* <name> and <branch>
-* js/configure-libintl (2012-02-20) 1 commit
- (merged to 'next' on 2012-02-21 at 79d7ccc)
- + configure: don't use -lintl when there is no gettext support
+Will merge to "master".
-Build fix for autoconf, meant for 'maint' track.
+* th/git-diffall (2012-02-24) 1 commit
+ - contrib: added git-diffall
-* pj/remote-set-branches-usage-fix (2012-02-19) 1 commit
- (merged to 'next' on 2012-02-21 at cb71d0e)
- + remote: fix set-branches usage and documentation
+* jn/gitweb-hilite-regions (2012-02-26) 4 commits
+ - gitweb: Highlight matched part of shortened project description
+ - gitweb: Highlight matched part of project description when searching projects
+ - gitweb: Highlight matched part of project name when searching projects
+ - gitweb: Introduce esc_html_match_hl and esc_html_hl_regions
-Documentation fix.
-
-* tr/perftest (2012-02-17) 3 commits
- (merged to 'next' on 2012-02-20 at 4c75ba9)
- + Add a performance test for git-grep
- + Introduce a performance testing framework
- + Move the user-facing test library to test-lib-functions.sh
+Project search in "gitweb" shows the substring that matched in the project
+name and description highlighted. The highlighting logic is meant to be
+reused later for other kinds of searches e.g. grep and commit log search.
* jb/required-filter (2012-02-17) 1 commit
- - Add a setting to require a filter to be successful
+ (merged to 'next' on 2012-02-26 at e9ba88a)
+ + Add a setting to require a filter to be successful
A content filter used to be a way to make the recorded contents "more
useful", but this defines a way to optionally mark a filter "required".
-Will merge to "next" after waiting for a few more days for comments.
-
-* jk/config-include (2012-02-17) 10 commits
- (merged to 'next' on 2012-02-20 at 7b150b7)
- + config: add include directive
- + config: eliminate config_exclusive_filename
- + config: stop using config_exclusive_filename
- + config: provide a version of git_config with more options
- + config: teach git_config_rename_section a file argument
- + config: teach git_config_set_multivar_in_file a default path
- + config: copy the return value of prefix_filename
- + t1300: add missing &&-chaining
- + docs/api-config: minor clarifications
- + docs: add a basic description of the config API
-
-An assignment to the include.path pseudo-variable causes the named file
-to be included in-place when Git looks up configuration variables.
-
-Reverted the earlier round from 'next' and then fixed up further.
-
-* ld/git-p4-expanded-keywords (2012-02-14) 1 commit
- (merged to 'next' on 2012-02-16 at a9004c5)
- + git-p4: add initial support for RCS keywords
-
-Teach git-p4 to unexpand $RCS$-like keywords that are embedded in
-tracked contents in order to reduce unnecessary merge conflicts.
-Waiting for follow-up fix-up patches.
+Will merge to "master".