What's cooking (2017/11 #04)

todo
Junio C Hamano 2017-11-14 12:46:11 +09:00
parent d9d8f5591f
commit be0495e0ad
1 changed files with 415 additions and 276 deletions

View File

@ -1,10 +1,10 @@
To: git@vger.kernel.org
Bcc: lwn@lwn.net
Subject: What's cooking in git.git (Nov 2017, #03; Wed, 8)
X-master-at: 7668cbc60578f99a4c048f8f8f38787930b8147b
X-next-at: 9af6a3dea062db2d4b3807c453d2f678c7f12e9c
Subject: What's cooking in git.git (Nov 2017, #04; Tue, 14)
X-master-at: d8df70f2739af78cab6d7f9b942e890da6fbd01d
X-next-at: 0d8980c5de90c09f1fb308c53a14d7d082f5358b

What's cooking in git.git (Nov 2017, #03; Wed, 8)
What's cooking in git.git (Nov 2017, #04; Tue, 14)
--------------------------------------------------

Here are the topics that have been cooking. Commits prefixed with
@ -20,38 +20,286 @@ of the repositories listed at

http://git-blame.blogspot.com/p/git-public-repositories.html

--------------------------------------------------
[Graduated to "master"]

* ad/5580-unc-tests-on-cygwin (2017-11-01) 1 commit
(merged to 'next' on 2017-11-07 at 34fc479da2)
+ t5580: add Cygwin support

UNC paths are also relevant in Cygwin builds and they are now
tested just like Mingw builds.


* ao/diff-populate-filespec-lstat-errorpath-fix (2017-10-29) 1 commit
(merged to 'next' on 2017-11-07 at b03241e6e5)
+ diff: fix lstat() error handling in diff_populate_filespec()

After an error from lstat(), diff_populate_filespec() function
sometimes still went ahead and used invalid data in struct stat,
which has been fixed.


* bw/diff-opt-impl-to-bitfields (2017-11-01) 8 commits
(merged to 'next' on 2017-11-07 at 8be78206ba)
+ diff: make struct diff_flags members lowercase
+ diff: remove DIFF_OPT_CLR macro
+ diff: remove DIFF_OPT_SET macro
+ diff: remove DIFF_OPT_TST macro
+ diff: remove touched flags
+ diff: add flag to indicate textconv was set via cmdline
+ diff: convert flags to be stored in bitfields
+ add, reset: use DIFF_OPT_SET macro to set a diff flag

A single-word "unsigned flags" in the diff options is being split
into a structure with many bitfields.


* dk/libsecret-unlock-to-load-fix (2017-11-04) 1 commit
(merged to 'next' on 2017-11-07 at 57d1d76c8c)
+ credential-libsecret: unlock locked secrets

The credential helper for libsecret (in contrib/) has been improved
to allow possibly prompting the end user to unlock secrets that are
currently locked (otherwise the secrets may not be loaded).


* jm/relnotes-2.15-typofix (2017-11-06) 1 commit
(merged to 'next' on 2017-11-07 at 60fc937b62)
+ fix typos in 2.15.0 release notes

Typofix.


* jm/status-ignored-files-list (2017-10-31) 4 commits
(merged to 'next' on 2017-11-07 at 682c74a2cb)
+ status: test ignored modes
+ status: document options to show matching ignored files
+ status: report matching ignored and normal untracked
+ status: add option to show ignored files differently

Originally merged to 'next' on 2017-11-01

The set of paths output from "git status --ignored" was tied
closely with its "--untracked=<mode>" option, but now it can be
controlled more flexibly. Most notably, a directory that is
ignored because it is listed to be ignored in the ignore/exclude
mechanism can be handled differently from a directory that ends up
to be ignored only because all files in it are ignored.


* js/early-config (2017-11-03) 1 commit
(merged to 'next' on 2017-11-07 at 9477c7c8ea)
+ setup: avoid double slashes when looking for HEAD

Correct start-up sequence so that a repository could be placed
immediately under the root directory again (which was broken at
around Git 2.13).


