@ -1,18 +1,17 @@
@@ -1,18 +1,17 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Oct 2011, #06; Tue, 18)
X-master-at: 08cfdbb88cd6225b4fc4b8a3cecd0e01758c835d
X-next-at: 84fb7e6e14c3124e875b0326d84f1a4347e044d5
Subject: What's cooking in git.git (Oct 2011, #07; Wed, 19)
X-master-at: 87009edcbd0b4987ccb7ba050a1efe368a315753
X-next-at: cbf5e0b121e34b6b879a06938b34acda5e1b509d
What's cooking in git.git (Oct 2011, #06; Tue, 18)
What's cooking in git.git (Oct 2011, #07; Wed, 19)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with '-' are
only in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'.
The fourth batch of topics have graduated to the master branch. This batch
ended up to be mostly fixes, as can be seen in the updates in the RelNotes
file. These topics will be further merged down to the maint branch for the
1.7.7.1 maintenance release.
The fifth batch of topics started graduating to the master branch. It is
probably a good point to stop taking new topics and start switching our
focus to fixing bugs in the topics already in 'master'.
Here are the repositories that have my integration branches:
@ -33,99 +32,69 @@ With all the topics and integration branches but not todo, html or man:
@@ -33,99 +32,69 @@ With all the topics and integration branches but not todo, html or man:
https://github.com/gitster/git
--------------------------------------------------
[Graduated to "master"]
[New Topics]
* jc/match-refs-clarify (2011-09-12) 2 commits
- rename "match_refs()" to "match_push_refs()"
- send-pack: typofix error message
* bc/attr-ignore-case (2011-10-11) 5 commits
(merged to 'next' on 2011-10-11 at daa6b51)
+ attr.c: respect core.ignorecase when matching attribute patterns
+ attr: read core.attributesfile from git_default_core_config
+ builtin/mv.c: plug miniscule memory leak
+ cleanup: use internal memory allocation wrapper functions everywhere
+ attr.c: avoid inappropriate access to strbuf "buf" member
* ef/mingw-syslog (2011-10-07) 1 commit
(merged to 'next' on 2011-10-11 at d5d6945)
+ mingw: avoid using strbuf in syslog
* jc/checkout-from-tree-keep-local-changes (2011-09-30) 1 commit
(merged to 'next' on 2011-10-06 at 64061aa)
+ checkout $tree $path: do not clobber local changes in $path not in $tree
Originally merged to 'next' on 2011-10-05.
* jk/config-test-cleanup (2011-10-12) 2 commits
(merged to 'next' on 2011-10-12 at 7c857dd)
+ t1300: test mixed-case variable retrieval
+ t1300: put git invocations inside test function
* jk/http-auth (2011-10-15) 6 commits
(merged to 'next' on 2011-10-15 at 2ff0053)
+ http_init: accept separate URL parameter
+ http: use hostname in credential description
+ http: retry authentication failures for all http requests
+ remote-curl: don't retry auth failures with dumb protocol
+ improve httpd auth tests
+ url: decode buffers that are not NUL-terminated
(this branch is tangled with jk/http-auth-keyring and js/cred-macos-x-keychain-2.)
Michael helped resurrecting uncontentious bits from the credential series.
* jk/name-hash-dirent (2011-10-07) 1 commit
(merged to 'next' on 2011-10-11 at e2ea68b)
+ fix phantom untracked files when core.ignorecase is set
* jk/pull-rebase-with-work-tree (2011-10-13) 1 commit
(merged to 'next' on 2011-10-15 at 2707482)
+ pull,rebase: handle GIT_WORK_TREE better
* js/bisect-no-checkout (2011-09-21) 1 commit
(merged to 'next' on 2011-10-06 at 0354e94)
+ bisect: fix exiting when checkout failed in bisect_start()
Originally merged to 'next' on 2011-09-21.
* js/check-ref-format-test-mingw (2011-10-13) 1 commit
(merged to 'next' on 2011-10-15 at fbc2ee6)
+ t1402-check-ref-format: skip tests of refs beginning with slash on Windows
* mm/maint-config-explicit-bool-display (2011-10-10) 1 commit
(merged to 'next' on 2011-10-11 at 795939f)
+ config: display key_delim for config --bool --get-regexp
* ph/push-to-delete-nothing (2011-09-30) 1 commit
(merged to 'next' on 2011-10-06 at 33ac777)
+ receive-pack: don't pass non-existent refs to post-{receive,update} hooks
* sg/completion (2011-10-10) 2 commits
(merged to 'next' on 2011-10-11 at 4724640)
+ completion: unite --format and --pretty for 'log' and 'show'
+ completion: unite --reuse-message and --reedit-message for 'notes'
(this branch is used by sg/complete-refs; uses tm/completion-commit-fixup-squash.)
* tc/fetch-leak (2011-10-07) 1 commit
(merged to 'next' on 2011-10-11 at d867153)
+ fetch: plug two leaks on error exit in store_updated_refs
* tm/completion-commit-fixup-squash (2011-10-06) 2 commits
(merged to 'next' on 2011-10-11 at 6bb192e)
+ completion: commit --fixup and --squash
+ completion: unite --reuse-message and --reedit-message handling
(this branch is used by sg/complete-refs and sg/completion.)
* tm/completion-push-set-upstream (2011-10-06) 1 commit
(merged to 'next' on 2011-10-11 at 85544e5)
+ completion: push --set-upstream
(this branch is used by sg/complete-refs.)
* jn/libperl-git-config (2011-10-18) 1 commit
- libperl-git: refactor Git::config_*
* ss/inet-ntop (2011-10-18) 1 commit
- inet_ntop.c: Work around GCC 4.6's detection of uninitialized variables
--------------------------------------------------
[New Topics]
[Graduated to "master"]
* bk/submodule-in-recursive-merge (2011-10-13) 2 commits
(merged to 'next' on 2011-10-15 at e02205c)
+ submodule: Search for merges only at end of recursive merge
+ submodule: Demonstrate known breakage during recursive merge
Brad helped resurrecting good bits earlier tangled in the stalled topic
hv/submodule-merge-search by mistake.
* cb/httpd-test-fix-port (2011-10-17) 1 commit
(merged to 'next' on 2011-10-17 at 84fb7e6)
+ use test number as port number
* jm/maint-apply-detects-corrupt-patch-header (2011-10-12) 1 commit
(merged to 'next' on 2011-10-12 at 80d9503)
+ fix "git apply --index ..." not to deref NULL
* jn/gitweb-manpages (2011-10-16) 5 commits
(merged to 'next' on 2011-10-16 at 6555a07)
+ gitweb: Add gitweb manpages to 'gitweb' package in git.spec
+ Documentation: Add gitweb config variables to git-config(1)
+ Documentation: Link to gitweb(1) and gitweb.conf(5) in other manpages
+ gitweb: Add gitweb(1) manpage for gitweb itself
+ gitweb: Add gitweb.conf(5) manpage for gitweb configuration files
* js/log-show-children (2011-10-04) 1 commit
(merged to 'next' on 2011-10-06 at de8f6f2)
+ log --children
* js/maint-no-cherry-pick-head-after-punted (2011-10-06) 2 commits
+ cherry-pick: do not give irrelevant advice when cherry-pick punted
+ revert.c: defer writing CHERRY_PICK_HEAD till it is safe to do so
(this branch is used by js/no-cherry-pick-head-after-punted.)
Will merge to 'maint' later.
* js/merge-edit-option (2011-10-12) 1 commit
(merged to 'next' on 2011-10-12 at db28da3)
+ Teach merge the '[-e|--edit]' option
* js/no-cherry-pick-head-after-punted (2011-10-06) 1 commit
(merged to 'next' on 2011-10-10 at acb29ee)
+ Merge branch 'js/maint-no-cherry-pick-head-after-punted' into js/no-cherry-pick-head-after-punted
(this branch uses js/maint-no-cherry-pick-head-after-punted.)
* md/smtp-tls-hello-again (2011-10-15) 1 commit
(merged to 'next' on 2011-10-16 at 3e27de4)
+ send-email: Honour SMTP domain when using TLS
Will merge to 'master' soonish.
* pt/mingw-misc-fixes (2011-10-15) 7 commits
(merged to 'next' on 2011-10-16 at 2dc0b55)
+ t9901: fix line-ending dependency on windows
@ -136,7 +105,81 @@ Will merge to 'master' soonish.
@@ -136,7 +105,81 @@ Will merge to 'master' soonish.
+ t9001: do not fail only due to CR/LF issues
+ t1020: disable the pwd test on MinGW
Will merge to 'master' soonish.
* rs/diff-whole-function (2011-10-10) 2 commits
(merged to 'next' on 2011-10-11 at 6196752)
+ diff: add option to show whole functions as context
+ xdiff: factor out get_func_line()
* rs/pickaxe (2011-10-07) 7 commits
(merged to 'next' on 2011-10-11 at 27d02b2)
+ pickaxe: factor out pickaxe
+ pickaxe: give diff_grep the same signature as has_changes
+ pickaxe: pass diff_options to contains and has_changes
+ pickaxe: factor out has_changes
+ pickaxe: plug regex/kws leak
+ pickaxe: plug regex leak
+ pickaxe: plug diff filespec leak with empty needle
--------------------------------------------------
[Stalled]
* hv/submodule-merge-search (2011-10-13) 4 commits
- submodule.c: make two functions static
- allow multiple calls to submodule merge search for the same path
- push: Don't push a repository with unpushed submodules
- push: teach --recurse-submodules the on-demand option
What the topic aims to achieve may make sense, but the implementation
looked somewhat suboptimal.
The fix-up at the tip queued on fg/submodule-auto-push topic has been
moved to this topic.
* sr/transport-helper-fix-rfc (2011-07-19) 2 commits
- t5800: point out that deleting branches does not work
- t5800: document inability to push new branch with old content
Perhaps 281eee4 (revision: keep track of the end-user input from the
command line, 2011-08-25) would help.
* rr/revert-cherry-pick (2011-10-12) 7 commits
- revert: further simplify parsing of a line in insn sheet
- revert: Simplify passing command-line arguments around
- revert: Allow mixed pick and revert instructions
- revert: Make commit descriptions in insn sheet optional
- revert: Fix buffer overflow in insn sheet parser
- revert: Simplify getting commit subject
- revert: Free memory after get_message call
Probably needs a little bit more polish, e.g. squashing the tip fixup into
an earlier one in the series.
* jc/lookup-object-hash (2011-08-11) 6 commits
- object hash: replace linear probing with 4-way cuckoo hashing
- object hash: we know the table size is a power of two
- object hash: next_size() helper for readability
- pack-objects --count-only
- object.c: remove duplicated code for object hashing
- object.c: code movement for readability
I do not think there is anything fundamentally wrong with this series, but
the risk of breakage far outweighs observed performance gain in one
particular workload.
--------------------------------------------------
[Cooking]
* jc/check-ref-format-fixup (2011-10-12) 2 commits
(merged to 'next' on 2011-10-15 at 8e89bc5)
+ Restrict ref-like names immediately below $GIT_DIR
+ refs.c: move dwim_ref()/dwim_log() from sha1_name.c
An attempt to fix-up unfortunate side effect of mh/check-ref-format-3
topic. "git show -s config" is never meant to refer to $GIT_DIR/config
and treat it as a file that records an object name. But tightening the
rule for reading side means we would need to tighten the rule for the
writing side, too, which turned out to be rather nasty fallout that
needs to be sorted out before the next release.
* pw/p4-update (2011-10-17) 6 commits
(merged to 'next' on 2011-10-17 at f69f6cc)
@ -163,12 +206,6 @@ Will merge to 'master' in the fifth wave.
@@ -163,12 +206,6 @@ Will merge to 'master' in the fifth wave.
The tip commit might be loosening things a bit too much.
Will keep in 'pu' until hearing a convincing argument for the patch.
* cb/httpd-test-fix-port (2011-10-17) 1 commit
(merged to 'next' on 2011-10-17 at 84fb7e6)
+ use test number as port number
Will merge to 'master' soonish.
* jc/verbose-checkout (2011-10-16) 2 commits
- checkout -v: give full status output after switching branches
- checkout: move the local changes report to the end
@ -188,28 +225,26 @@ Fun.
@@ -188,28 +225,26 @@ Fun.
Will keep in 'pu' until the planned re-roll comes.
* mh/ref-api-2 (2011-10-17) 14 commits
- resolve_gitlink_ref_recursive(): change to work with struct ref_cache
- Pass a (ref_cache *) to the resolve_gitlink_*() helper functions
- resolve_gitlink_ref(): improve docstring
- get_ref_dir(): change signature
- refs: change signatures of get_packed_refs() and get_loose_refs()
- is_dup_ref(): extract function from sort_ref_array()
- add_ref(): add docstring
- parse_ref_line(): add docstring
- is_refname_available(): remove the "quiet" argument
- clear_ref_array(): rename from free_ref_array()
- refs: rename parameters result -> sha1
- refs: rename "refname" variables
- struct ref_entry: document name member
- cache.h: add comments for git_path() and git_path_submodule()
(merged to 'next' on 2011-10-19 at cc89f0e)
+ resolve_gitlink_ref_recursive(): change to work with struct ref_cache
+ Pass a (ref_cache *) to the resolve_gitlink_*() helper functions
+ resolve_gitlink_ref(): improve docstring
+ get_ref_dir(): change signature
+ refs: change signatures of get_packed_refs() and get_loose_refs()
+ is_dup_ref(): extract function from sort_ref_array()
+ add_ref(): add docstring
+ parse_ref_line(): add docstring
+ is_refname_available(): remove the "quiet" argument
+ clear_ref_array(): rename from free_ref_array()
+ refs: rename parameters result -> sha1
+ refs: rename "refname" variables
+ struct ref_entry: document name member
+ cache.h: add comments for git_path() and git_path_submodule()
(this branch uses mh/ref-api.)
Will merge to 'next'.
* po/insn-editor (2011-10-17) 1 commit
- "rebase -i": support special-purpose editor to edit insn sheet
Will merge to 'next'.
(merged to 'next' on 2011-10-19 at cbf5e0b)
+ "rebase -i": support special-purpose editor to edit insn sheet
* dm/pack-objects-update (2011-10-18) 4 commits
- pack-objects: don't traverse objects unnecessarily
@ -225,45 +260,10 @@ Will merge to 'next'.
@@ -225,45 +260,10 @@ Will merge to 'next'.
* jc/make-tags (2011-10-18) 1 commit
- Makefile: ask "ls-files" to list source files if available
--------------------------------------------------
[Stalled]
* hv/submodule-merge-search (2011-10-13) 4 commits
- submodule.c: make two functions static
- allow multiple calls to submodule merge search for the same path
- push: Don't push a repository with unpushed submodules
- push: teach --recurse-submodules the on-demand option
What the topic aims to achieve may make sense, but the implementation
looked somewhat suboptimal.
The fix-up at the tip queued on fg/submodule-auto-push topic has been
moved to this topic.
* sr/transport-helper-fix-rfc (2011-07-19) 2 commits
- t5800: point out that deleting branches does not work
- t5800: document inability to push new branch with old content
Perhaps 281eee4 (revision: keep track of the end-user input from the
command line, 2011-08-25) would help.
* rr/revert-cherry-pick (2011-10-12) 7 commits
- revert: further simplify parsing of a line in insn sheet
- revert: Simplify passing command-line arguments around
- revert: Allow mixed pick and revert instructions
- revert: Make commit descriptions in insn sheet optional
- revert: Fix buffer overflow in insn sheet parser
- revert: Simplify getting commit subject
- revert: Free memory after get_message call
Probably needs a little bit more polish, e.g. squashing the tip fixup into
an earlier one in the series.
* jc/signed-commit (2011-10-05) 4 commits
* jc/signed-commit (2011-10-18) 3 commits
- log: --show-signature
- commit: teach --gpg-sign option
- Split GPG interface into its own helper library
- rename "match_refs()" to "match_push_refs()"
- send-pack: typofix error message
This is to replace the earlier "signed push" experiments. "verify-tag"
equivalent needs to be written before this can proceed. I suspect that
@ -271,21 +271,6 @@ teaching "verify-tag" to notice and also handle signed commits would be
@@ -271,21 +271,6 @@ teaching "verify-tag" to notice and also handle signed commits would be
the easiest, but "git tag --verify $commit" might look slightly funny
from the UI POV. I dunno.
* jc/lookup-object-hash (2011-08-11) 6 commits
- object hash: replace linear probing with 4-way cuckoo hashing
- object hash: we know the table size is a power of two
- object hash: next_size() helper for readability
- pack-objects --count-only
- object.c: remove duplicated code for object hashing
- object.c: code movement for readability
I do not think there is anything fundamentally wrong with this series, but
the risk of breakage far outweighs observed performance gain in one
particular workload.
--------------------------------------------------
[Cooking]
* mh/ref-api (2011-10-16) 7 commits
(merged to 'next' on 2011-10-17 at 219000f)
+ clear_ref_cache(): inline function
@ -299,32 +284,6 @@ particular workload.
@@ -299,32 +284,6 @@ particular workload.
Will merge to 'master' in the sixth wave.
* jn/gitweb-manpages (2011-10-16) 5 commits
(merged to 'next' on 2011-10-16 at 6555a07)
+ gitweb: Add gitweb manpages to 'gitweb' package in git.spec
+ Documentation: Add gitweb config variables to git-config(1)
+ Documentation: Link to gitweb(1) and gitweb.conf(5) in other manpages
+ gitweb: Add gitweb(1) manpage for gitweb itself
+ gitweb: Add gitweb.conf(5) manpage for gitweb configuration files
Will merge to 'master' soonish.
* jm/maint-apply-detects-corrupt-patch-header (2011-10-12) 1 commit
(merged to 'next' on 2011-10-12 at 80d9503)
+ fix "git apply --index ..." not to deref NULL
Will merge to 'master' soonish.
* bk/submodule-in-recursive-merge (2011-10-13) 2 commits
(merged to 'next' on 2011-10-15 at e02205c)
+ submodule: Search for merges only at end of recursive merge
+ submodule: Demonstrate known breakage during recursive merge
Brad helped resurrecting good bits earlier tangled in the stalled topic
hv/submodule-merge-search by mistake.
Will merge to 'master' soonish.
* sg/complete-refs (2011-10-15) 10 commits
- completion: remove broken dead code from __git_heads() and __git_tags()
- completion: fast initial completion for config 'remote.*.fetch' value
@ -343,11 +302,11 @@ Will keep in 'pu' until an Ack or two from people who have worked on the
@@ -343,11 +302,11 @@ Will keep in 'pu' until an Ack or two from people who have worked on the
completion in the past comes.
* jc/unseekable-bundle (2011-10-13) 2 commits
- bundle: add parse_bundle_header() helper function
- bundle: allowing to read from an unseekable fd
(merged to 'next' on 2011-10-19 at 2978ee0)
+ bundle: add parse_bundle_header() helper function
+ bundle: allowing to read from an unseekable fd
I am not entirely happy with the first patch but it is not so bad either.
Will merge to 'next'.
* jk/daemon-msgs (2011-10-15) 1 commit
(merged to 'next' on 2011-10-15 at 415cf53)
@ -373,31 +332,6 @@ Will merge to 'master' in the fifth wave.
@@ -373,31 +332,6 @@ Will merge to 'master' in the fifth wave.
Will merge to 'master' in the sixth wave.
* js/merge-edit-option (2011-10-12) 1 commit
(merged to 'next' on 2011-10-12 at db28da3)
+ Teach merge the '[-e|--edit]' option
Will merge to 'master' in the fifth wave.
* rs/diff-whole-function (2011-10-10) 2 commits
(merged to 'next' on 2011-10-11 at 6196752)
+ diff: add option to show whole functions as context
+ xdiff: factor out get_func_line()
Will merge to 'master' in the fifth wave.
* rs/pickaxe (2011-10-07) 7 commits
(merged to 'next' on 2011-10-11 at 27d02b2)
+ pickaxe: factor out pickaxe
+ pickaxe: give diff_grep the same signature as has_changes
+ pickaxe: pass diff_options to contains and has_changes
+ pickaxe: factor out has_changes
+ pickaxe: plug regex/kws leak
+ pickaxe: plug regex leak
+ pickaxe: plug diff filespec leak with empty needle
Will merge to 'master' in the fifth wave.
* sc/difftool-skip (2011-10-14) 2 commits
(merged to 'next' on 2011-10-14 at b91c581)
+ t7800: avoid arithmetic expansion notation
@ -406,44 +340,12 @@ Will merge to 'master' in the fifth wave.
@@ -406,44 +340,12 @@ Will merge to 'master' in the fifth wave.
Will merge to 'master' in the fifth wave.
* jc/check-ref-format-fixup (2011-10-12) 2 commits
(merged to 'next' on 2011-10-15 at 8e89bc5)
+ Restrict ref-like names immediately below $GIT_DIR
+ refs.c: move dwim_ref()/dwim_log() from sha1_name.c
An attempt to fix-up unfortunate side effect of mh/check-ref-format-3
topic. "git show -s config" is never meant to refer to $GIT_DIR/config
and treat it as a file that records an object name.
Will merge to 'master' soonish so that we can have enough time to deal
with possible fall-outs.
* jc/maint-remove-renamed-ref (2011-10-12) 1 commit
(merged to 'next' on 2011-10-12 at 819c3e4)
+ branch -m/-M: remove undocumented RENAMED-REF
Will merge to 'master' in the sixth wave.
* js/no-cherry-pick-head-after-punted (2011-10-06) 1 commit
(merged to 'next' on 2011-10-10 at acb29ee)
+ Merge branch 'js/maint-no-cherry-pick-head-after-punted' into js/no-cherry-pick-head-after-punted
(this branch uses js/maint-no-cherry-pick-head-after-punted.)
Will merge to 'master' in the fifth wave.
* js/maint-no-cherry-pick-head-after-punted (2011-10-06) 2 commits
+ cherry-pick: do not give irrelevant advice when cherry-pick punted
+ revert.c: defer writing CHERRY_PICK_HEAD till it is safe to do so
(this branch is used by js/no-cherry-pick-head-after-punted.)
Will merge to 'maint' later.
* js/log-show-children (2011-10-04) 1 commit
(merged to 'next' on 2011-10-06 at de8f6f2)
+ log --children
Will merge to 'master' in the fifth wave.
* ph/transport-with-gitfile (2011-10-11) 5 commits
(merged to 'next' on 2011-10-12 at 6d58417)
+ Fix is_gitfile() for files too small or larger than PATH_MAX to be a gitfile