Browse Source

What's cooking (2013/04 #08)

todo
Junio C Hamano 12 years ago
parent
commit
35e1dc2fe4
  1. 389
      whats-cooking.txt

389
whats-cooking.txt

@ -1,10 +1,10 @@ @@ -1,10 +1,10 @@
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
@ -23,161 +23,173 @@ of the repositories listed at @@ -23,161 +23,173 @@ of the repositories listed at
--------------------------------------------------
[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)
@ -199,7 +211,8 @@ of the repositories listed at @@ -199,7 +211,8 @@ of the repositories listed at
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
@ -207,26 +220,8 @@ of the repositories listed at @@ -207,26 +220,8 @@ of the repositories listed at
- 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
@ -263,58 +258,13 @@ of the repositories listed at @@ -263,58 +258,13 @@ of the repositories listed at

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
@ -325,55 +275,6 @@ of the repositories listed at @@ -325,55 +275,6 @@ of the repositories listed at
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}
@ -389,7 +290,7 @@ of the repositories listed at @@ -389,7 +290,7 @@ of the repositories listed at
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
@ -423,6 +324,7 @@ of the repositories listed at @@ -423,6 +324,7 @@ of the repositories listed at
- 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.
@ -442,16 +344,6 @@ of the repositories listed at @@ -442,16 +344,6 @@ of the repositories listed at
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
@ -481,7 +373,9 @@ of the repositories listed at @@ -481,7 +373,9 @@ of the repositories listed at
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
@ -550,7 +444,9 @@ of the repositories listed at @@ -550,7 +444,9 @@ of the repositories listed at

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
@ -583,9 +479,10 @@ of the repositories listed at @@ -583,9 +479,10 @@ of the repositories listed at

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

Loading…
Cancel
Save