* js/mingw-full-version-in-resources (2017-11-01) 1 commit
(merged to 'next' on 2017-11-07 at 3a256b5ddc)
+ mingw: include the full version information in the resources

MinGW updates.


* js/mingw-redirect-std-handles (2017-11-02) 3 commits
(merged to 'next' on 2017-11-07 at 9af6a3dea0)
+ mingw: document the standard handle redirection
+ mingw: optionally redirect stderr/stdout via the same handle
+ mingw: add experimental feature to redirect standard handles

MinGW updates.


* js/wincred-empty-cred (2017-11-01) 2 commits
(merged to 'next' on 2017-11-07 at 43d3fcc30a)
+ wincred: handle empty username/password correctly
+ t0302: check helper can handle empty credentials

MinGW updates.


* ks/mailmap (2017-11-03) 1 commit
(merged to 'next' on 2017-11-07 at 46975637c7)
+ mailmap: use Kaartic Sivaraam's new address


* rs/hex-to-bytes-cleanup (2017-11-01) 3 commits
(merged to 'next' on 2017-11-07 at fac14770e1)
+ sha1_file: use hex_to_bytes()
+ http-push: use hex_to_bytes()
+ notes: move hex_to_bytes() to hex.c and export it

Code cleanup.


* sb/blame-config-doc (2017-11-06) 1 commit
(merged to 'next' on 2017-11-07 at 0576cb452f)
+ config: document blame configuration

Description of blame.{showroot,blankboundary,showemail,date}
configuration variables have been added to "git config --help".


* sg/travis-fixes (2017-11-02) 2 commits
(merged to 'next' on 2017-11-07 at bbf39361b6)
+ travis-ci: don't build Git for the static analysis job
+ travis-ci: fix running P4 and Git LFS tests in Linux build jobs

TravisCI build updates.

--------------------------------------------------
[New Topics]

* bw/rebase-i-ignored-submodule-fix (2017-11-07) 1 commit
- wt-status: actually ignore submodules when requested
* ad/rebase-i-serie-typofix (2017-11-09) 1 commit
(merged to 'next' on 2017-11-13 at 199e79b29e)
+ rebase -i: fix comment typo

"git rebase -i" recently started misbehaving when a submodule that
is configured with 'submodule.<name>.ignore' is dirty; this has
been corrected.
Will merge to 'master'.


* ad/submitting-patches-title-decoration (2017-11-11) 1 commit
- doc/SubmittingPatches: correct subject guidance

Doc update around use of "format-patch --subject-prefix" etc.

Will merge to 'next'.
I've edited in the tweak brought up in the discussion. Please
eyeball to sanity check.


* ar/unconfuse-three-dots (2017-11-07) 3 commits
- Documentation: revisions: add note about 3dots usages as continuation indications
- Documentation: user-manual: limit potentially confusing usage of 3dots (and 2dots)
- checkout: describe_detached_head: remove 3dots after committish
* jc/merge-base-fork-point-doc (2017-11-09) 1 commit
- merge-base --fork-point doc: clarify the example and failure modes

Ancient part of codebase still shows dots after an abbreviated
object name just to show that it is not a full object name, but
these ellipses are confusing to people who newly discovered Git
who are used to seeing abbreviated object names and find them
confusing with the range syntax.
Clarify and enhance documentation for "merge-base --fork-point", as
it was clear what it computed but not why/what for.


* jt/submodule-tests-cleanup (2017-11-08) 1 commit
- Tests: clean up and document submodule helpers
* tz/fsf-address-update (2017-11-09) 3 commits
(merged to 'next' on 2017-11-13 at 97965f70d9)
+ Merge branch 'tz/fsf-address-update' of ../git-gui into tz/fsf-address-update
+ Replace Free Software Foundation address in license notices
+ Replace Free Software Foundation address in license notices

Will merge to 'master'.


* bp/fastindex (2017-11-11) 5 commits
- SQUASH???
- fastindex: add documentation for the fastindex extension
- fastindex: add test tools and a test script
- update-index: add fastindex support to update-index
- fastindex: speed up index load through parallelization


* pw/sequencer-in-process-commit (2017-11-11) 10 commits
- SQUASH??? styles
- sequencer: try to commit without forking 'git commit'
- sequencer: load commit related config
- sequencer: simplify adding Signed-off-by: trailer
- sequencer: don't die in print_commit_summary()
- commit: move print_commit_summary() to libgit
- commit: move post-rewrite code to libgit
- Add a function to update HEAD after creating a commit
- commit: move empty message checks to libgit
- t3404: check intermediate squash messages

The sequencer infrastructure is shared across "git cherry-pick",
"git rebase -i", etc., and has always spawned "git commit" when it
needs to create a commit. It has been taught to do so internally,
when able, by reusing the codepath "git commit" itself uses.


* rs/apply-fuzzy-match-fix (2017-11-12) 1 commit
- apply: avoid out-of-bounds access in fuzzy_matchlines()

A fix for an ancient bug in "git apply --ignore-space-change" codepath.

Will merge to 'next'.


* sb/test-cherry-pick-submodule-getting-in-a-way (2017-11-12) 1 commit
- t/3512: demonstrate unrelated submodule/file conflict as cherry-pick failure

An additional test, in anticipation for a fix.

Will merge to 'next'.
It would be very preferrable if we can merge an actual fix together
to 'next', though.


* ab/pcre-v2 (2017-11-13) 1 commit
(merged to 'next' on 2017-11-13 at 66bf57f071)
+ grep: fix NO_LIBPCRE1_JIT to fully disable JIT

Building with NO_LIBPCRE1_JIT did not disable it, which has been fixed.

Will merge to 'master'.


* cb/t4201-robustify (2017-11-13) 1 commit
(merged to 'next' on 2017-11-13 at b83957b8f2)
+ t4201: make use of abbreviation in the test more robust

A test update.

Will merge to 'master'.


* jk/info-alternates-fix (2017-11-13) 1 commit
(merged to 'next' on 2017-11-13 at ac84a7580a)
+ link_alt_odb_entries: make empty input a noop

We used to add an empty alternate object database to the system
that does not help anything; it has been corrected.

Will merge to 'master'.


* rd/bisect-view-is-visualize (2017-11-13) 1 commit
(merged to 'next' on 2017-11-13 at a36423f4ba)
+ bisect: mention "view" as an alternative to "visualize"

Doc and message updates to teach users "bisect view" is a synonym
for "bisect visualize".

Will merge to 'master'.


* sb/bisect-run-empty (2017-11-13) 1 commit
(merged to 'next' on 2017-11-13 at 90d20b8686)
+ bisect run: die if no command is given

"git bisect run" that did not specify any command to run used to go
ahead and treated all commits to be tested as 'good'. This has
been corrected by making the command error out.

Will merge to 'master'.


* en/rename-progress (2017-11-14) 5 commits
- sequencer: show rename progress during cherry picks
- diff: remove silent clamp of renameLimit
- SQUASH???
- progress: fix progress meters when dealing with lots of work
- sequencer: warn when internal merge may be suboptimal due to renameLimit

Historically, the diff machinery for rename detection had a
hardcoded limit of 32k paths; this is being lifted to allow users
trade cycles with a (possibly) easier to read result.

Will squash in the type-fix and merge to 'next'.


* tz/redirect-fix (2017-11-14) 2 commits
- rebase: fix stderr redirect in apply_autostash()
- t/lib-gpg: fix gpgconf stderr redirect to /dev/null

A few scripts (both in production and tests) incorrectly redirected
their error output. These have been corrected.

Wait for the third one and then merge to 'next'.

--------------------------------------------------
[Stalled]

@ -176,67 +424,80 @@ of the repositories listed at
--------------------------------------------------
[Cooking]

* bw/rebase-i-ignored-submodule-fix (2017-11-07) 1 commit
(merged to 'next' on 2017-11-10 at a0a54103ed)
+ wt-status: actually ignore submodules when requested

"git rebase -i" recently started misbehaving when a submodule that
is configured with 'submodule.<name>.ignore' is dirty; this has
been corrected.

Will merge to 'master'.


* ar/unconfuse-three-dots (2017-11-07) 3 commits
- Documentation: revisions: add note about 3dots usages as continuation indications
- Documentation: user-manual: limit potentially confusing usage of 3dots (and 2dots)
- checkout: describe_detached_head: remove 3dots after committish

Ancient part of codebase still shows dots after an abbreviated
object name just to show that it is not a full object name, but
these ellipses are confusing to people who newly discovered Git
who are used to seeing abbreviated object names and find them
confusing with the range syntax.


* jt/submodule-tests-cleanup (2017-11-08) 1 commit
(merged to 'next' on 2017-11-10 at c6cbcdeaa4)
+ Tests: clean up and document submodule helpers

Will merge to 'master'.


* js/for-each-ref-remote-name-and-ref (2017-11-08) 3 commits
- for-each-ref: test :remotename and :remoteref
- for-each-ref: let upstream/push report the remote ref name
- for-each-ref: let upstream/push optionally report the remote name
(merged to 'next' on 2017-11-10 at 254af5d602)
+ for-each-ref: test :remotename and :remoteref
+ for-each-ref: let upstream/push report the remote ref name
+ for-each-ref: let upstream/push optionally report the remote name

The "--format=..." option "git for-each-ref" takes learned to show
the name of the 'remote' repository and the ref at the remote side
that is affected for 'upstream' and 'push' via "%(push:remotename)"
and friends.

Will merge to 'next'.


* js/mingw-redirect-std-handles (2017-11-02) 3 commits
(merged to 'next' on 2017-11-07 at 9af6a3dea0)
+ mingw: document the standard handle redirection
+ mingw: optionally redirect stderr/stdout via the same handle
+ mingw: add experimental feature to redirect standard handles

MinGW updates.

Will merge to 'master'.


* ma/bisect-leakfix (2017-11-06) 4 commits
- bisect: fix memory leak when returning best element
- bisect: fix off-by-one error in `best_bisection_sorted()`
- bisect: fix memory leak in `find_bisection()`
- bisect: change calling-convention of `find_bisection()`
(merged to 'next' on 2017-11-09 at c280d786f4)
+ bisect: fix memory leak when returning best element
+ bisect: fix off-by-one error in `best_bisection_sorted()`
+ bisect: fix memory leak in `find_bisection()`
+ bisect: change calling-convention of `find_bisection()`

Leak fixes.

Will merge to 'next'.
Will merge to 'master'.


* ma/reduce-heads-leakfix (2017-11-08) 2 commits
- reduce_heads: fix memory leaks
- builtin/merge-base: free commit lists
(merged to 'next' on 2017-11-10 at 9428953ec8)
+ reduce_heads: fix memory leaks
+ builtin/merge-base: free commit lists

Leak fixes.

Will merge to 'next'.


* sg/travis-fixes (2017-11-02) 2 commits
(merged to 'next' on 2017-11-07 at bbf39361b6)
+ travis-ci: don't build Git for the static analysis job
+ travis-ci: fix running P4 and Git LFS tests in Linux build jobs

TravisCI build updates.

Will merge to 'master'.


* sr/wrapper-quote-filenames (2017-11-06) 1 commit
- wrapper.c: consistently quote filenames in error messages
(merged to 'next' on 2017-11-09 at a14ac8da60)
+ wrapper.c: consistently quote filenames in error messages

Some error messages did not quote filenames shown in it, which have
been fixed.

Will merge to 'next'.
Will merge to 'master'.


* jh/fsck-promisors (2017-11-08) 9 commits
@ -263,42 +524,24 @@ of the repositories listed at


* jh/partial-clone (2017-11-08) 15 commits
- fixup! upload-pack: add object filtering for partial clone
- index-pack: silently assume missing objects are promisor
- fetch-pack: restore save_commit_buffer after use
- unpack-trees: batch fetching of missing blobs
- t5500: more tests for partial clone and fetch
- t5601: test for partial clone
- t5500: add fetch-pack tests for partial clone
- fetch: add from_promisor and exclude-promisor-objects parameters
- fetch-pack: test support excluding large blobs
- pack-objects: test support for blob filtering
- remote-curl: add object filtering for partial clone
- fetch: add object filtering for partial fetch
- fetch: refactor calculation of remote list
- clone, fetch-pack, index-pack, transport: partial clone
- upload-pack: add object filtering for partial clone
. fixup! upload-pack: add object filtering for partial clone
. index-pack: silently assume missing objects are promisor
. fetch-pack: restore save_commit_buffer after use
. unpack-trees: batch fetching of missing blobs
. t5500: more tests for partial clone and fetch
. t5601: test for partial clone
. t5500: add fetch-pack tests for partial clone
. fetch: add from_promisor and exclude-promisor-objects parameters
. fetch-pack: test support excluding large blobs
. pack-objects: test support for blob filtering
. remote-curl: add object filtering for partial clone
. fetch: add object filtering for partial fetch
. fetch: refactor calculation of remote list
. clone, fetch-pack, index-pack, transport: partial clone
. upload-pack: add object filtering for partial clone
(this branch uses jh/fsck-promisors and jh/object-filtering.)


* js/early-config (2017-11-03) 1 commit
(merged to 'next' on 2017-11-07 at 9477c7c8ea)
+ setup: avoid double slashes when looking for HEAD

Correct start-up sequence so that a repository could be placed
immediately under the root directory again (which was broken at
around Git 2.13).

Will merge to 'master'.


* ks/mailmap (2017-11-03) 1 commit
(merged to 'next' on 2017-11-07 at 46975637c7)
+ mailmap: use Kaartic Sivaraam's new address

Will merge to 'master'.


* rs/imap-send-next-arg-fix (2017-11-03) 2 commits
(merged to 'next' on 2017-11-07 at f4df55fe5b)
+ imap-send: handle missing response codes gracefully
@ -310,85 +553,37 @@ of the repositories listed at
Will merge to 'master'.


* dk/libsecret-unlock-to-load-fix (2017-11-04) 1 commit
(merged to 'next' on 2017-11-07 at 57d1d76c8c)
+ credential-libsecret: unlock locked secrets

The credential helper for libsecret (in contrib/) has been improved
to allow possibly prompting the end user to unlock secrets that are
currently locked (otherwise the secrets may not be loaded).

Will merge to 'master'.


* jm/relnotes-2.15-typofix (2017-11-06) 1 commit
(merged to 'next' on 2017-11-07 at 60fc937b62)
+ fix typos in 2.15.0 release notes

Typofix.

Will merge to 'master'.


* sb/blame-config-doc (2017-11-06) 1 commit
(merged to 'next' on 2017-11-07 at 0576cb452f)
+ config: document blame configuration

Description of blame.{showroot,blankboundary,showemail,date}
configuration variables have been added to "git config --help".

Will merge to 'master'.


* ad/5580-unc-tests-on-cygwin (2017-11-01) 1 commit
(merged to 'next' on 2017-11-07 at 34fc479da2)
+ t5580: add Cygwin support

UNC paths are also relevant in Cygwin builds and they are now
tested just like Mingw builds.

Will merge to 'master'.


* ao/merge-verbosity-getenv-just-once (2017-11-01) 1 commit
- merge-recursive: check GIT_MERGE_VERBOSITY only once
(merged to 'next' on 2017-11-09 at e7cfb8dcec)
+ merge-recursive: check GIT_MERGE_VERBOSITY only once

Code cleanup.

Will merge to 'next'.
Will merge to 'master'.


* bp/read-index-from-skip-verification (2017-11-08) 1 commit
- read_index_from(): speed index loading by skipping verification of the entry order
(merged to 'next' on 2017-11-10 at 3c3e32f1ed)
+ read_index_from(): speed index loading by skipping verification of the entry order

Drop (perhaps overly cautious) sanity check before using the index
read from the filesystem at runtime.

Will merge to 'next'.


* rs/hex-to-bytes-cleanup (2017-11-01) 3 commits
(merged to 'next' on 2017-11-07 at fac14770e1)
+ sha1_file: use hex_to_bytes()
+ http-push: use hex_to_bytes()
+ notes: move hex_to_bytes() to hex.c and export it

