To: git@vger.kernel.org
Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Oct 2016, #09; Mon, 31)
-X-master-at: 1fe8f2cf461179c41f64efbd1dc0a9fb3b7a0fb1
-X-next-at: 2c8536d0921902ede8654c83a512865ff5ecd153
+Subject: What's cooking in git.git (Nov 2016, #01; Wed, 9)
+X-master-at: be5a750939c212bc0781ffa04fabcfd2b2bd744e
+X-next-at: f7463a1abc93dbed4ef482f037d1daa4a172805e
-What's cooking in git.git (Oct 2016, #09; Mon, 31)
+What's cooking in git.git (Nov 2016, #01; Wed, 9)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with
'+' are in 'next'. The ones marked with '.' do not appear in any of
the integration branches, but I am still holding onto them.
-Git v2.10.2, the second maintenance release for 2.10.x track, has
-been tagged. On the master front, an early preview v2.11.0-rc0 has
-been tagged. An updated, slightly slipped from the original,
-schedule is found at http://tinyurl.com/gitCal and I am hoping that
-we can conclude this cycle before US Thanksgiving.
+Hopefully 2.11-rc1 can be tagged by the end of the week. Sorry for
+the delay (and thanks for great help from y'all, especially Peff).
You can find the changes described here in the integration branches
of the repositories listed at
--------------------------------------------------
[Graduated to "master"]
-* ak/pre-receive-hook-template-modefix (2016-10-28) 1 commit
- (merged to 'next' on 2016-10-28 at 86d95836a3)
- + pre-receive.sample: mark it executable
-
- A trivial clean-up to a recently graduated topic.
+* cc/split-index-typofix (2016-11-01) 1 commit
+ - split-index: s/eith/with/ typo fix
+ Typofix in a comment in code
-* ak/sh-setup-dot-source-i18n-fix (2016-10-30) 1 commit
- (merged to 'next' on 2016-10-31 at 538a72700e)
- + git-sh-setup: be explicit where to dot-source git-sh-i18n from.
-
- Recent update to git-sh-setup (a library of shell functions that
- are used by our in-tree scripted Porcelain commands) included
- another shell library git-sh-i18n without specifying where it is,
- relying on the $PATH. This has been fixed to be more explicit by
- prefixing $(git --exec-path) output in front.
+* jk/no-looking-at-dotgit-outside-repo (2016-11-01) 1 commit
+ - sha1_name: make wraparound of the index into ring-buffer explicit
-* aw/numbered-stash (2016-10-26) 1 commit
- (merged to 'next' on 2016-10-26 at 8d9325fa3a)
- + stash: allow stashes to be referenced by index only
+ A small code cleanup.
- The user always has to say "stash@{$N}" when naming a single
- element in the default location of the stash, i.e. reflogs in
- refs/stash. The "git stash" command learned to accept "git stash
- apply 4" as a short-hand for "git stash apply stash@{4}".
+* rs/cocci (2016-11-01) 1 commit
+ - cocci: avoid self-references in object_id transformations
-* jk/common-main (2016-10-27) 1 commit
- (merged to 'next' on 2016-10-28 at fcdd4f8a26)
- + git-compat-util: move content inside ifdef/endif guards
+ Improve the rule to convert "unsigned char [20]" into "struct
+ object_id *" in contrib/coccinelle/
- A trivial clean-up to a recently graduated topic.
+--------------------------------------------------
+[New Topics]
+* as/merge-attr-sleep (2016-11-08) 1 commit
+ (merged to 'next' on 2016-11-09 at 17fbe796e6)
+ + t6026-merge-attr: don't fail if sleep exits early
-* jk/rebase-config-insn-fmt-docfix (2016-10-30) 1 commit
- (merged to 'next' on 2016-10-31 at d48e20ffa2)
- + doc: fix missing "::" in config list
+ Fix for a racy false-positive test failure.
- Documentation fix.
+ Will merge to 'master'.
-* jt/trailer-with-cruft (2016-10-21) 8 commits
- (merged to 'next' on 2016-10-27 at b5d1a21811)
- + trailer: support values folded to multiple lines
- + trailer: forbid leading whitespace in trailers
- + trailer: allow non-trailers in trailer block
- + trailer: clarify failure modes in parse_trailer
- + trailer: make args have their own struct
- + trailer: streamline trailer item create and add
- + trailer: use list.h for doubly-linked list
- + trailer: improve const correctness
- (this branch is used by jt/use-trailer-api-in-commands.)
+* jk/alt-odb-cleanup (2016-11-08) 1 commit
+ (merged to 'next' on 2016-11-09 at f7463a1abc)
+ + alternates: re-allow relative paths from environment
- Update "interpret-trailers" machinery and teaches it that people in
- real world write all sorts of crufts in the "trailer" that was
- originally designed to have the neat-o "Mail-Header: like thing"
- and nothing else.
+ Fix a corner-case regression in a topic that graduated during the
+ v2.11 cycle.
+ Will merge to 'master'.
-* ls/filter-process (2016-10-17) 14 commits
- (merged to 'next' on 2016-10-19 at ffd0de042c)
- + contrib/long-running-filter: add long running filter example
- + convert: add filter.<driver>.process option
- + convert: prepare filter.<driver>.process option
- + convert: make apply_filter() adhere to standard Git error handling
- + pkt-line: add functions to read/write flush terminated packet streams
- + pkt-line: add packet_write_gently()
- + pkt-line: add packet_flush_gently()
- + pkt-line: add packet_write_fmt_gently()
- + pkt-line: extract set_packet_header()
- + pkt-line: rename packet_write() to packet_write_fmt()
- + run-command: add clean_on_exit_handler
- + run-command: move check_pipe() from write_or_die to run_command
- + convert: modernize tests
- + convert: quote filter names in error messages
- The smudge/clean filter API expect an external process is spawned
- to filter the contents for each path that has a filter defined. A
- new type of "process" filter API has been added to allow the first
- request to run the filter for a path to spawn a single process, and
- all filtering need is served by this single process for multiple
- paths, reducing the process creation overhead.
+* jk/filter-process-fix (2016-11-02) 4 commits
+ (merged to 'next' on 2016-11-09 at 535b4f4de9)
+ + t0021: fix filehandle usage on older perl
+ + t0021: use $PERL_PATH for rot13-filter.pl
+ + t0021: put $TEST_ROOT in $PATH
+ + t0021: use write_script to create rot13 shell script
+ Test portability improvements and cleanups for t0021.
-* ls/git-open-cloexec (2016-10-25) 3 commits
- (merged to 'next' on 2016-10-26 at f7259cbddb)
- + read-cache: make sure file handles are not inherited by child processes
- + sha1_file: open window into packfiles with O_CLOEXEC
- + sha1_file: rename git_open_noatime() to git_open()
- (this branch is used by jc/git-open-cloexec.)
+ Will merge to 'master'.
- Git generally does not explicitly close file descriptors that were
- open in the parent process when spawning a child process, but most
- of the time the child does not want to access them. As Windows does
- not allow removing or renaming a file that has a file descriptor
- open, a slow-to-exit child can even break the parent process by
- holding onto them. Use O_CLOEXEC flag to open files in various
- codepaths.
+* js/prepare-sequencer (2016-11-08) 1 commit
+ - sequencer: silence -Wtautological-constant-out-of-range-compare
-* nd/test-helpers (2016-10-27) 1 commit
- (merged to 'next' on 2016-10-31 at 9780fe6d90)
- + valgrind: support test helpers
+ Silence a clang warning introduced by a recently graduated topic.
- Update to the test framework made in 2.9 timeframe broke running
- the tests under valgrind, which has been fixed.
+ Will merge to 'master'.
-* rs/commit-pptr-simplify (2016-10-30) 1 commit
- (merged to 'next' on 2016-10-31 at ddeed2e66a)
- + commit: simplify building parents list
+* ls/filter-process (2016-11-08) 2 commits
+ (merged to 'next' on 2016-11-09 at 7d217ebb5e)
+ + t0021: compute file size with a single process instead of a pipeline
+ + t0021: expect more variations in the output of uniq -c
- Code simplification.
+ Test portability improvements and optimization for an
+ already-graduated topic.
+ Will merge to 'master'.
-* sc/fmt-merge-msg-doc-markup-fix (2016-10-28) 1 commit
- (merged to 'next' on 2016-10-31 at 198c259bb2)
- + Documentation/fmt-merge-msg: fix markup in example
- Documentation fix.
+* jc/retire-compaction-heuristics (2016-11-02) 3 commits
+ - SQUASH???
+ - SQUASH???
+ - diff: retire the original experimental "compaction" heuristics
---------------------------------------------------
-[New Topics]
-* jc/push-default-explicit (2016-10-28) 1 commit
- - push: do not use potentially ambiguous default refspec
+* jc/abbrev-autoscale-config (2016-11-01) 1 commit
+ - config.abbrev: document the new default that auto-scales
- A lazy "git push" without refspec did not internally use a fully
- specified refspec to perform 'current', 'simple', or 'upstream'
- push, causing unnecessary "ambiguous ref" errors.
- Needs updates to the tests.
+* jk/nofollow-attr-ignore (2016-11-02) 5 commits
+ - exclude: do not respect symlinks for in-tree .gitignore
+ - attr: do not respect symlinks for in-tree .gitattributes
+ - exclude: convert "check_index" into a flags field
+ - attr: convert "macro_ok" into a flags field
+ - add open_nofollow() helper
-* jt/use-trailer-api-in-commands (2016-10-28) 4 commits
- - sequencer: use trailer's trailer layout
- - trailer: have function to describe trailer layout
- - trailer: avoid unnecessary splitting on lines
- - commit: make ignore_non_trailer take buf/len
-
- Commands that operate on a log message and add lines to the trailer
- blocks, such as "format-patch -s", "cherry-pick (-x|-s)", and
- "commit -s", have been taught to use the logic of and share the
- code with "git interpret-trailer".
+* sb/submodule-config-cleanup (2016-11-02) 3 commits
+ - submodule-config: clarify parsing of null_sha1 element
+ - submodule-config: rename commit_sha1 to commit_or_tree
+ - submodule config: inline config_from_{name, path}
--------------------------------------------------
[Stalled]
--------------------------------------------------
[Cooking]
+* jc/push-default-explicit (2016-10-31) 2 commits
+ (merged to 'next' on 2016-11-01 at 8dc3a6cf25)
+ + push: test pushing ambiguously named branches
+ + push: do not use potentially ambiguous default refspec
+
+ A lazy "git push" without refspec did not internally use a fully
+ specified refspec to perform 'current', 'simple', or 'upstream'
+ push, causing unnecessary "ambiguous ref" errors.
+
+ Will hold.
+
+
+* jt/use-trailer-api-in-commands (2016-11-02) 6 commits
+ - sequencer: use trailer's trailer layout
+ - trailer: have function to describe trailer layout
+ - trailer: avoid unnecessary splitting on lines
+ - commit: make ignore_non_trailer take buf/len
+ - SQUASH???
+ - trailer: be stricter in parsing separators
+
+ Commands that operate on a log message and add lines to the trailer
+ blocks, such as "format-patch -s", "cherry-pick (-x|-s)", and
+ "commit -s", have been taught to use the logic of and share the
+ code with "git interpret-trailer".
+
+
* nd/rebase-forget (2016-10-28) 1 commit
- rebase: add --forget to cleanup rebase, leave HEAD untouched
Waiting for a reroll.
-* jc/git-open-cloexec (2016-10-31) 3 commits
+* jc/git-open-cloexec (2016-11-02) 3 commits
- sha1_file: stop opening files with O_NOATIME
- git_open_cloexec(): use fcntl(2) w/ FD_CLOEXEC fallback
- git_open(): untangle possible NOATIME and CLOEXEC interactions
cf. <20161007210721.20437-1-santiago@nyu.edu>
-* sb/attr (2016-10-28) 37 commits
+* sb/attr (2016-11-09) 38 commits
- completion: clone can initialize specific submodules
- clone: add --init-submodule=<pathspec> switch
+ - SQUASH to: submodule update: add `--init-default-path` switch
- submodule update: add `--init-default-path` switch
- pathspec: allow escaped query values
- pathspec: allow querying for attributes