To: git@vger.kernel.org
Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Jan 2013, #03; Sun, 6)
-X-master-at: 32238aeb730fda0f66ccc6ec2f1e342af8b9fd04
-X-next-at: 6e0eed0d38e507b7cf6c43be8a89ad15eb9aab5e
+Subject: What's cooking in git.git (Jan 2013, #04; Wed, 9)
+X-master-at: 44fe83502edf5391bb3a5997cab01794b4568062
+X-next-at: ffbe6f75280588398438a571a8a937328d87c3a3
-What's cooking in git.git (Jan 2013, #03; Sun, 6)
+What's cooking in git.git (Jan 2013, #04; Wed, 9)
--------------------------------------------------
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 tip of 'next' will be rewound and rebuilt shortly, kicking a
-couple of topics back to 'pu' and reordering the remainder as
-needed.
+So far, about 60 topics, most of which have been cooking since the
+previous cycle, have been graduated to the 'master' branch in
+preparation for the next release, which tentatively is called 1.8.2.
+Many of these early topics are bugfixes and expected to later land
+in the 'maint' branch for 1.8.1.1 release as well.
-As usual, this cycle is expected to last for 8 to 10 weeks. To
-ensure the quality of the end result, let's merge topics in flight
-earlier than previous cycles to 'next' and fix issues in-tree.
+As usual, this cycle is expected to last for 8 to 10 weeks, with a
+preview -rc0 sometime in the middle of next month.
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
--------------------------------------------------
-[Graduated to "master"]
+[New Topics]
-* cr/push-force-tag-update (2012-12-03) 10 commits
- (merged to 'next' on 2012-12-04 at af2e3a9)
- + push: allow already-exists advice to be disabled
- + push: rename config variable for more general use
- + push: cleanup push rules comment
- + push: clarify rejection of update to non-commit-ish
- + push: require force for annotated tags
- + push: require force for refs under refs/tags/
- + push: flag updates that require force
- + push: keep track of "update" state separately
- + push: add advice for rejected tag reference
- + push: return reject reasons as a bitset
+* nz/send-email-headers-are-case-insensitive (2013-01-06) 1 commit
+ - git-send-email: treat field names as case-insensitively
- Require "-f" for push to update a tag, even if it is a fast-forward.
+ When user spells "cc:" in lowercase in the fake "header" in the
+ trailer part, send-email failed to pick up the addresses from
+ there. As e-mail headers field names are case insensitive, this
+ script should follow suit and treat "cc:" and "Cc:" the same way.
+ Will merge to 'next'.
-* fc/fast-export-fixes (2012-12-03) 15 commits
- (merged to 'next' on 2012-12-03 at f9df523)
- + fast-export: make sure updated refs get updated
- + fast-export: don't handle uninteresting refs
- + fast-export: fix comparison in tests
- + fast-export: trivial cleanup
- + remote-testgit: implement the "done" feature manually
- + remote-testgit: report success after an import
- + remote-testgit: exercise more features
- + remote-testgit: cleanup tests
- + remote-testgit: remove irrelevant test
- + remote-testgit: remove non-local functionality
- + Add new simplified git-remote-testgit
- + Rename git-remote-testgit to git-remote-testpy
- + remote-helpers: fix failure message
- + remote-testgit: fix direction of marks
- + fast-export: avoid importing blob marks
- Various updates to fast-export used in the context of the remote
- helper interface.
+* mk/complete-tcsh (2013-01-07) 1 commit
+ - Prevent space after directories in tcsh completion
+ Update tcsh command line completion so that an unwanted space is
+ not added to a single directory name.
-* ja/directory-attrs (2012-12-17) 1 commit
- (merged to 'next' on 2012-12-17 at ced8e73)
- + Add directory pattern matching to attributes
+ Will merge to 'next'.
- The attribute mechanism didn't allow limiting attributes to be
- applied to only a single directory itself with "path/" like the
- exclude mechanism does.
+* dg/subtree-fixes (2013-01-08) 7 commits
+ - contrib/subtree: mkdir the manual directory if needed
+ - contrib/subtree: honor $(DESTDIR)
+ - contrib/subtree: fix synopsis and command help
+ - contrib/subtree: better error handling for "add"
+ - contrib/subtree: add --unannotate option
+ - contrib/subtree: use %B for split Subject/Body
+ - t7900: remove test number comments
-* jc/fetch-ignore-symref (2012-12-11) 1 commit
- (merged to 'next' on 2012-12-17 at 370e2c8)
- + fetch: ignore wildcarded refspecs that update local symbolic refs
+ contrib/subtree updates.
- Avoid false error from an attempt to update local symbolic ref via
- fetch.
+ Will merge to 'next'.
-* jc/format-color-auto (2012-12-17) 2 commits
- (merged to 'next' on 2012-12-18 at 5aaac94)
- + log --format: teach %C(auto,black) to respect color config
- + t6006: clean up whitespace
+* ap/log-mailmap (2013-01-08) 11 commits
+ - log --use-mailmap: optimize for cases without --author/--committer search
+ - log: add log.mailmap configuration option
+ - log: grep author/committer using mailmap
+ - test: add test for --use-mailmap option
+ - log: add --use-mailmap option
+ - pretty: use mailmap to display username and email
+ - mailmap: add mailmap structure to rev_info and pp
+ - mailmap: simplify map_user() interface
+ - mailmap: remove email copy and length limitation
+ - Use split_ident_line to parse author and committer
+ - string-list: allow case-insensitive string list
- Introduce "log --format=%C(auto,blue)Foo%C(auto,reset)" that does
- not color its output when writing to a non-terminal.
+ Teach commands in the "log" family to optionally pay attention to
+ the mailmap.
+ Will merge to 'next'.
-* jk/complete-commit-c (2012-12-15) 1 commit
- (merged to 'next' on 2012-12-18 at 75b5f21)
- + completion: complete refs for "git commit -c"
- Complete "git commmit -c foo<TAB>" into a refname that begins with
- "foo".
+* nd/upload-pack-shallow-must-be-commit (2013-01-08) 1 commit
+ - upload-pack: only accept commits from "shallow" line
+ A minor consistency check patch that does not have much relevance
+ to the real world.
-* jk/error-const-return (2012-12-15) 2 commits
- (merged to 'next' on 2012-12-22 at bf2b1cd)
- + silence some -Wuninitialized false positives
- + make error()'s constant return value more visible
+ Will merge to 'next'.
- Help compilers' flow analysis by making it more explicit that
- error() always returns -1, to reduce false "variable used
- uninitialized" warnings. Looks somewhat ugly but not too much.
+--------------------------------------------------
+[Graduated to "master"]
+* ap/merge-stop-at-prepare-commit-msg-failure (2013-01-03) 1 commit
+ (merged to 'next' on 2013-01-07 at 6790566)
+ + merge: Honor prepare-commit-msg return code
-* jk/fsck-dot-in-trees (2012-11-28) 2 commits
- (merged to 'next' on 2012-11-28 at 519dabc)
- + fsck: warn about ".git" in trees
- + fsck: warn about '.' and '..' in trees
+ Originally merged to 'next' on 2013-01-04
+ "git merge" started calling prepare-commit-msg hook like "git
+ commit" does some time ago, but forgot to pay attention to the exit
+ status of the hook. t7505 may want a general clean-up but that is
+ a different topic.
-* jk/mailmap-from-blob (2012-12-13) 5 commits
- (merged to 'next' on 2012-12-17 at 14b7cdc)
- + mailmap: default mailmap.blob in bare repositories
- + mailmap: fix some documentation loose-ends for mailmap.blob
- + mailmap: clean up read_mailmap error handling
- + mailmap: support reading mailmap from blobs
- + mailmap: refactor mailmap parsing for non-file sources
- Allow us to read, and default to read, mailmap files from the tip
- of the history in bare repositories. This will help running tools
- like shortlog in server settings.
+* as/test-name-alias-uniquely (2012-12-28) 1 commit
+ (merged to 'next' on 2013-01-07 at 3b11c25)
+ + Use longer alias names in subdirectory tests
+ Originally merged to 'next' on 2013-01-02
-* mh/unify-xml-in-imap-send-and-http-push (2012-12-02) 8 commits
- (merged to 'next' on 2012-12-03 at d677090)
- + wrap_in_html(): process message in bulk rather than line-by-line
- + wrap_in_html(): use strbuf_addstr_xml_quoted()
- + imap-send: change msg_data from storing (ptr, len) to storing strbuf
- + imap-send: correctly report errors reading from stdin
- + imap-send: store all_msgs as a strbuf
- + lf_to_crlf(): NUL-terminate msg_data::data
- + xml_entities(): use function strbuf_addstr_xml_quoted()
- + Add new function strbuf_add_xml_quoted()
+ A few short-and-bland aliases used in the tests were interfering
+ with git-custom command in user's $PATH.
- Update imap-send to reuse xml quoting code from http-push codepath,
- clean up some code, and fix a small bug.
+* cc/no-gitk-build-dependency (2012-12-18) 3 commits
+ + Makefile: replace "echo 1>..." with "echo >..."
+ + Makefile: detect when PYTHON_PATH changes
+ + Makefile: remove tracking of TCLTK_PATH
-* nd/pathspec-wildcard (2012-11-26) 4 commits
- (merged to 'next' on 2012-12-03 at eca0fcb)
- + tree_entry_interesting: do basedir compare on wildcard patterns when possible
- + pathspec: apply "*.c" optimization from exclude
- + pathspec: do exact comparison on the leading non-wildcard part
- + pathspec: save the non-wildcard length part
+ Remove leftover bits from an earlier change to move gitk in its own
+ subdirectory. Reimplementing the dependency tracking rules needs
+ to be done in gitk history separately.
- Optimize matching paths with common forms of pathspecs that contain
- wildcard characters.
+* er/python-version-requirements (2012-12-28) 1 commit
+ (merged to 'next' on 2013-01-07 at 4954e27)
+ + Add checks to Python scripts for version dependencies.
-* wk/submodule-update-remote (2012-12-19) 3 commits
- (merged to 'next' on 2012-12-22 at 7ddf897)
- + submodule add: If --branch is given, record it in .gitmodules
- + submodule update: add --remote for submodule's upstream changes
- + submodule: add get_submodule_config helper funtion
+ Originally merged to 'next' on 2013-01-02
- The beginning of 'integrate with the tip of the remote branch, not
- the commit recorded in the superproject gitlink' support.
+ Some python scripts we ship cannot be run with old versions of the
+ interpreter.
---------------------------------------------------
-[New Topics]
-* jk/pathspec-literal (2013-01-06) 1 commit
- - t6130-pathspec-noglob: Windows does not allow a file named "f*"
+* er/stop-recommending-parsecvs (2012-12-28) 1 commit
+ (merged to 'next' on 2013-01-07 at 689f28f)
+ + Remove the suggestion to use parsecvs, which is currently broken.
- Will merge to 'next' and 'master' as a quick "oops" fix.
+ Originally merged to 'next' on 2013-01-02
+ Stop recommending a defunct third-party software.
-* as/dir-c-cleanup (2012-12-28) 10 commits
- - dir.c: rename free_excludes() to clear_exclude_list()
- - dir.c: refactor is_path_excluded()
- - dir.c: refactor is_excluded()
- - dir.c: refactor is_excluded_from_list()
- - dir.c: rename excluded() to is_excluded()
- - dir.c: rename excluded_from_list() to is_excluded_from_list()
- - dir.c: rename path_excluded() to is_path_excluded()
- - dir.c: rename cryptic 'which' variable to more consistent name
- - Improve documentation and comments regarding directory traversal API
- - api-directory-listing.txt: update to match code
- (this branch is used by as/check-ignore.)
- Separated an earlier and more solidly done bits from the other
- topic.
+* fc/remote-bzr (2013-01-02) 9 commits
+ (merged to 'next' on 2013-01-07 at f8c0b76)
+ + remote-bzr: detect local repositories
+ + remote-bzr: add support for older versions of bzr
+ + remote-bzr: add support to push special modes
+ + remote-bzr: add support for fecthing special modes
+ + remote-bzr: add simple tests
+ + remote-bzr: update working tree upon pushing
+ + remote-bzr: add support for remote repositories
+ + remote-bzr: add support for pushing
+ + Add new remote-bzr transport helper
- Will merge to 'next'.
+ Originally merged to 'next' on 2013-01-04
+ New remote helper for bzr, with minimum fix squashed in.
-* jk/config-uname (2013-01-03) 1 commit
- - Makefile: hoist uname autodetection to config.mak.uname
- Move the bits to set fallback default based on the platform from
- the main Makefile to a separate file, so that it can be included in
- Makefiles in subdirectories.
+* jc/apply-trailing-blank-removal (2012-10-12) 1 commit
+ + apply.c:update_pre_post_images(): the preimage can be truncated
- Will merge to 'next'.
+ Fix to update_pre_post_images() that did not take into account the
+ possibility that whitespace fix could shrink the preimage and
+ change the number of lines in it.
+
+
+* jc/submittingpatches (2013-01-02) 4 commits
+ (merged to 'next' on 2013-01-07 at 1cc3b8e)
+ + SubmittingPatches: give list and maintainer addresses
+ + SubmittingPatches: remove overlong checklist
+ + SubmittingPatches: mention subsystems with dedicated repositories
+ + SubmittingPatches: who am I and who cares?
+ Originally merged to 'next' on 2013-01-04
-* jc/push-2.0-default-to-simple (2013-01-04) 10 commits
- - push: switch default from "matching" to "simple"
- - t9401: do not assume the "matching" push is the default
- - t9400: do not assume the "matching" push is the default
- - t7406: do not assume the "matching" push is the default
- - t5531: do not assume the "matching" push is the default
- - t5519: do not assume the "matching" push is the default
- - t5517: do not assume the "matching" push is the default
- - t5516: do not assume the "matching" push is the default
- - t5505: do not assume the "matching" push is the default
- - t5404: do not assume the "matching" push is the default
+ Streamline the document and update with a few e-mail addresses the
+ patches should be sent to.
- Will merge to 'next' and cook there until Git 2.0.
+* jk/enable-test-lint-by-default (2013-01-03) 1 commit
+ (merged to 'next' on 2013-01-07 at 2a77155)
+ + tests: turn on test-lint by default
+
+ Originally merged to 'next' on 2013-01-04
-* jk/maint-fast-import-doc-dedup-done (2013-01-05) 1 commit
- - git-fast-import(1): remove duplicate "--done" option
+ We had two simple and quick tests to catch common mistakes when
+ writing test scripts, but they weren't run by default when running
+ tests.
- Will merge to 'next' and 'master' as a quick "oops" fix.
+
+* jk/maint-fast-import-doc-dedup-done (2013-01-07) 1 commit
+ (merged to 'next' on 2013-01-07 at af6a054)
+ + git-fast-import(1): remove duplicate '--done' option
The "logical order" reorganization can come after that is done and
can cook longer in 'next'.
-* jk/unify-exit-code-by-receiving-signal (2013-01-06) 1 commit
- - run-command: encode signal death as a positive integer
+* jk/pathspec-literal (2013-01-06) 1 commit
+ (merged to 'next' on 2013-01-07 at f0725cc)
+ + t6130-pathspec-noglob: Windows does not allow a file named "f*"
- The internal logic had to deal with two representations of a death
- of a child process by a signal.
+ Finishing touches to unbreak a test on Windows.
- Will merge to 'next'.
+* jn/less-reconfigure (2013-01-02) 1 commit
+ (merged to 'next' on 2013-01-07 at 04c11cb)
+ + build: do not automatically reconfigure unless configure.ac changed
-* jl/interrupt-clone-remove-separate-git-dir (2013-01-05) 1 commit
- - clone: support atomic operation with --separate-git-dir
+ Originally merged to 'next' on 2013-01-02
- When "git clone --separate-git-dir" is interrupted, we failed to
- remove the real location we created the repository.
+ When autoconf is used, any build on a different commit always ran
+ "config.status --recheck" even when unnecessary.
- Will merge to 'next'.
+* jn/warn-on-inaccessible-loosen (2012-10-14) 4 commits
+ + config: exit on error accessing any config file
+ + doc: advertise GIT_CONFIG_NOSYSTEM
+ + config: treat user and xdg config permission problems as errors
+ + config, gitignore: failure to access with ENOTDIR is ok
-* rs/leave-base-name-in-name-field-of-tar (2013-01-05) 1 commit
- - archive-tar: split long paths more carefully
+ Deal with a situation where .config/git is a file and we notice
+ .config/git/config is not readable due to ENOTDIR, not ENOENT.
- Improve compatibility with implementations of "tar" that do not
- like empty name field in header (with the additional prefix field
- holding everything).
- Will merge to 'next'.
+* kb/maint-bundle-doc (2013-01-01) 2 commits
+ (merged to 'next' on 2013-01-07 at 3d2b1ea)
+ + Documentation: full-ness of a bundle is significant for cloning
+ + Documentation: correct example restore from bundle
+ Originally merged to 'next' on 2013-01-04
-* as/api-allocation-doc (2013-01-06) 1 commit
- - api-allocation-growing.txt: encourage better variable naming
+ Update an example in the "git bundle" documentation.
- Will merge to 'next'.
+* mz/oneway-merge-wo-u-no-lstat (2012-12-20) 1 commit
+ + oneway_merge(): only lstat() when told to update worktree
-* jc/comment-cygwin-win32api-in-makefile (2013-01-06) 1 commit
- - Makefile: add comment on CYGWIN_V15_WIN32API
+ Optimize "read-tree -m <tree-ish>" without "-u".
- Will merge to 'next'.
+* nd/maint-branch-desc-doc (2013-01-03) 5 commits
+ (merged to 'next' on 2013-01-07 at 5117679)
+ + format-patch: pick up branch description when no ref is specified
+ + format-patch: pick up correct branch name from symbolic ref
+ + t4014: a few more tests on cover letter using branch description
+ + branch: delete branch description if it's empty
+ + config.txt: a few lines about branch.<name>.description
-* jn/xml-depends-on-asciidoc-conf (2013-01-06) 1 commit
- - docs: manpage XML depends on asciidoc.conf
+ Originally merged to 'next' on 2013-01-04
- Will merge to 'next'.
+ Teach various forms of "format-patch" command line to identify what
+ branch the patches are taken from, so that the branch description
+ is picked up in more cases.
-* nd/clone-no-separate-git-dir-with-bare (2013-01-06) 1 commit
- - clone: forbid --bare --separate-git-dir <dir>
+* os/gitweb-highlight-uncaptured (2013-01-01) 1 commit
+ (merged to 'next' on 2013-01-07 at 5db0558)
+ + gitweb: fix error in sanitize when highlight is enabled
- Expecting a reroll.
- $gmane/212863
+ Originally merged to 'next' on 2013-01-04
+ The code to sanitize control characters before passing it to
+ "highlight" filter lost known-to-be-safe control characters by
+ mistake.
-* nd/parse-pathspec (2013-01-06) 21 commits
- - Convert more init_pathspec() to parse_pathspec()
- - Convert add_files_to_cache to take struct pathspec
- - Convert {read,fill}_directory to take struct pathspec
- - Convert refresh_index to take struct pathspec
- - Convert report_path_error to take struct pathspec
- - checkout: convert read_tree_some to take struct pathspec
- - Convert unmerge_cache to take struct pathspec
- - Convert read_cache_preload() to take struct pathspec
- - add: convert to use parse_pathspec
- - archive: convert to use parse_pathspec
- - ls-files: convert to use parse_pathspec
- - rm: convert to use parse_pathspec
- - checkout: convert to use parse_pathspec
- - rerere: convert to use parse_pathspec
- - status: convert to use parse_pathspec
- - commit: convert to use parse_pathspec
- - clean: convert to use parse_pathspec
- - Export parse_pathspec() and convert some get_pathspec() calls
- - pathspec: make sure the prefix part is wildcard-clean
- - Add parse_pathspec() that converts cmdline args to struct pathspec
- - pathspec: save the non-wildcard length part
- Uses the parsed pathspec structure in more places where we used to
- use the raw "array of strings" pathspec.
+* ta/remove-stale-translated-tut (2012-12-27) 1 commit
+ (merged to 'next' on 2013-01-07 at 47b1056)
+ + Remove Documentation/pt_BR/gittutorial.txt
- Unfortunately, this conflicts a couple of topics in flight. I tried
- to be careful while resolving conflicts, though.
+ Originally merged to 'next' on 2013-01-02
+ Remove a translation of a document that was left stale.
-* rs/zip-tests (2013-01-06) 4 commits
- - t5003: check if unzip supports symlinks
- - t5000, t5003: move ZIP tests into their own script
- - t0024, t5000: use test_lazy_prereq for UNZIP
- - t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
- Updates zip tests to skip some that cannot be handled on platform
- unzip.
+* tb/test-t9020-no-which (2013-01-01) 1 commit
+ (merged to 'next' on 2013-01-07 at 9661948)
+ + t9020: which is not portable
- I've renamed the t5002 in the original to t5003 to avoid name
- clashes with another topic in flight.
+ Originally merged to 'next' on 2013-01-04
- Will merge to 'next'.
+ Test portability update.
-* rs/zip-with-uncompressed-size-in-the-header (2013-01-06) 1 commit
- - archive-zip: write uncompressed size into header even with streaming
+* tb/test-t9810-no-sed-i (2013-01-01) 1 commit
+ (merged to 'next' on 2013-01-07 at cd82266)
+ + t9810: Do not use sed -i
- Improve compatibility of our zip output to fill uncompressed size
- in the header, which we can do without seeking back (even though it
- should not be necessary).
+ Originally merged to 'next' on 2013-01-04
- Will merge to 'next'.
+ Test portability update.
--------------------------------------------------
[Stalled]
* jl/submodule-deinit (2012-12-04) 1 commit
- (merged to 'next' on 2012-12-07 at ea772f0)
- + submodule: add 'deinit' command
+ - submodule: add 'deinit' command
There was no Porcelain way to say "I no longer am interested in
this submodule", once you express your interest in a submodule with
"submodule init". "submodule deinit" is the way to do so.
- But this does not yet do so (does not remove the checkout of the
- submodule). The design discussion petered out.
-
- http://thread.gmane.org/gmane.comp.version-control.git/210867/focus=211456
-
- Will kick back to 'pu'.
+ Expecting a reroll.
+ $gmane/212884
* jk/lua-hackery (2012-10-07) 6 commits
* rc/maint-complete-git-p4 (2012-09-24) 1 commit
- (merged to 'next' on 2012-10-29 at af52cef)
- + Teach git-completion about git p4
+ - Teach git-completion about git p4
Comment from Pete will need to be addressed ($gmane/206172).
- Will kick back to 'pu'.
-
* jc/maint-name-rev (2012-09-17) 7 commits
- describe --contains: use "name-rev --algorithm=weight"
Stalled mostly due to lack of responses.
-* jc/blame-no-follow (2012-09-21) 2 commits
- - blame: pay attention to --no-follow
- - diff: accept --no-follow option
-
- Teaches "--no-follow" option to "git blame" to disable its
- whole-file rename detection.
-
- Stalled mostly due to lack of responses.
-
-
* jc/add-delete-default (2012-08-13) 1 commit
- git add: notice removal of tracked paths by default
Resurrected from graveyard, as I thought it was a worthwhile thing
to do in the longer term.
- Waiting for comments.
+ Stalled mostly due to lack of responses.
* mb/remote-default-nn-origin (2012-07-11) 6 commits
--------------------------------------------------
[Cooking]
-* jn/less-reconfigure (2013-01-02) 1 commit
- (merged to 'next' on 2013-01-02 at e5cd6cf)
- + build: do not automatically reconfigure unless configure.ac changed
+* jc/blame-no-follow (2012-09-21) 2 commits
+ - blame: pay attention to --no-follow
+ - diff: accept --no-follow option
- When autoconf is used, any build on a different commit always ran
- "config.status --recheck" even when unnecessary.
+ Teaches "--no-follow" option to "git blame" to disable its
+ whole-file rename detection.
+
+ Will merge to 'next'.
+
+
+* as/dir-c-cleanup (2012-12-28) 10 commits
+ (merged to 'next' on 2013-01-08 at 5aee090)
+ + dir.c: rename free_excludes() to clear_exclude_list()
+ + dir.c: refactor is_path_excluded()
+ + dir.c: refactor is_excluded()
+ + dir.c: refactor is_excluded_from_list()
+ + dir.c: rename excluded() to is_excluded()
+ + dir.c: rename excluded_from_list() to is_excluded_from_list()
+ + dir.c: rename path_excluded() to is_path_excluded()
+ + dir.c: rename cryptic 'which' variable to more consistent name
+ + Improve documentation and comments regarding directory traversal API
+ + api-directory-listing.txt: update to match code
+ (this branch is used by as/check-ignore.)
+
+ Refactor and generally clean up the directory traversal API
+ implementation.
Will merge to 'master'.
-* ap/merge-stop-at-prepare-commit-msg-failure (2013-01-03) 1 commit
- (merged to 'next' on 2013-01-04 at 251e88b)
- + merge: Honor prepare-commit-msg return code
+* jk/config-uname (2013-01-03) 1 commit
+ (merged to 'next' on 2013-01-08 at f986500)
+ + Makefile: hoist uname autodetection to config.mak.uname
- "git merge" started calling prepare-commit-msg hook like "git
- commit" does some time ago, but forgot to pay attention to the exit
- status of the hook. t7505 may want a general clean-up but that is
- a different topic.
+ Move the bits to set fallback default based on the platform from
+ the main Makefile to a separate file, so that it can be included in
+ Makefiles in subdirectories.
Will merge to 'master'.
-* tb/test-shell-lint (2013-01-02) 1 commit
- (merged to 'next' on 2013-01-04 at 0289566)
- + test: Add check-non-portable-shell.pl
+* jc/push-2.0-default-to-simple (2013-01-08) 11 commits
+ (merged to 'next' on 2013-01-09 at 74c3498)
+ + doc: push.default is no longer "matching"
+ + push: switch default from "matching" to "simple"
+ + t9401: do not assume the "matching" push is the default
+ + t9400: do not assume the "matching" push is the default
+ + t7406: do not assume the "matching" push is the default
+ + t5531: do not assume the "matching" push is the default
+ + t5519: do not assume the "matching" push is the default
+ + t5517: do not assume the "matching" push is the default
+ + t5516: do not assume the "matching" push is the default
+ + t5505: do not assume the "matching" push is the default
+ + t5404: do not assume the "matching" push is the default
- Check for common mistakes in the test scripts, based on simple
- pattern-matching.
+ Will cook in 'next' until Git 2.0 ;-).
-* jk/enable-test-lint-by-default (2013-01-03) 1 commit
- (merged to 'next' on 2013-01-04 at 65b21ad)
- + tests: turn on test-lint by default
+* jk/unify-exit-code-by-receiving-signal (2013-01-06) 1 commit
+ (merged to 'next' on 2013-01-08 at 5ebf940)
+ + run-command: encode signal death as a positive integer
- We had two simple and quick tests to catch common mistakes when
- writing test scripts, but they weren't run by default when running
- tests.
+ The internal logic had to deal with two representations of a death
+ of a child process by a signal.
Will merge to 'master'.
-* jc/doc-maintainer (2013-01-03) 2 commits
- - howto/maintain: mark titles for asciidoc
- - Documentation: update "howto maintain git"
+* jl/interrupt-clone-remove-separate-git-dir (2013-01-05) 1 commit
+ (merged to 'next' on 2013-01-08 at 568f874)
+ + clone: support atomic operation with --separate-git-dir
- Describe tools for automation that were invented since this
- document was originally written.
+ When "git clone --separate-git-dir" is interrupted, we failed to
+ remove the real location we created the repository.
+ Will merge to 'master'.
-* fc/remote-testgit-feature-done (2012-10-29) 1 commit
- - remote-testgit: properly check for errors
- In the longer term, tightening rules is a good thing to do, and
- because nobody who has worked in the remote helper area seems to be
- interested in reviewing this, I would assume they do not think
- such a retroactive tightening will affect their remote helpers. So
- let's advance this topic to see what happens.
+* rs/leave-base-name-in-name-field-of-tar (2013-01-05) 1 commit
+ (merged to 'next' on 2013-01-08 at 98f325e)
+ + archive-tar: split long paths more carefully
+ Improve compatibility with implementations of "tar" that do not
+ like empty name field in header (with the additional prefix field
+ holding everything).
-* fc/remote-bzr (2013-01-02) 9 commits
- (merged to 'next' on 2013-01-04 at 7791dcb)
- + remote-bzr: detect local repositories
- + remote-bzr: add support for older versions of bzr
- + remote-bzr: add support to push special modes
- + remote-bzr: add support for fecthing special modes
- + remote-bzr: add simple tests
- + remote-bzr: update working tree upon pushing
- + remote-bzr: add support for remote repositories
- + remote-bzr: add support for pushing
- + Add new remote-bzr transport helper
+ Will merge to 'master'.
- New remote helper for bzr, with minimum fix squashed in.
- Will merge to 'master'.
+* as/api-allocation-doc (2013-01-06) 1 commit
+ (merged to 'next' on 2013-01-08 at c80b544)
+ + api-allocation-growing.txt: encourage better variable naming
+ Will merge to 'master'.
-* mo/cvs-server-updates (2012-12-09) 18 commits
- - t9402: Use TABs for indentation
- - t9402: Rename check.cvsCount and check.list
- - t9402: Simplify git ls-tree
- - t9402: Add missing &&; Code style
- - t9402: No space after IO-redirection
- - t9402: Dont use test_must_fail cvs
- - t9402: improve check_end_tree() and check_end_full_tree()
- - t9402: sed -i is not portable
- - cvsserver Documentation: new cvs ... -r support
- - cvsserver: add t9402 to test branch and tag refs
- - cvsserver: support -r and sticky tags for most operations
- - cvsserver: Add version awareness to argsfromdir
- - cvsserver: generalize getmeta() to recognize commit refs
- - cvsserver: implement req_Sticky and related utilities
- - cvsserver: add misc commit lookup, file meta data, and file listing functions
- - cvsserver: define a tag name character escape mechanism
- - cvsserver: cleanup extra slashes in filename arguments
- - cvsserver: factor out git-log parsing logic
-
- As nobody seems to be stepping up to review this, I am tempted to
- merge this to 'next and see who screams.
- Will merge to 'next'.
+* jc/comment-cygwin-win32api-in-makefile (2013-01-06) 1 commit
+ (merged to 'next' on 2013-01-08 at dea04e8)
+ + Makefile: add comment on CYGWIN_V15_WIN32API
+ Will merge to 'master'.
-* jc/submittingpatches (2013-01-02) 4 commits
- (merged to 'next' on 2013-01-04 at 060ffb0)
- + SubmittingPatches: give list and maintainer addresses
- + SubmittingPatches: remove overlong checklist
- + SubmittingPatches: mention subsystems with dedicated repositories
- + SubmittingPatches: who am I and who cares?
- Streamline the document and update with a few e-mail addresses the
- patches should be sent to.
+* jn/xml-depends-on-asciidoc-conf (2013-01-06) 1 commit
+ (merged to 'next' on 2013-01-08 at 4faf8d4)
+ + docs: manpage XML depends on asciidoc.conf
Will merge to 'master'.
-* kb/maint-bundle-doc (2013-01-01) 2 commits
- (merged to 'next' on 2013-01-04 at 73486d9)
- + Documentation: full-ness of a bundle is significant for cloning
- + Documentation: correct example restore from bundle
+* nd/clone-no-separate-git-dir-with-bare (2013-01-06) 1 commit
+ - clone: forbid --bare --separate-git-dir <dir>
- Will merge to 'master'.
+ Expecting a reroll.
+ $gmane/212863
-* nd/maint-branch-desc-doc (2013-01-03) 5 commits
- (merged to 'next' on 2013-01-04 at d05a47f)
- + format-patch: pick up branch description when no ref is specified
- + format-patch: pick up correct branch name from symbolic ref
- + t4014: a few more tests on cover letter using branch description
- + branch: delete branch description if it's empty
- + config.txt: a few lines about branch.<name>.description
+* nd/parse-pathspec (2013-01-06) 21 commits
+ - Convert more init_pathspec() to parse_pathspec()
+ - Convert add_files_to_cache to take struct pathspec
+ - Convert {read,fill}_directory to take struct pathspec
+ - Convert refresh_index to take struct pathspec
+ - Convert report_path_error to take struct pathspec
+ - checkout: convert read_tree_some to take struct pathspec
+ - Convert unmerge_cache to take struct pathspec
+ - Convert read_cache_preload() to take struct pathspec
+ - add: convert to use parse_pathspec
+ - archive: convert to use parse_pathspec
+ - ls-files: convert to use parse_pathspec
+ - rm: convert to use parse_pathspec
+ - checkout: convert to use parse_pathspec
+ - rerere: convert to use parse_pathspec
+ - status: convert to use parse_pathspec
+ - commit: convert to use parse_pathspec
+ - clean: convert to use parse_pathspec
+ - Export parse_pathspec() and convert some get_pathspec() calls
+ - pathspec: make sure the prefix part is wildcard-clean
+ - Add parse_pathspec() that converts cmdline args to struct pathspec
+ - pathspec: save the non-wildcard length part
- Teach various forms of "format-patch" command line to identify what
- branch the patches are taken from, so that the branch description
- is picked up in more cases.
+ Uses the parsed pathspec structure in more places where we used to
+ use the raw "array of strings" pathspec.
+
+ Unfortunately, this conflicts a couple of topics in flight. I tried
+ to be careful while resolving conflicts, though.
+
+ Expecting a reroll after the dust settles.
+
+
+* rs/zip-tests (2013-01-07) 4 commits
+ (merged to 'next' on 2013-01-08 at 8e37423)
+ + t5003: check if unzip supports symlinks
+ + t5000, t5003: move ZIP tests into their own script
+ + t0024, t5000: use test_lazy_prereq for UNZIP
+ + t0024, t5000: clear variable UNZIP, use GIT_UNZIP instead
+
+ Updates zip tests to skip some that cannot be handled on platform
+ unzip.
+
+ I've renamed the t5002 in the original to t5003 to avoid name
+ clashes with another topic in flight.
Will merge to 'master'.
-* tb/test-t9020-no-which (2013-01-01) 1 commit
- (merged to 'next' on 2013-01-04 at 0bcf646)
- + t9020: which is not portable
+* rs/zip-with-uncompressed-size-in-the-header (2013-01-06) 1 commit
+ (merged to 'next' on 2013-01-08 at d9ec30e)
+ + archive-zip: write uncompressed size into header even with streaming
+
+ Improve compatibility of our zip output to fill uncompressed size
+ in the header, which we can do without seeking back (even though it
+ should not be necessary).
Will merge to 'master'.
-* tb/test-t9810-no-sed-i (2013-01-01) 1 commit
- (merged to 'next' on 2013-01-04 at 0da03e6)
- + t9810: Do not use sed -i
+* tb/test-shell-lint (2013-01-02) 1 commit
+ (merged to 'next' on 2013-01-07 at 0bca54a)
+ + test: Add check-non-portable-shell.pl
+
+ Originally merged to 'next' on 2013-01-04
+
+ Check for common mistakes in the test scripts, based on simple
+ pattern-matching.
Will merge to 'master'.
-* aw/rebase-am-failure-detection (2012-10-11) 1 commit
- (merged to 'next' on 2013-01-02 at b9db3a2)
- + rebase: Handle cases where format-patch fails
+* jc/doc-maintainer (2013-01-03) 2 commits
+ - howto/maintain: mark titles for asciidoc
+ - Documentation: update "howto maintain git"
- Save output from format-patch command in a temporary file, just in
- case it aborts, to give a better failure-case behaviour.
+ Describe tools for automation that were invented since this
+ document was originally written.
+ Will merge to 'next'.
-* ap/status-ignored-in-ignored-directory (2013-01-06) 3 commits
- - status: always report ignored tracked directories
- (merged to 'next' on 2013-01-04 at 114fb2f)
- + git-status: Test --ignored behavior
- + dir.c: Make git-status --ignored more consistent
- Output from "git status --ignored" showed an unexpected interaction
- with "--untracked".
+* fc/remote-testgit-feature-done (2012-10-29) 1 commit
+ - remote-testgit: properly check for errors
+ In the longer term, tightening rules is a good thing to do, and
+ because nobody who has worked in the remote helper area seems to be
+ interested in reviewing this, I would assume they do not think
+ such a retroactive tightening will affect their remote helpers. So
+ let's advance this topic to see what happens.
-* ta/remove-stale-translated-tut (2012-12-27) 1 commit
- (merged to 'next' on 2013-01-02 at e70df8e)
- + Remove Documentation/pt_BR/gittutorial.txt
+ Will merge to 'next'.
- Remove a translation of a document that was left stale.
- Will merge to 'master'.
+* mo/cvs-server-updates (2012-12-09) 18 commits
+ (merged to 'next' on 2013-01-08 at 75e2d11)
+ + t9402: Use TABs for indentation
+ + t9402: Rename check.cvsCount and check.list
+ + t9402: Simplify git ls-tree
+ + t9402: Add missing &&; Code style
+ + t9402: No space after IO-redirection
+ + t9402: Dont use test_must_fail cvs
+ + t9402: improve check_end_tree() and check_end_full_tree()
+ + t9402: sed -i is not portable
+ + cvsserver Documentation: new cvs ... -r support
+ + cvsserver: add t9402 to test branch and tag refs
+ + cvsserver: support -r and sticky tags for most operations
+ + cvsserver: Add version awareness to argsfromdir
+ + cvsserver: generalize getmeta() to recognize commit refs
+ + cvsserver: implement req_Sticky and related utilities
+ + cvsserver: add misc commit lookup, file meta data, and file listing functions
+ + cvsserver: define a tag name character escape mechanism
+ + cvsserver: cleanup extra slashes in filename arguments
+ + cvsserver: factor out git-log parsing logic
+
+ Various git-cvsserver updates.
+
+ Will cook in 'next' for a while to see if anybody screams.
-* er/stop-recommending-parsecvs (2012-12-28) 1 commit
- (merged to 'next' on 2013-01-02 at fd816dd)
- + Remove the suggestion to use parsecvs, which is currently broken.
+* aw/rebase-am-failure-detection (2012-10-11) 1 commit
+ (merged to 'next' on 2013-01-07 at 9e2ee43)
+ + rebase: Handle cases where format-patch fails
- Stop recommending a defunct third-party software.
+ Originally merged to 'next' on 2013-01-02
+
+ Save output from format-patch command in a temporary file, just in
+ case it aborts, to give a better failure-case behaviour.
Will merge to 'master'.
-* as/test-name-alias-uniquely (2012-12-28) 1 commit
- (merged to 'next' on 2013-01-02 at e297810)
- + Use longer alias names in subdirectory tests
+* ap/status-ignored-in-ignored-directory (2013-01-07) 3 commits
+ - status: always report ignored tracked directories
+ (merged to 'next' on 2013-01-07 at 2a20b19)
+ + git-status: Test --ignored behavior
+ + dir.c: Make git-status --ignored more consistent
- A few short-and-bland aliases used in the tests were interfering
- with git-custom command in user's $PATH.
+ Originally merged to 'next' on 2013-01-04
- Will merge to 'master'.
+ Output from "git status --ignored" showed an unexpected interaction
+ with "--untracked".
+
+ Will merge to 'next'.
* jc/maint-fmt-merge-msg-no-edit-lose-credit (2012-12-28) 1 commit
- (merged to 'next' on 2013-01-02 at 8795e87)
+ (merged to 'next' on 2013-01-07 at 497bf10)
+ merge --no-edit: do not credit people involved in the side branch
+ Originally merged to 'next' on 2013-01-02
+
Stop spending cycles to compute information to be placed on
commented lines in "merge --no-edit".
- dir.c: use a single struct exclude_list per source of excludes
(this branch uses as/dir-c-cleanup.)
- Rerolled.
+ The test it adds seems to break under dash.
+ Expecting a reroll or fixup.
* jc/format-patch-reroll (2013-01-03) 9 commits
- (merged to 'next' on 2013-01-04 at 6840dbd)
+ (merged to 'next' on 2013-01-07 at 0e007e6)
+ format-patch: give --reroll-count a short synonym -v
+ format-patch: document and test --reroll-count
+ format-patch: add --reroll-count=$N option
+ builtin/log.c: drop redundant "numbered_files" parameter from make_cover_letter()
+ builtin/log.c: drop unused "numbered" parameter from make_cover_letter()
+ Originally merged to 'next' on 2013-01-04
+
Teach "format-patch" to prefix v4- to its output files for the
fourth iteration of a patch series, to make it easier for the
submitter to keep separate copies for iterations.
* mz/pick-unborn (2012-12-23) 2 commits
- (merged to 'next' on 2013-01-02 at 22b9951)
+ (merged to 'next' on 2013-01-07 at c6c062b)
+ learn to pick/revert into unborn branch
+ tests: move test_cmp_rev to test-lib-functions
+ Originally merged to 'next' on 2013-01-02
+
Allows "git cherry-pick $commit" when you do not have any history
behind HEAD yet.
+ Will merge to 'master'.
+
* nd/retire-fnmatch (2013-01-01) 7 commits
- (merged to 'next' on 2013-01-04 at 4dc3ff1)
+ (merged to 'next' on 2013-01-07 at ab31f9b)
+ Makefile: add USE_WILDMATCH to use wildmatch as fnmatch
+ wildmatch: advance faster in <asterisk> + <literal> patterns
+ wildmatch: make a special case for "*/" with FNM_PATHNAME
+ wildmatch: rename constants and update prototype
(this branch uses nd/wildmatch.)
+ Originally merged to 'next' on 2013-01-04
+
Replace our use of fnmatch(3) with a more feature-rich wildmatch.
A handful patches at the bottom have been moved to nd/wildmatch to
graduate as part of that branch, before this series solidifies.
-
-* os/gitweb-highlight-uncaptured (2013-01-01) 1 commit
- (merged to 'next' on 2013-01-04 at d565cdd)
- + gitweb: fix error in sanitize when highlight is enabled
-
- The code to sanitize control characters before passing it to
- "highlight" filter lost known-to-be-safe control characters by
- mistake.
-
- Will merge to 'master'.
+ Will cook in 'next' a bit longer than other topics.
* jc/merge-blobs (2012-12-26) 5 commits
- - merge-tree: fix d/f conflicts
- - merge-tree: add comments to clarify what these functions are doing
- - merge-tree: lose unused "resolve_directories"
- - merge-tree: lose unused "flags" from merge_list
- - Which merge_file() function do you mean?
+ (merged to 'next' on 2013-01-08 at 582ca38)
+ + merge-tree: fix d/f conflicts
+ + merge-tree: add comments to clarify what these functions are doing
+ + merge-tree: lose unused "resolve_directories"
+ + merge-tree: lose unused "flags" from merge_list
+ + Which merge_file() function do you mean?
Update the disused merge-tree proof-of-concept code.
- Will merge to 'next'.
-
-
-* er/python-version-requirements (2012-12-28) 1 commit
- (merged to 'next' on 2013-01-02 at 1023a3f)
- + Add checks to Python scripts for version dependencies.
-
- Some python scripts we ship cannot be run with old versions of the
- interpreter.
-
Will merge to 'master'.
$gmane/211935
-* mz/oneway-merge-wo-u-no-lstat (2012-12-20) 1 commit
- (merged to 'next' on 2012-12-22 at 87bd30e)
- + oneway_merge(): only lstat() when told to update worktree
-
- Optimize "read-tree -m <tree-ish>" without "-u".
-
- Will merge to 'master'.
-
-
-* cc/no-gitk-build-dependency (2012-12-18) 3 commits
- (merged to 'next' on 2012-12-22 at da7b2cf)
- + Makefile: replace "echo 1>..." with "echo >..."
- + Makefile: detect when PYTHON_PATH changes
- + Makefile: remove tracking of TCLTK_PATH
-
- Remove leftover bits from an earlier change to move gitk in its own
- subdirectory. Reimplementing the dependency tracking rules needs
- to be done in gitk history separately.
-
- Will merge to 'master'.
-
-
* zk/clean-report-failure (2013-01-06) 1 commit
- git-clean: Display more accurate delete messages
removed after recursing into a directory, which makes the output
confusing and even wrong.
- Rerolled.
+ Expecting a response to $gmane/212860.
* mp/complete-paths (2012-12-21) 1 commit
git-aware logic to enumerate only relevant ones.
It has been reported (no surprise) that this does not work inside
- subdirectory. $gmane/212642
-
- Waiting for area-experts' review.
-
-
-* ap/log-mailmap (2013-01-06) 10 commits
- - log: add log.mailmap configuration option
- - log: grep author/committer using mailmap
- - test: add test for --use-mailmap option
- - log: add --use-mailmap option
- - pretty: use mailmap to display username and email
- - mailmap: add mailmap structure to rev_info and pp
- - mailmap: simplify map_user() interface
- - mailmap: remove email copy and length limitation
- - Use split_ident_line to parse author and committer
- - list_lookup: create case and length search
+ subdirectory, and fixing it seems to be non-trivial. $gmane/212642
- Clean up various codepaths around mailmap and teach the "log"
- machinery to use it.
-
- Rerolled.
+ Waiting for area-experts' help.
* bc/append-signed-off-by (2013-01-01) 12 commits
$gmane/212507
-* jn/warn-on-inaccessible-loosen (2012-10-14) 4 commits
- (merged to 'next' on 2012-11-28 at 43d51c2)
- + config: exit on error accessing any config file
- + doc: advertise GIT_CONFIG_NOSYSTEM
- + config: treat user and xdg config permission problems as errors
- + config, gitignore: failure to access with ENOTDIR is ok
-
- Deal with a situation where .config/git is a file and we notice
- .config/git/config is not readable due to ENOTDIR, not ENOENT.
-
- Will merge to 'master'.
-
-
-* jc/apply-trailing-blank-removal (2012-10-12) 1 commit
- (merged to 'next' on 2012-11-26 at 3af69e7)
- + apply.c:update_pre_post_images(): the preimage can be truncated
-
- Fix to update_pre_post_images() that did not take into account the
- possibility that whitespace fix could shrink the preimage and
- change the number of lines in it.
-
- Will merge to 'master'.
-
-
* nd/wildmatch (2013-01-01) 18 commits
- (merged to 'next' on 2013-01-01 at 8c633a5)
+ (merged to 'next' on 2013-01-07 at 2a39f7d)
+ wildmatch: replace variable 'special' with better named ones
+ compat/fnmatch: respect NO_FNMATCH* even on glibc
+ wildmatch: fix "**" special case
- (merged to 'next' on 2012-12-15 at c734714)
+ t3070: Disable some failing fnmatch tests
- (merged to 'next' on 2012-11-21 at 151288f)
+ test-wildmatch: avoid Windows path mangling
- (merged to 'next' on 2012-10-25 at 510e8df)
+ Support "**" wildcard in .gitignore and .gitattributes
+ wildmatch: make /**/ match zero or more directories
+ wildmatch: adjust "**" behavior
+ ctype: make sane_ctype[] const array
(this branch is used by nd/retire-fnmatch.)
+ Originally merged to 'next' on 2013-01-01
+
Allows pathname patterns in .gitignore and .gitattributes files
with double-asterisks "foo/**/bar" to match any number of directory
hierarchies.
---------------------------------------------------
-[Discarded]
-
-* jc/doc-default-format (2013-01-03) 2 commits
- . Allow installing a non-default set of documentation
- . Allow generating a non-default set of documentation
-
- Instead of the default of generating html/man and installing man,
- you can control what "make doc" and "make install-doc" do via two
- make variables.
+ Will merge to 'master'.