Code cleanup.

Will merge to 'master'.


* rs/sequencer-rewrite-file-cleanup (2017-11-02) 3 commits
- sequencer.c: check return value of close() in rewrite_file()
- sequencer: use O_TRUNC to truncate files
- sequencer: factor out rewrite_file()
(merged to 'next' on 2017-11-09 at 06f45be770)
+ sequencer.c: check return value of close() in rewrite_file()
+ sequencer: use O_TRUNC to truncate files
+ sequencer: factor out rewrite_file()

Code cleanup.

Will merge to 'next'.
Will merge to 'master'.


* sb/describe-blob (2017-11-03) 7 commits
* sb/describe-blob (2017-11-13) 7 commits
- builtin/describe.c: describe a blob
- builtin/describe.c: factor out describe_commit
- builtin/describe.c: print debug statements earlier
@ -422,85 +617,44 @@ of the repositories listed at


* ab/mediawiki-namespace (2017-11-08) 7 commits
- remote-mediawiki: show progress while fetching namespaces
- remote-mediawiki: process namespaces in order
- remote-mediawiki: support fetching from (Main) namespace
- remote-mediawiki: skip virtual namespaces
- remote-mediawiki: show known namespace choices on failure
- remote-mediawiki: allow fetching namespaces with spaces
- remote-mediawiki: add namespace support
(merged to 'next' on 2017-11-10 at 1cf9cfdfbc)
+ remote-mediawiki: show progress while fetching namespaces
+ remote-mediawiki: process namespaces in order
+ remote-mediawiki: support fetching from (Main) namespace
+ remote-mediawiki: skip virtual namespaces
+ remote-mediawiki: show known namespace choices on failure
+ remote-mediawiki: allow fetching namespaces with spaces
+ remote-mediawiki: add namespace support

The remote-helper for talking to MediaWiki has been updated to
work with mediawiki namespaces.

Will merge to 'next'.


* js/mingw-full-version-in-resources (2017-11-01) 1 commit
(merged to 'next' on 2017-11-07 at 3a256b5ddc)
+ mingw: include the full version information in the resources

MinGW updates.

Will merge to 'master'.


* js/wincred-empty-cred (2017-11-01) 2 commits
(merged to 'next' on 2017-11-07 at 43d3fcc30a)
+ wincred: handle empty username/password correctly
+ t0302: check helper can handle empty credentials

MinGW updates.

Will merge to 'master'.


* bw/diff-opt-impl-to-bitfields (2017-11-01) 8 commits
(merged to 'next' on 2017-11-07 at 8be78206ba)
+ diff: make struct diff_flags members lowercase
+ diff: remove DIFF_OPT_CLR macro
+ diff: remove DIFF_OPT_SET macro
+ diff: remove DIFF_OPT_TST macro
+ diff: remove touched flags
+ diff: add flag to indicate textconv was set via cmdline
+ diff: convert flags to be stored in bitfields
+ add, reset: use DIFF_OPT_SET macro to set a diff flag

A single-word "unsigned flags" in the diff options is being split
into a structure with many bitfields.

Will merge to 'master'.


* mh/tidy-ref-update-flags (2017-11-06) 10 commits
- refs: update some more docs to use "oid" rather than "sha1"
- write_packed_entry(): take `object_id` arguments
- refs: rename constant `REF_ISPRUNING` to `REF_IS_PRUNING`
- refs: rename constant `REF_NODEREF` to `REF_NO_DEREF`
- refs: tidy up and adjust visibility of the `ref_update` flags
- ref_transaction_add_update(): remove a check
- ref_transaction_update(): die on disallowed flags
- prune_ref(): call `ref_transaction_add_update()` directly
- files_transaction_prepare(): don't leak flags to packed transaction
- Merge branch 'bc/object-id' into base
(merged to 'next' on 2017-11-09 at 5231330c1c)
+ refs: update some more docs to use "oid" rather than "sha1"
+ write_packed_entry(): take `object_id` arguments
+ refs: rename constant `REF_ISPRUNING` to `REF_IS_PRUNING`
+ refs: rename constant `REF_NODEREF` to `REF_NO_DEREF`
+ refs: tidy up and adjust visibility of the `ref_update` flags
+ ref_transaction_add_update(): remove a check
+ ref_transaction_update(): die on disallowed flags
+ prune_ref(): call `ref_transaction_add_update()` directly
+ files_transaction_prepare(): don't leak flags to packed transaction
+ Merge branch 'bc/object-id' into base

