To: git@vger.kernel.org
Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Oct 2013, #03; Wed, 16)
-X-master-at: 1d25dd416f08f39042d23340db380f28abb81962
-X-next-at: 748b636b89b812d224df614a3624ce2c0b67b367
+Subject: What's cooking in git.git (Oct 2013, #04; Fri, 18)
+X-master-at: db9bdfbeb044f73a01f6325f4ad61413666a2ce0
+X-next-at: a09e2a8521091b0cc2a18d124507050f20dee1d0
-What's cooking in git.git (Oct 2013, #03; Wed, 16)
+What's cooking in git.git (Oct 2013, #04; Fri, 18)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with
'-' are only in 'pu' (proposed updates) while commits prefixed with
'+' are in 'next'.
-I think I correctly inherited all the topics Jonathan kept track of
-during my absence (big thanks to Jonathan); if a topic that has been
-in his tree is missing please holler. I am chewing through the list
-backlog but still have a long way to go.
-
You can find the changes described here in the integration branches
of the repositories listed at
http://git-blame.blogspot.com/p/git-public-repositories.html
--------------------------------------------------
-[New Topics]
+[Graduated to "master"]
-* fc/styles (2013-10-16) 7 commits
- - block-sha1/sha1.c: have SP around arithmetic operators
- - base85.c: have SP around arithmetic operators
- - archive.c: have SP around arithmetic operators
- - alloc.c: have SP around arithmetic operators
- - abspath.c: have SP around arithmetic operators
- - alias: have SP around arithmetic operators
- - C: have space around && and || operators
+* es/name-hash-no-trailing-slash-in-dirs (2013-09-17) 4 commits
+ (merged to 'next' on 2013-09-20 at 9633d9a)
+ + dir: revert work-around for retired dangerous behavior
+ + name-hash: stop storing trailing '/' on paths in index_state.dir_hash
+ + employ new explicit "exists in index?" API
+ + name-hash: refactor polymorphic index_name_exists()
- C coding style fixes. The ones near the tip have not been sent to
- the list yet (they cover the same kind of style violation as the
- second one) and I may either send them or drop some of them if they
- turn out to conflict with other work in flight---I still haven't
- caught up with the backlog and do not know.
+ Clean up the internal of the name-hash mechanism used to work
+ around case insensitivity on some filesystems to cleanly fix a
+ long-standing API glitch where the caller of cache_name_exists()
+ that ask about a directory with a counted string was required to
+ have '/' at one location past the end of the string.
-* jk/remote-literal-string-leakfix (2013-10-15) 1 commit
- - remote: do not copy "origin" string literal
+* jc/checkout-detach-doc (2013-09-11) 1 commit
+ (merged to 'next' on 2013-09-17 at 438cf13)
+ + checkout: update synopsys and documentation on detaching HEAD
+
+ "git checkout [--detach] <commit>" was listed poorly in the
+ synopsis section of its documentation.
- Will merge to 'next'.
+* jc/reflog-doc (2013-06-19) 1 commit
+ (merged to 'next' on 2013-09-25 at 4eb0c14)
+ + setup_reflog_action: document the rules for using GIT_REFLOG_ACTION
-* jk/split-broken-ident (2013-10-15) 2 commits
- - SQUASH??? remove reverse scan to simplify the logic
- - split_ident: parse timestamp from end of line
+ Document rules to use GIT_REFLOG_ACTION variable in the scripted
+ Porcelain. git-rebase--interactive locally violates them, but it
+ is a leaf user that does not call out to or dot-source other
+ scripts, so it does not urgently need to be fixed.
- Make the fall-back parsing of commit objects with broken author or
- committer lines more robust to pick up the timestamps.
- Will merge to 'next', perhaps after dropping the top one.
+* jk/clone-progress-to-stderr (2013-09-18) 3 commits
+ (merged to 'next' on 2013-09-25 at 137af9e)
+ + clone: always set transport options
+ + clone: treat "checking connectivity" like other progress
+ + clone: send diagnostic messages to stderr
+
+ Some progress and diagnostic messages from "git clone" were
+ incorrectly sent to the standard output stream, not to the standard
+ error stream.
+
+* jk/format-patch-from (2013-09-20) 1 commit
+ (merged to 'next' on 2013-09-20 at 0506530)
+ + format-patch: print in-body "From" only when needed
-* sg/prompt-svn-remote-fix (2013-10-15) 1 commit
- - bash prompt: don't use '+=' operator in show upstream code path
+ "format-patch --from=<whom>" forgot to omit unnecessary in-body
+ from line, i.e. when <whom> is the same as the real author.
+
+
+* jk/trailing-slash-in-pathspec (2013-09-13) 2 commits
+ (merged to 'next' on 2013-09-17 at 18fe277)
+ + reset: handle submodule with trailing slash
+ + rm: re-use parse_pathspec's trailing-slash removal
+
+ Code refactoring.
- Bash portability fix.
+
+* lc/filter-branch-too-many-refs (2013-09-12) 1 commit
+ (merged to 'next' on 2013-09-17 at 31cd01a)
+ + Allow git-filter-branch to process large repositories with lots of branches.
+
+ "git filter-branch" in a repository with many refs blew limit of
+ command line length.
+
+
+* sb/repack-in-c (2013-09-17) 3 commits
+ (merged to 'next' on 2013-09-25 at 7c47036)
+ + repack: improve warnings about failure of renaming and removing files
+ + repack: retain the return value of pack-objects
+ + repack: rewrite the shell script in C
+
+ Rerolled, and I think it is in a reasonably good shape.
+
+--------------------------------------------------
+[New Topics]
+
+* mm/checkout-auto-track-fix (2013-10-18) 2 commits
+ - checkout: proper error message on 'git checkout foo bar --'
+ - checkout: allow dwim for branch creation for "git checkout $branch --"
+
+ "git checkout topic", when there is not yet a local "topic" branch
+ but there is a unique remote-tracking branch for a remote "topic"
+ branch, pretended as if "git checkout -t -b topic remote/$r/topic"
+ (for that unique remote $r) was run. This hack however was not
+ implemented for "git checkout topic --".
Will merge to 'next'.
-* sc/doc-howto-dumb-http (2013-10-16) 1 commit
- - doc/howto: warn about (dumb)http server document being too old
+* hn/log-graph-color-octopus (2013-10-18) 1 commit
+ - graph: fix coloring around octopus merges
Will merge to 'next'.
-* sg/t3600-nul-sha1-fix (2013-10-16) 1 commit
- - t3600: fix broken "choking git rm" test
+* nd/gc-lock-against-each-other (2013-10-18) 1 commit
+ - gc: remove gc.pid file at end of execution
Will merge to 'next'.
--------------------------------------------------
[Stalled]
+* np/pack-v4 (2013-09-18) 90 commits
+ - packv4-parse.c: add tree offset caching
+ - t1050: replace one instance of show-index with verify-pack
+ - index-pack, pack-objects: allow creating .idx v2 with .pack v4
+ - unpack-objects: decode v4 trees
+ - unpack-objects: allow to save processed bytes to a buffer
+ - ...
+
+ Nico and Duy advancing the eternal vaporware pack-v4. This is here
+ primarily for wider distribution of the preview edition.
+
+
+* sc/doc-howto-dumb-http (2013-10-16) 1 commit
+ . doc/howto: warn about (dumb)http server document being too old
+
+ The new text needs to go somewhere in the body of the document,
+ not before the title line.
+
+
* tr/merge-recursive-index-only (2013-07-07) 3 commits
- merge-recursive: -Xindex-only to leave worktree unchanged
- merge-recursive: untangle double meaning of o->call_depth
--------------------------------------------------
[Cooking]
+* fc/styles (2013-10-16) 7 commits
+ - block-sha1/sha1.c: have SP around arithmetic operators
+ - base85.c: have SP around arithmetic operators
+ - archive.c: have SP around arithmetic operators
+ - alloc.c: have SP around arithmetic operators
+ - abspath.c: have SP around arithmetic operators
+ - alias: have SP around arithmetic operators
+ - C: have space around && and || operators
+
+ C coding style fixes. The ones near the tip have not been sent to
+ the list yet (they cover the same kind of style violation as the
+ second one) and I may either send them or drop some of them if they
+ turn out to conflict with other work in flight---I still haven't
+ caught up with the backlog and do not know.
+
+
+* jk/remote-literal-string-leakfix (2013-10-15) 1 commit
+ (merged to 'next' on 2013-10-18 at 6abddac)
+ + remote: do not copy "origin" string literal
+
+ Will merge to 'master'.
+
+
+* jk/split-broken-ident (2013-10-15) 1 commit
+ (merged to 'next' on 2013-10-18 at 8f4b8b7)
+ + split_ident: parse timestamp from end of line
+
+ Make the fall-back parsing of commit objects with broken author or
+ committer lines more robust to pick up the timestamps.
+
+ Will merge to 'master'.
+
+
+* sg/prompt-svn-remote-fix (2013-10-15) 1 commit
+ (merged to 'next' on 2013-10-18 at 20b47eb)
+ + bash prompt: don't use '+=' operator in show upstream code path
+
+ Bash portability fix.
+
+ Will merge to 'master'.
+
+
+* sg/t3600-nul-sha1-fix (2013-10-16) 1 commit
+ - t3600: fix broken "choking git rm" test
+
+ Will merge to 'next'.
+
+
* mg/more-textconv (2013-05-10) 7 commits
(merged to 'next' on 2013-10-14 at 8a12490)
+ grep: honor --textconv for the case rev:path
Make "git grep" and "git show" pay attention to --textconv when
dealing with blob objects.
+ Will merge to 'master'.
+
* ak/submodule-foreach-quoting (2013-09-27) 1 commit
(merged to 'next' on 2013-10-14 at d77c5f1)
(merged to 'next' on 2013-10-14 at 24d786f)
+ http: enable keepalive on TCP sockets
+ Will merge to 'master'.
+
* hu/cherry-pick-previous-branch (2013-10-10) 1 commit
(merged to 'next' on 2013-10-14 at 090934f)
Could use a follow-up to handle '-' after argv[1] better.
+ Will merge to 'master'.
+
* jc/pack-objects (2013-02-04) 1 commit
(merged to 'next' on 2013-10-14 at 8e8feb6)
+ pack-objects: shrink struct object_entry
+ Will merge to 'master'.
+
* jc/prompt-upstream (2013-10-14) 1 commit
(merged to 'next' on 2013-10-14 at 270ef7b)
An enhancement to the GIT_PS1_SHOWUPSTREAM facility.
+ Will merge to 'master'.
+
* jk/http-auth-redirects (2013-10-14) 9 commits
- remote-curl: rewrite base url from info/refs redirects
producing a warning 'Could not find section in .gitmodules where
path=<filename>'.
- jrneider: "The test can use a little cleanup. Otherwise looks good".
+ Will merge to 'next'.
+
+* yt/shortened-rename (2013-10-18) 2 commits
+ - SQUASH??? style fixes and s/omit/shorten/ where appropriate
+ - diff.c: keep arrow(=>) on show_stats()'s shortened filename part to make rename visible
-* yt/shortened-rename (2013-10-13) 1 commit
- - diff.c: keep arrow(=>) on show_stats()'s shortened filename part to make rename visible.
+ Attempts to give more weight on the fact that a filepair represents
+ a rename than showing substring of the actual path when diffstat
+ lines are not wide enough.
- Reroll v6 hasn't been picked up yet.
+ I am not sure if that is solving a right problem, though.
* bc/gnome-keyring (2013-10-16) 16 commits
- - contrib/git-credential-gnome-keyring.c: support really ancient gnome-keyring
- - contrib/git-credential-gnome-keyring.c: support ancient gnome-keyring
- - contrib/git-credential-gnome-keyring.c: report failure to store password
- - contrib/git-credential-gnome-keyring.c: use glib messaging functions
- - contrib/git-credential-gnome-keyring.c: use glib memory allocation functions
- - contrib/git-credential-gnome-keyring.c: use secure memory for reading passwords
- - contrib/git-credential-gnome-keyring.c: use secure memory functions for passwds
- - contrib/git-credential-gnome-keyring.c: use gnome helpers in keyring_object()
- - contrib/git-credential-gnome-keyring.c: set Gnome application name
- - contrib/git-credential-gnome-keyring.c: ensure buffer is non-empty before accessing
- - contrib/git-credential-gnome-keyring.c: strlen() returns size_t, not ssize_t
- - contrib/git-credential-gnome-keyring.c: exit non-zero when called incorrectly
- - contrib/git-credential-gnome-keyring.c: add static where applicable
- - contrib/git-credential-gnome-keyring.c: *style* use "if ()" not "if()" etc.
- - contrib/git-credential-gnome-keyring.c: remove unused die() function
- - contrib/git-credential-gnome-keyring.c: remove unnecessary pre-declarations
+ (merged to 'next' on 2013-10-18 at 25024aa)
+ + contrib/git-credential-gnome-keyring.c: support really ancient gnome-keyring
+ + contrib/git-credential-gnome-keyring.c: support ancient gnome-keyring
+ + contrib/git-credential-gnome-keyring.c: report failure to store password
+ + contrib/git-credential-gnome-keyring.c: use glib messaging functions
+ + contrib/git-credential-gnome-keyring.c: use glib memory allocation functions
+ + contrib/git-credential-gnome-keyring.c: use secure memory for reading passwords
+ + contrib/git-credential-gnome-keyring.c: use secure memory functions for passwds
+ + contrib/git-credential-gnome-keyring.c: use gnome helpers in keyring_object()
+ + contrib/git-credential-gnome-keyring.c: set Gnome application name
+ + contrib/git-credential-gnome-keyring.c: ensure buffer is non-empty before accessing
+ + contrib/git-credential-gnome-keyring.c: strlen() returns size_t, not ssize_t
+ + contrib/git-credential-gnome-keyring.c: exit non-zero when called incorrectly
+ + contrib/git-credential-gnome-keyring.c: add static where applicable
+ + contrib/git-credential-gnome-keyring.c: *style* use "if ()" not "if()" etc.
+ + contrib/git-credential-gnome-keyring.c: remove unused die() function
+ + contrib/git-credential-gnome-keyring.c: remove unnecessary pre-declarations
Cleanups and tweaks for credential handling to work with ancient versions
of the gnome-keyring library that are still in use.
- Will merge to 'next'.
+ Will merge to 'master'.
-* kb/fast-hashmap (2013-09-25) 6 commits
- - fixup! diffcore-rename.c: simplify finding exact renames
+* kb/fast-hashmap (2013-10-18) 12 commits
+ - SQUASH??? submodule.c: do not use ce after it gets freed by remove-cache-entry
+ - remove old hash.[ch] implementation
+ - read-cache.c: fix memory leaks caused by removed cache entries
+ - name-hash.c: remove cache entries instead of marking them CE_UNHASHED
+ - name-hash.c: use new hash map implementation for cache entries
+ - name-hash.c: remove unreferenced directory entries
+ - name-hash.c: use new hash map implementation for directories
- diffcore-rename.c: use new hash map implementation
- diffcore-rename.c: simplify finding exact renames
- diffcore-rename.c: move code around to prepare for the next patch
Improvements to our hash table to get it to meet the needs of the
msysgit fscache project, with some nice performance improvements.
- Looks promising. Needs style review and a sanity-check on the
- design before including in 'next'. Expecting a reroll once review
- settles down.
+ Replaced with a newer reroll; the tip one needs to be replaced with
+ the version from Jens and should come before any of them.
* jc/revision-range-unpeel (2013-10-15) 1 commit
"git rev-list --objects ^v1.0^ v1.0" gave v1.0 tag itself in the
output, but "git rev-list --objects v1.0^..v1.0" did not.
+ Will merge to 'master'.
+
* tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
- perf-lib: add test_perf_cleanup target
Holding until needed.
-* jk/format-patch-from (2013-09-20) 1 commit
- (merged to 'next' on 2013-09-20 at 0506530)
- + format-patch: print in-body "From" only when needed
-
- "format-patch --from=<whom>" forgot to omit unnecessary in-body
- from line, i.e. when <whom> is the same as the real author.
-
- Will merge to 'master'.
-
-
-* es/name-hash-no-trailing-slash-in-dirs (2013-09-17) 4 commits
- (merged to 'next' on 2013-09-20 at 9633d9a)
- + dir: revert work-around for retired dangerous behavior
- + name-hash: stop storing trailing '/' on paths in index_state.dir_hash
- + employ new explicit "exists in index?" API
- + name-hash: refactor polymorphic index_name_exists()
-
- Clean up the internal of the name-hash mechanism used to work
- around case insensitivity on some filesystems to cleanly fix a
- long-standing API glitch where the caller of cache_name_exists()
- that ask about a directory with a counted string was required to
- have '/' at one location past the end of the string.
-
- Will merge to 'master'.
-
-
* po/dot-url (2013-10-15) 3 commits
(merged to 'next' on 2013-10-15 at 312d0af)
+ doc/cli: make "dot repository" an independent bullet point
Will merge to 'master'.
-* jk/clone-progress-to-stderr (2013-09-18) 3 commits
- (merged to 'next' on 2013-09-25 at 137af9e)
- + clone: always set transport options
- + clone: treat "checking connectivity" like other progress
- + clone: send diagnostic messages to stderr
-
- Some progress and diagnostic messages from "git clone" were
- incorrectly sent to the standard output stream, not to the standard
- error stream.
-
- Will merge to 'master'.
-
-
* jx/relative-path-regression-fix (2013-10-14) 3 commits
- - Use simpler relative_path when set_git_dir
+ (merged to 'next' on 2013-10-18 at b4af45f)
+ + Use simpler relative_path when set_git_dir
(merged to 'next' on 2013-10-14 at 704b9ee)
+ relative_path should honor dos-drive-prefix
+ test: use unambigous leading path (/foo) for MSYS
- Waiting for the review to settle.
-
-
-* jc/checkout-detach-doc (2013-09-11) 1 commit
- (merged to 'next' on 2013-09-17 at 438cf13)
- + checkout: update synopsys and documentation on detaching HEAD
-
- "git checkout [--detach] <commit>" was listed poorly in the
- synopsis section of its documentation.
-
- Will merge to 'master'.
-
-
-* jk/trailing-slash-in-pathspec (2013-09-13) 2 commits
- (merged to 'next' on 2013-09-17 at 18fe277)
- + reset: handle submodule with trailing slash
- + rm: re-use parse_pathspec's trailing-slash removal
-
- Code refactoring.
-
- Will merge to 'master'.
-
-
-* lc/filter-branch-too-many-refs (2013-09-12) 1 commit
- (merged to 'next' on 2013-09-17 at 31cd01a)
- + Allow git-filter-branch to process large repositories with lots of branches.
-
- "git filter-branch" in a repository with many refs blew limit of
- command line length.
-
- Will merge to 'master'.
-
-
-* np/pack-v4 (2013-09-18) 90 commits
- - packv4-parse.c: add tree offset caching
- - t1050: replace one instance of show-index with verify-pack
- - index-pack, pack-objects: allow creating .idx v2 with .pack v4
- - unpack-objects: decode v4 trees
- - unpack-objects: allow to save processed bytes to a buffer
- - ...
-
- Nico and Duy advancing the eternal vaporware pack-v4. This is here
- primarily for wider distribution of the preview edition.
-
-
-* sb/repack-in-c (2013-09-17) 3 commits
- (merged to 'next' on 2013-09-25 at 7c47036)
- + repack: improve warnings about failure of renaming and removing files
- + repack: retain the return value of pack-objects
- + repack: rewrite the shell script in C
-
- Rerolled, and I think it is in a reasonably good shape.
-
- Will merge to 'master'.
-
-
-* jc/reflog-doc (2013-06-19) 1 commit
- (merged to 'next' on 2013-09-25 at 4eb0c14)
- + setup_reflog_action: document the rules for using GIT_REFLOG_ACTION
-
- Document rules to use GIT_REFLOG_ACTION variable in the scripted
- Porcelain. git-rebase--interactive locally violates them, but it
- is a leaf user that does not call out to or dot-source other
- scripts, so it does not urgently need to be fixed.
-
- Will merge to 'master'.
+ Will merge to 'master' and later to 'maint'.
* jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit