To: git@vger.kernel.org
Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Apr 2013, #07; Mon, 22)
-X-master-at: 118f60ee06612083ff4f1810424e80a3e896f73e
-X-next-at: 46dda50f1b80376d17129b9546d08f602af44864
+Subject: What's cooking in git.git (Apr 2013, #08; Tue, 23)
+X-master-at: 562af5b0b900539bd7ef481316834e500f571899
+X-next-at: d6019519f9f40af1f430c4a5e6d87e69d376483d
-What's cooking in git.git (Apr 2013, #07; Mon, 22)
+What's cooking in git.git (Apr 2013, #08; Tue, 23)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with
--------------------------------------------------
[Graduated to "master"]
-* ap/strbuf-humanize (2013-04-10) 2 commits
- (merged to 'next' on 2013-04-14 at 66d7af5)
- + count-objects: add -H option to humanize sizes
- + strbuf: create strbuf_humanise_bytes() to show byte sizes
-
- Teach "--human-readable" aka "-H" option to "git count-objects" to
- show various large numbers in Ki/Mi/GiB scaled as necessary.
-
- I've decided to let this topic supersede mc/count-objects-kibibytes.
- Human users will get an even easier output with "-H" and by not
- changing the output without an explicit option we do not have to
- break third-party tools that may have been reading from the output
- of this command.
+* fc/untracked-zsh-prompt (2013-04-21) 1 commit
+ (merged to 'next' on 2013-04-22 at 472da3e)
+ + prompt: fix untracked files for zsh
+ Zsh completion forgot that '%' character used to signal untracked
+ files needs to be escaped with another '%'.
-* as/clone-reference-with-gitfile (2013-04-09) 2 commits
- (merged to 'next' on 2013-04-15 at ab0d128)
- + clone: Allow repo using gitfile as a reference
- + clone: Fix error message for reference repository
- "git clone" did not work if a repository pointed at by the
- "--reference" option is a gitfile that points at another place.
+* jk/receive-pack-deadlocks-with-early-failure (2013-04-19) 1 commit
+ (merged to 'next' on 2013-04-22 at 1e27177)
+ + receive-pack: close sideband fd on early pack errors
+ When receive-pack detects error in the pack header it received in
+ order to decide which of unpack-objects or index-pack to run, it
+ returned without closing the error stream, which led to a hang
+ sideband thread.
-* fc/branch-upstream-color (2013-04-15) 1 commit
- (merged to 'next' on 2013-04-15 at 2fc50fd)
- + branch: colour upstream branches
- Add more colors to "git branch -vv" output.
+* jn/gitweb-install-doc (2013-04-17) 2 commits
+ (merged to 'next' on 2013-04-22 at a5d4812)
+ + gitweb/INSTALL: GITWEB_CONFIG_SYSTEM is for backward compatibility
+ + gitweb/INSTALL: Simplify description of GITWEB_CONFIG_SYSTEM
+ Reword gitweb configuration instrutions.
-* fc/remote-hg (2013-04-11) 21 commits
- (merged to 'next' on 2013-04-16 at cbeaf41)
- + remote-hg: activate graphlog extension for hg_log()
- + remote-hg: fix bad file paths
- + remote-hg: document location of stored hg repository
- + remote-hg: fix bad state issue
- + remote-hg: add 'insecure' option
- + remote-hg: add simple mail test
- + remote-hg: add basic author tests
- + remote-hg: show more proper errors
- + remote-hg: force remote push
- + remote-hg: push to the appropriate branch
- + remote-hg: update tags globally
- + remote-hg: update remote bookmarks
- + remote-hg: refactor export
- + remote-hg: split bookmark handling
- + remote-hg: redirect buggy mercurial output
- + remote-hg: trivial test cleanups
- + remote-hg: make sure fake bookmarks are updated
- + remote-hg: fix for files with spaces
- + remote-hg: properly report errors on bookmark pushes
- + remote-hg: add missing config variable in doc
- + remote-hg: trivial cleanups
- Updates remote-hg helper (in contrib/).
+* kb/status-ignored-optim-2 (2013-04-15) 14 commits
+ (merged to 'next' on 2013-04-21 at d2a5c70)
+ + dir.c: git-status --ignored: don't scan the work tree twice
+ + dir.c: git-status --ignored: don't scan the work tree three times
+ + dir.c: git-status: avoid is_excluded checks for tracked files
+ + dir.c: replace is_path_excluded with now equivalent is_excluded API
+ + dir.c: unify is_excluded and is_path_excluded APIs
+ + dir.c: move prep_exclude
+ + dir.c: factor out parts of last_exclude_matching for later reuse
+ + dir.c: git-clean -d -X: don't delete tracked directories
+ + dir.c: make 'git-status --ignored' work within leading directories
+ + dir.c: git-status --ignored: don't list empty directories as ignored
+ + dir.c: git-ls-files --directories: don't hide empty directories
+ + dir.c: git-status --ignored: don't list empty ignored directories
+ + dir.c: git-status --ignored: don't list files in ignored directories
+ + dir.c: git-status --ignored: don't drop ignored directories
+ A handful of issues in the code to traverse working tree to find
+ untracked and/or ignored files have been fixed, and the general
+ codepath involved in "status -u" and "clean" have been cleaned up
+ and optimized.
-* jk/a-thread-only-dies-once (2013-04-16) 2 commits
- (merged to 'next' on 2013-04-18 at 3208f44)
- + run-command: use thread-aware die_is_recursing routine
- + usage: allow pluggable die-recursion checks
- A regression fix for the logic to detect die() handler triggering
- itself recursively.
+* nd/pretty-formats (2013-04-18) 13 commits
+ (merged to 'next' on 2013-04-22 at 3d63014)
+ + pretty: support %>> that steal trailing spaces
+ + pretty: support truncating in %>, %< and %><
+ + pretty: support padding placeholders, %< %> and %><
+ + pretty: add %C(auto) for auto-coloring
+ + pretty: split color parsing into a separate function
+ + pretty: two phase conversion for non utf-8 commits
+ + utf8.c: add reencode_string_len() that can handle NULs in string
+ + utf8.c: add utf8_strnwidth() with the ability to skip ansi sequences
+ + utf8.c: move display_mode_esc_sequence_len() for use by other functions
+ + pretty: share code between format_decoration and show_decorations
+ + pretty-formats.txt: wrap long lines
+ + pretty: get the correct encoding for --pretty:format=%e
+ + pretty: save commit encoding from logmsg_reencode if the caller needs it
+ pretty-printing body of the commit that is stored in non UTF-8
+ encoding did not work well. The early part of this series fixes
+ it. And then it adds %C(auto) specifier that turns the coloring on
+ when we are emitting to the terminal, and adds column-aligning
+ format directives.
-* jk/chopped-ident (2013-04-17) 3 commits
- (merged to 'next' on 2013-04-19 at ecec2d4)
- + blame: handle broken commit headers gracefully
- + pretty: handle broken commit headers gracefully
- + cat-file: print tags raw for "cat-file -p"
+--------------------------------------------------
+[New Topics]
- A commit object whose author or committer ident are malformed
- crashed some code that trusted that a name, an email and an
- timestamp can always be found in it.
+* jc/add-2.0-ignore-removal (2013-04-22) 1 commit
+ - git add <pathspec>... defaults to "-A"
+ (this branch uses jc/add-ignore-removal.)
+ Updated endgame for "git add <pathspec>" that defaults to "--all"
+ aka "--no-ignore-removal".
-* jk/doc-http-backend (2013-04-13) 3 commits
- (merged to 'next' on 2013-04-19 at 7932840)
- + doc/http-backend: match query-string in apache half-auth example
- + doc/http-backend: give some lighttpd config examples
- + doc/http-backend: clarify "half-auth" repo configuration
+ Will cook in 'next' until Git 2.0.
- Improve documentation to illustrate "push authenticated, fetch
- anonymous" configuration for smart HTTP servers.
+* jc/add-ignore-removal (2013-04-22) 2 commits
+ - git add: rephrase -A/--no-all warning
+ - git add: --ignore-removal is a better named --no-all
+ (this branch is used by jc/add-2.0-ignore-removal.)
-* jx/i18n-branch-error-messages (2013-04-15) 1 commit
- (merged to 'next' on 2013-04-18 at 630c211)
- + i18n: branch: mark strings for translation
+ Introduce "--ignore-removal" as a synonym to "--no-all" for "git
+ add", and improve the 2.0 migration warning with it.
+ Will merge to 'next'.
-* lf/read-blob-data-from-index (2013-04-17) 3 commits
- (merged to 'next' on 2013-04-17 at 611208f)
- + convert.c: remove duplicate code
- + read_blob_data_from_index(): optionally return the size of blob data
- + attr.c: extract read_index_data() as read_blob_data_from_index()
- Reduce duplicated code between convert.c and attr.c.
+* fc/remote-hg (2013-04-22) 16 commits
+ - remote-hg: strip extra newline
+ - remote-hg: use marks instead of inlined files
+ - remote-hg: small performance improvement
+ - remote-hg: allow refs with spaces
+ - remote-hg: don't update bookmarks unnecessarily
+ - remote-hg: add support for schemes extension
+ - remote-hg: improve email sanitation
+ - remote-hg: add custom local tag write code
+ - remote-hg: write tags in the appropriate branch
+ - remote-hg: custom method to write tags
+ - remote-hg: add support for tag objects
+ - remote-hg: add branch_tip() helper
+ - remote-hg: properly mark branches up-to-date
+ - remote-hg: use python urlparse
+ - remote-hg: safer bookmark pushing
+ - remote-helpers: avoid has_key
+ Further updates to remote-hg (in contrib/).
-* mv/sequencer-pick-error-diag (2013-04-11) 1 commit
- (merged to 'next' on 2013-04-16 at a2da926)
- + cherry-pick: make sure all input objects are commits
+ Will merge to 'next' after a few days.
- "git cherry-pick $blob $tree" is diagnosed as a nonsense.
+* th/bisect-skipped-log (2013-04-23) 1 commit
+ - bisect: Log possibly bad, skipped commits at bisection end
-* mv/ssl-ftp-curl (2013-04-12) 1 commit
- (merged to 'next' on 2013-04-15 at 7fdada6)
- + Support FTP-over-SSL/TLS for regular FTP
+--------------------------------------------------
+[Stalled]
- Does anybody really use commit walkers over ftp???
+* jc/format-patch (2013-04-22) 2 commits
+ - format-patch: --inline-single
+ - format-patch: rename "no_inline" field
+ A new option to send a single patch to the standard output to be
+ appended at the bottom of a message. I personally have no need for
+ this, but it was easy enough to cobble together. Tests, docs and
+ stripping out more MIMEy stuff are left as exercises to interested
+ parties.
-* nd/checkout-keep-sparse (2013-04-15) 1 commit
- (merged to 'next' on 2013-04-19 at 803dabc)
- + checkout: add --ignore-skip-worktree-bits in sparse checkout mode
+ Not ready for inclusion.
- Make the initial "sparse" selection of the paths more sticky across
- "git checkout".
+* jk/gitweb-utf8 (2013-04-08) 4 commits
+ - gitweb: Fix broken blob action parameters on blob/commitdiff pages
+ - gitweb: Don't append ';js=(0|1)' to external links
+ - gitweb: Make feed title valid utf8
+ - gitweb: Fix utf8 encoding for blob_plain, blobdiff_plain, commitdiff_plain, and patch
-* rt/commentchar-fmt-merge-msg (2013-04-18) 1 commit
- (merged to 'next' on 2013-04-18 at 96799bd)
- + t6200: avoid path mangling issue on Windows
+ Various fixes to gitweb.
- A test fix for recent update.
+ Waiting for a reroll after a review.
-* ta/glossary (2013-04-15) 4 commits
- (merged to 'next' on 2013-04-19 at 63ee8a4)
- + glossary: improve definitions of refspec and pathspec
- + The name of the hash function is "SHA-1", not "SHA1"
- + glossary: improve description of SHA-1 related topics
- + glossary: remove outdated/misleading/irrelevant entries
+* jk/commit-info-slab (2013-04-19) 3 commits
+ - commit-slab: introduce a macro to define a slab for new type
+ - commit-slab: avoid large realloc
+ - commit: allow associating auxiliary info on-demand
+ Technology demonstration to show a way we could use unbound number
+ of flag bits on commit objects.
-* th/bisect-final-log (2013-04-15) 1 commit
- (merged to 'next' on 2013-04-19 at 89d2041)
- + bisect: Store first bad commit as comment in log file
- Leave a commit to note what the final outcome was in the bisect log
- file.
+* jn/config-ignore-inaccessible (2013-04-15) 1 commit
+ - config: allow inaccessible configuration under $HOME
-* tr/copy-revisions-from-stdin (2013-04-16) 1 commit
- (merged to 'next' on 2013-04-16 at d882870)
- + read_revisions_from_stdin: make copies for handle_revision_arg
+ When $HOME is misconfigured to point at an unreadable directory, we
+ used to complain and die. This loosens the check.
- A fix to a long-standing issue in the command line parser for
- revisions, which was triggered by mv/sequence-pick-error-diag topic.
+ I do not think we agreed that this is a good idea, though.
--------------------------------------------------
-[New Topics]
+[Cooking]
* jh/checkout-auto-tracking (2013-04-21) 8 commits
(merged to 'next' on 2013-04-22 at 2356700)
Will cook in 'next'.
-* mg/more-textconv (2013-04-19) 6 commits
+* mg/more-textconv (2013-04-23) 7 commits
+ - git grep: honor textconv by default
- grep: honor --textconv for the case rev:path
- grep: allow to use textconv filters
- t7008: demonstrate behavior of grep with textconv
- show: honor --textconv for blobs
- t4030: demonstrate behavior of show with textconv
- Will be rerolled.
-
-
-* jk/receive-pack-deadlocks-with-early-failure (2013-04-19) 1 commit
- (merged to 'next' on 2013-04-22 at 1e27177)
- + receive-pack: close sideband fd on early pack errors
-
- When receive-pack detects error in the pack header it received in
- order to decide which of unpack-objects or index-pack to run, it
- returned without closing the error stream, which led to a hang
- sideband thread.
-
- Will fast-track to 'master'.
-
-
-* fc/untracked-zsh-prompt (2013-04-21) 1 commit
- (merged to 'next' on 2013-04-22 at 472da3e)
- + prompt: fix untracked files for zsh
-
- Will fast-track to 'master'.
+ Rerolld. I am not sure if I like "show <blob>" and "grep" that use
+ textconv by default, though.
* jn/glossary-revision (2013-04-21) 1 commit
Waiting for comments.
---------------------------------------------------
-[Stalled]
-
-* jc/format-patch (2013-04-22) 2 commits
- - format-patch: --inline-single
- - format-patch: rename "no_inline" field
-
- A new option to send a single patch to the standard output to be
- appended at the bottom of a message. I personally have no need for
- this, but it was easy enough to cobble together. Tests, docs and
- stripping out more MIMEy stuff are left as exercises to interested
- parties.
-
- Not ready for inclusion.
-
-
-* jk/gitweb-utf8 (2013-04-08) 4 commits
- - gitweb: Fix broken blob action parameters on blob/commitdiff pages
- - gitweb: Don't append ';js=(0|1)' to external links
- - gitweb: Make feed title valid utf8
- - gitweb: Fix utf8 encoding for blob_plain, blobdiff_plain, commitdiff_plain, and patch
-
- Various fixes to gitweb.
-
- Waiting for a reroll after a review.
-
-
-* jk/commit-info-slab (2013-04-19) 3 commits
- - commit-slab: introduce a macro to define a slab for new type
- - commit-slab: avoid large realloc
- - commit: allow associating auxiliary info on-demand
-
- Technology demonstration to show a way we could use unbound number
- of flag bits on commit objects.
-
-
-* jn/config-ignore-inaccessible (2013-04-15) 1 commit
- - config: allow inaccessible configuration under $HOME
-
- When $HOME is misconfigured to point at an unreadable directory, we
- used to complain and die. This loosens the check.
-
- I do not think we agreed that this is a good idea, though.
-
---------------------------------------------------
-[Cooking]
* jc/prune-all (2013-04-18) 3 commits
(merged to 'next' on 2013-04-22 at b00ccf6)
+ api-parse-options.txt: document "no-" for non-boolean options
+ git-gc.txt, git-reflog.txt: document new expiry options
+ date.c: add parse_expiry_date()
+ (this branch is used by mh/packed-refs-various.)
We used the approxidate() parser for "--expire=<timestamp>" options
of various commands, but it is better to treat --expire=all and
Will cook in 'next'.
-* nd/pretty-formats (2013-04-18) 13 commits
- (merged to 'next' on 2013-04-22 at 3d63014)
- + pretty: support %>> that steal trailing spaces
- + pretty: support truncating in %>, %< and %><
- + pretty: support padding placeholders, %< %> and %><
- + pretty: add %C(auto) for auto-coloring
- + pretty: split color parsing into a separate function
- + pretty: two phase conversion for non utf-8 commits
- + utf8.c: add reencode_string_len() that can handle NULs in string
- + utf8.c: add utf8_strnwidth() with the ability to skip ansi sequences
- + utf8.c: move display_mode_esc_sequence_len() for use by other functions
- + pretty: share code between format_decoration and show_decorations
- + pretty-formats.txt: wrap long lines
- + pretty: get the correct encoding for --pretty:format=%e
- + pretty: save commit encoding from logmsg_reencode if the caller needs it
-
- pretty-printing body of the commit that is stored in non UTF-8
- encoding did not work well. The early part of this series fixes
- it. And then it adds %C(auto) specifier that turns the coloring on
- when we are emitting to the terminal, and adds column-aligning
- format directives.
-
- Will merge to 'master'.
-
-
-* kb/status-ignored-optim-2 (2013-04-15) 14 commits
- (merged to 'next' on 2013-04-21 at d2a5c70)
- + dir.c: git-status --ignored: don't scan the work tree twice
- + dir.c: git-status --ignored: don't scan the work tree three times
- + dir.c: git-status: avoid is_excluded checks for tracked files
- + dir.c: replace is_path_excluded with now equivalent is_excluded API
- + dir.c: unify is_excluded and is_path_excluded APIs
- + dir.c: move prep_exclude
- + dir.c: factor out parts of last_exclude_matching for later reuse
- + dir.c: git-clean -d -X: don't delete tracked directories
- + dir.c: make 'git-status --ignored' work within leading directories
- + dir.c: git-status --ignored: don't list empty directories as ignored
- + dir.c: git-ls-files --directories: don't hide empty directories
- + dir.c: git-status --ignored: don't list empty ignored directories
- + dir.c: git-status --ignored: don't list files in ignored directories
- + dir.c: git-status --ignored: don't drop ignored directories
-
- Rerolls kb/status-ignored-optim topic (reverted from 'next').
- With help from Karsten, conflicts with as/check-ignore topic have
- been sorted out and it is now in 'pu'.
-
- Will merge to 'master'.
-
-
* as/check-ignore (2013-04-11) 5 commits
(merged to 'next' on 2013-04-21 at 7515aa8)
+ Documentation: add caveats about I/O buffering for check-{attr,ignore}
The test in the second from the tip needs to be updated.
-* mh/packed-refs-various (2013-04-15) 33 commits
+* mh/packed-refs-various (2013-04-23) 33 commits
- refs: handle the main ref_cache specially
- refs: change do_for_each_*() functions to take ref_cache arguments
- pack_one_ref(): do some cheap tests before a more expensive one
- refs: document do_for_each_ref() and do_one_ref()
- refs: document the fields of struct ref_value
- refs: document flags constants REF_*
+ (this branch uses jc/prune-all.)
Updates reading and updating packed-refs file, correcting corner
case bugs.
Will merge to 'master'.
-* jn/gitweb-install-doc (2013-04-17) 2 commits
- (merged to 'next' on 2013-04-22 at a5d4812)
- + gitweb/INSTALL: GITWEB_CONFIG_SYSTEM is for backward compatibility
- + gitweb/INSTALL: Simplify description of GITWEB_CONFIG_SYSTEM
-
- Reword gitweb configuration instrutions.
-
- Will merge to 'master'.
-
-
* fc/transport-helper-error-reporting (2013-04-17) 9 commits
(merged to 'next' on 2013-04-22 at 5ba6467)
+ transport-helper: update remote helper namespace
Will cook in 'next'.
-* jl/submodule-mv (2013-04-11) 4 commits
+* jl/submodule-mv (2013-04-23) 5 commits
+ (merged to 'next' on 2013-04-23 at c04f574)
+ + submodule.c: duplicate real_path's return value
(merged to 'next' on 2013-04-19 at 45ae3c9)
+ rm: delete .gitmodules entry of submodules removed from the work tree
+ Teach mv to update the path entry in .gitmodules for moved submodules
Migrate the rest of codebase to use "struct pathspec" more.
- Will be rerolled.
+ This has nasty conflicts with kb/status-ignored-optim-2,
+ as/check-ignore and tr/line-log; I've already asked Duy to hold
+ this and later rebase on top of them.
* tr/line-log (2013-04-22) 13 commits
Will cook in 'next' until Git 2.0.
+--------------------------------------------------
+[Discarded]
* jc/add-2.0-delete-default (2013-04-21) 1 commit
- git add <pathspec>... defaults to "-A"
- Will cook in 'next' until Git 2.0.
-
+ Superseded by jc/add-2.0-ignore-removal