Code clean-up in refs API implementation.

Will merge to 'next'.


* ao/diff-populate-filespec-lstat-errorpath-fix (2017-10-29) 1 commit
(merged to 'next' on 2017-11-07 at b03241e6e5)
+ diff: fix lstat() error handling in diff_populate_filespec()

After an error from lstat(), diff_populate_filespec() function
sometimes still went ahead and used invalid data in struct stat,
which has been fixed.

Will merge to 'master'.


* av/fsmonitor (2017-11-01) 4 commits
* av/fsmonitor (2017-11-13) 7 commits
(merged to 'next' on 2017-11-13 at db56ad7eef)
+ fsmonitor: simplify determining the git worktree under Windows
+ fsmonitor: store fsmonitor bitmap before splitting index
+ fsmonitor: read from getcwd(), not the PWD environment variable
(merged to 'next' on 2017-11-07 at a06178754d)
+ fsmonitor: delay updating state until after split index is merged
+ fsmonitor: document GIT_TRACE_FSMONITOR
@ -510,17 +664,45 @@ of the repositories listed at

Various fixes to bp/fsmonitor topic.

Will merge to 'master'.
Waiting for follow-on fixes to settle.


* bc/submitting-patches-in-asciidoc (2017-10-30) 2 commits
- Documentation: convert SubmittingPatches to AsciiDoc
- Documentation: enable compat-mode for Asciidoctor
* bp/fsmonitor (2017-10-05) 15 commits
(merged to 'next' on 2017-11-07 at b08d44ba60)
+ fsmonitor: preserve utf8 filenames in fsmonitor-watchman log
+ fsmonitor: read entirety of watchman output
+ fsmonitor: MINGW support for watchman integration
+ fsmonitor: add a performance test
+ fsmonitor: add a sample integration script for Watchman
+ fsmonitor: add test cases for fsmonitor extension
+ split-index: disable the fsmonitor extension when running the split index test
+ fsmonitor: add a test tool to dump the index extension
+ update-index: add fsmonitor support to update-index
+ ls-files: Add support in ls-files to display the fsmonitor valid bit
+ fsmonitor: add documentation for the fsmonitor extension.
+ fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files.
+ update-index: add a new --force-write-index option
+ preload-index: add override to enable testing preload-index
+ bswap: add 64 bit endianness helper get_be64
(this branch is used by av/fsmonitor.)

Originally merged to 'next' on 2017-10-05

We learned to talk to watchman to speed up "git status" and other
operations that need to see which paths have been modified.

Waiting for follow-on fixes to settle.


* bc/submitting-patches-in-asciidoc (2017-11-13) 2 commits
(merged to 'next' on 2017-11-13 at 70f65b981a)
+ Documentation: convert SubmittingPatches to AsciiDoc
+ Documentation: enable compat-mode for Asciidoctor

The SubmittingPatches document has been converted to produce an
HTML version via AsciiDoc/Asciidoctor.

Any further comments? Otherwise, will merge to 'next'.
Will merge to 'master'.


* pb/bisect-helper-2 (2017-10-28) 8 commits
@ -546,49 +728,32 @@ of the repositories listed at


* mh/avoid-rewriting-packed-refs (2017-10-30) 2 commits
- files-backend: don't rewrite the `packed-refs` file unnecessarily
- t1409: check that `packed-refs` is not rewritten unnecessarily
(merged to 'next' on 2017-11-09 at 272e27cc9a)
+ files-backend: don't rewrite the `packed-refs` file unnecessarily
+ t1409: check that `packed-refs` is not rewritten unnecessarily

Recent update to the refs infrastructure implementation started
rewriting packed-refs file more often than before; this has been
optimized again for most trivial cases.

Will merge to 'next'.
Will merge to 'master'.


* cc/git-packet-pm (2017-11-07) 8 commits
- Git/Packet.pm: extract parts of t0021/rot13-filter.pl for reuse
- t0021/rot13-filter: add capability functions
- t0021/rot13-filter: refactor checking final lf
- t0021/rot13-filter: add packet_initialize()
- t0021/rot13-filter: improve error message
- t0021/rot13-filter: improve 'if .. elsif .. else' style
- t0021/rot13-filter: refactor packet reading functions
- t0021/rot13-filter: fix list comparison
(merged to 'next' on 2017-11-10 at b40bc2c0bb)
+ Git/Packet.pm: extract parts of t0021/rot13-filter.pl for reuse
+ t0021/rot13-filter: add capability functions
+ t0021/rot13-filter: refactor checking final lf
+ t0021/rot13-filter: add packet_initialize()
+ t0021/rot13-filter: improve error message
+ t0021/rot13-filter: improve 'if .. elsif .. else' style
+ t0021/rot13-filter: refactor packet reading functions
+ t0021/rot13-filter: fix list comparison

Parts of a test to drive the long-running content filter interface
has been split into its own module, hopefully to eventually become
reusable.

Will merge to 'next'.


* jm/status-ignored-files-list (2017-10-31) 4 commits
(merged to 'next' on 2017-11-07 at 682c74a2cb)
+ status: test ignored modes
+ status: document options to show matching ignored files
+ status: report matching ignored and normal untracked
+ status: add option to show ignored files differently

Originally merged to 'next' on 2017-11-01

The set of paths output from "git status --ignored" was tied
closely with its "--untracked=<mode>" option, but now it can be
controlled more flexibly. Most notably, a directory that is
ignored because it is listed to be ignored in the ignore/exclude
mechanism can be handled differently from a directory that ends up
to be ignored only because all files in it are ignored.

Will merge to 'master'.


@ -626,33 +791,6 @@ of the repositories listed at
Will merge to 'next'.


* bp/fsmonitor (2017-10-05) 15 commits
(merged to 'next' on 2017-11-07 at b08d44ba60)
+ fsmonitor: preserve utf8 filenames in fsmonitor-watchman log
+ fsmonitor: read entirety of watchman output
+ fsmonitor: MINGW support for watchman integration
+ fsmonitor: add a performance test
+ fsmonitor: add a sample integration script for Watchman
+ fsmonitor: add test cases for fsmonitor extension
+ split-index: disable the fsmonitor extension when running the split index test
+ fsmonitor: add a test tool to dump the index extension
+ update-index: add fsmonitor support to update-index
+ ls-files: Add support in ls-files to display the fsmonitor valid bit
+ fsmonitor: add documentation for the fsmonitor extension.
+ fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files.
+ update-index: add a new --force-write-index option
+ preload-index: add override to enable testing preload-index
+ bswap: add 64 bit endianness helper get_be64
(this branch is used by av/fsmonitor.)

Originally merged to 'next' on 2017-10-05

We learned to talk to watchman to speed up "git status" and other
operations that need to see which paths have been modified.

Will merge to 'master'.


* bw/protocol-v1 (2017-10-17) 11 commits
- Documentation: document Extra Parameters
- ssh: introduce a 'simple' ssh variant
@ -674,7 +812,7 @@ of the repositories listed at
Waiting for jn/ssh-wrappers topic.


* bc/hash-algo (2017-10-30) 4 commits
* bc/hash-algo (2017-11-13) 4 commits
- Switch empty tree and blob lookups to use hash abstraction
- Integrate hash algorithm support with repo setup
- Add structure representing hash algorithm
@ -684,7 +822,8 @@ of the repositories listed at
introduced, and an effort to plumb that throughout various
codepaths has been started.

cf. <20171028181239.59458-1-sandals@crustytoothpaste.net>
Looked more or less OK to me. Ready to merge to 'next'? Further
comments?


* sb/submodule-recursive-checkout-detach-head (2017-07-28) 2 commits