To: git@vger.kernel.org
Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Sep 2014, #08; Mon, 29)
-X-master-at: 0bf7dd652cd7b7d3900e6aed73a97cf2c4978fee
-X-next-at: 4efa26b95dc95d7fe3c51ad0f352ba0a224dc00c
+Subject: What's cooking in git.git (Sep 2014, #09; Tue, 30)
+X-master-at: 565301e41670825ceedf75220f2918ae76831240
+X-next-at: b253abbe256c44261d5bb1dbfb99a834c9987b3e
-What's cooking in git.git (Sep 2014, #08; Mon, 29)
+What's cooking in git.git (Sep 2014, #09; Tue, 30)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with
'-' are only in 'pu' (proposed updates) while commits prefixed with
'+' are in 'next'.
+Many fixes on the 'master' has been merged down to 'maint' and the
+tip of the latter is at v2.1.2 now. Among the topics that have been
+cooking in 'next', easier ones have all graduated to 'master'.
+
+During the remainder of this cycle, I would like to see these topics
+to be in 'master' by the end of the 8th week in late October:
+
+ - ref transaction updates by Ronnie and Jonathan
+ - lockfile updates by Michael
+ - replacement for contrib/workdir by Duy
+
+All of them are of rather nontrivial size, and would need to be in
+'next' for at least a few weeks, which would mean they must be in a
+good enough shape to go incremental by mid October. I suspect that
+we might be cutting it a bit too close for some of them but we'll
+see.
+
+ Side note: I am not saying that I will ignore other topics; I am
+ just saying that I care about these three topics because their
+ changes have large impact on the current codebase, and they have
+ big positive impact on the future when done right. We want to
+ see atomic updates to multiple refs. We want to see our locks
+ behave sensibly. We want to see safer way to work with multiple
+ working trees checked out of a single repository.
+
+ Other topics in flight are of smaller impact that I would not
+ worry too much about and tend to require less brainpower to
+ judge if the design is good, and I'd be happy to see them go
+ through the usual 'pu' to 'next' to 'master' with their own
+ pace, either by the end of this cycle, extending into the next
+ cycle---in that sense I do not care too much about them to
+ single any out.
+
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"]
-
-* da/rev-parse-verify-quiet (2014-09-19) 4 commits
- (merged to 'next' on 2014-09-23 at 5ed184a)
- + stash: prefer --quiet over shell redirection of the standard error stream
- + refs: make rev-parse --quiet actually quiet
- + t1503: use test_must_be_empty
- + Documentation: a note about stdout for git rev-parse --verify --quiet
-
- "rev-parse --verify --quiet $name" is meant to quietly exit with a
- non-zero status when $name is not a valid object name, but still
- gave error messages in some cases.
-
-
-* hj/pretty-naked-decoration (2014-09-18) 1 commit
- (merged to 'next' on 2014-09-23 at fb699c4)
- + pretty: add %D format specifier
-
- The pretty-format specifier "%d", which expanded to " (tagname)"
- for a tagged commit, gained a cousin "%D" that just gives the
- "tagname" without frills.
-
-
-* jk/mbox-from-line (2014-09-22) 2 commits
- (merged to 'next' on 2014-09-23 at 506b89b)
- + mailinfo: work around -Wstring-plus-int warning
- (merged to 'next' on 2014-09-19 at 314af77)
- + mailinfo: make ">From" in-body header check more robust
-
- Some MUAs mangled a line in a message that begins with "From " to
- ">From " when writing to a mailbox file and feeding such an input
- to "git am" used to lose such a line.
+[New Topics]
+* dt/cache-tree-repair (2014-09-30) 1 commit
+ - t0090: avoid passing empty string to printf %d
-* rs/graph-simplify (2014-09-22) 1 commit
- (merged to 'next' on 2014-09-23 at 72969e2)
- + graph: simplify graph_padding_line()
+ This fixes a topic that has graduated to 'master'.
+ Will merge to 'next'.
+--------------------------------------------------
+[Graduated to "master"]
-* rs/remote-simplify (2014-09-22) 1 commit
- (merged to 'next' on 2014-09-23 at 176e316)
- + remote: simplify match_name_with_pattern() using strbuf
+* jc/test-lazy-prereq (2014-06-13) 1 commit
+ (merged to 'next' on 2014-09-25 at ed479f3)
+ + tests: drop GIT_*_TIMING_TESTS environment variable support
+ Test-script clean-up.
-* sb/t6031-typofix (2014-09-22) 1 commit
- (merged to 'next' on 2014-09-23 at aec57a9)
- + t6031-test-merge-recursive: do not forget to add file to be committed
+* jt/itimer-autoconf (2014-08-29) 3 commits
+ (merged to 'next' on 2014-09-25 at efd65ba)
+ + autoconf: check for setitimer()
+ + autoconf: check for struct itimerval
+ + git-compat-util.h: add missing semicolon after struct itimerval
+ (this branch is used by jt/timer-settime.)
-* sb/t9300-typofix (2014-09-22) 1 commit
- (merged to 'next' on 2014-09-23 at aa519bd)
- + t9300-fast-import: fix typo in test description
+ setitmer(2) and related API elements can be configured from
+ Makefile but autoconf did not know about it.
---------------------------------------------------
-[New Topics]
-* bw/use-write-script-in-tests (2014-09-29) 1 commit
- (merged to 'next' on 2014-09-29 at be4056e)
- + t/lib-credential: use write_script
+* pr/use-default-sigpipe-setting (2014-09-22) 2 commits
+ (merged to 'next' on 2014-09-24 at 2d678ed)
+ + mingw.h: add dummy functions for sigset_t operations
+ + unblock and unignore SIGPIPE
- Will merge to 'master'.
+ We used to get confused when a process called us with SIGPIPE
+ ignored; we do want to die with SIGPIPE when the output is not
+ read by default, and do ignore the signal when appropriate.
-* bw/trace-no-inline-getnanotime (2014-09-29) 1 commit
- - trace.c: do not mark getnanotime() as "inline"
+* sb/merge-recursive-copy-paste-fix (2014-09-23) 2 commits
+ (merged to 'next' on 2014-09-24 at b8dfbef)
+ + merge-recursive: remove stale commented debugging code
+ + merge-recursive: fix copy-paste mistake
- No file-scope static variables in an inlined function, please.
+ "git merge-recursive" had a small bug that could have made it
+ mishandle "one side deleted, the other side did not touch it" in a
+ rare corner case, where the other side actually did touch to cause
+ the blob object names to be different but both blobs before and
+ after the change normalize to the same (e.g. correcting mistake to
+ check in a blob with CRLF line endings by replacing it with another
+ blob that records the same contents with LF line endings).
--------------------------------------------------
[Stalled]
- autoconf: check for struct sigevent
- autoconf: check for struct timespec
- autoconf: check for timer_t
- (this branch uses jt/itimer-autoconf.)
Reviewed, discussed and wanting for a reroll.
--------------------------------------------------
[Cooking]
+* bw/use-write-script-in-tests (2014-09-29) 1 commit
+ (merged to 'next' on 2014-09-29 at be4056e)
+ + t/lib-credential: use write_script
+
+ Will merge to 'master'.
+
+
+* bw/trace-no-inline-getnanotime (2014-09-29) 1 commit
+ - trace.c: do not mark getnanotime() as "inline"
+
+ No file-scope static variables in an inlined function, please.
+
+
* po/everyday-doc (2014-09-29) 3 commits
- Make 'git help everyday' work
- doc: Makefile regularise OBSOLETE_HTML list building
Will merge to 'master'.
-* sb/merge-recursive-copy-paste-fix (2014-09-23) 2 commits
- (merged to 'next' on 2014-09-24 at b8dfbef)
- + merge-recursive: remove stale commented debugging code
- + merge-recursive: fix copy-paste mistake
-
- "git merge-recursive" had a small bug that could have made it
- mishandle "one side deleted, the other side did not touch it" in a
- rare corner case, where the other side actually did touch to cause
- the blob object names to be different but both blobs before and
- after the change normalize to the same (e.g. correcting mistake to
- check in a blob with CRLF line endings by replacing it with another
- blob that records the same contents with LF line endings).
-
- Will merge to 'master'.
-
-
* so/rebase-doc-fork-point (2014-09-29) 1 commit
- Documentation/git-rebase.txt: document when --fork-point is auto-enabled
Waiting for an Ack ($gmane/257448).
-* jt/itimer-autoconf (2014-08-29) 3 commits
- (merged to 'next' on 2014-09-25 at efd65ba)
- + autoconf: check for setitimer()
- + autoconf: check for struct itimerval
- + git-compat-util.h: add missing semicolon after struct itimerval
- (this branch is used by jt/timer-settime.)
-
- setitmer(2) and related API elements can be configured from
- Makefile but autoconf did not know about it.
-
- Will merge to 'master'.
-
-
* da/include-compat-util-first-in-c (2014-09-15) 4 commits
- SQUASH???
- check-headers: add header usage checks for .c files
the rest.
-* pr/use-default-sigpipe-setting (2014-09-22) 2 commits
- (merged to 'next' on 2014-09-24 at 2d678ed)
- + mingw.h: add dummy functions for sigset_t operations
- + unblock and unignore SIGPIPE
-
- We used to get confused when a process called us with SIGPIPE
- ignored; we do want to die with SIGPIPE when the output is not
- read by default, and do ignore the signal when appropriate.
-
- Will merge to 'master'.
-
-
* mh/lockfile (2014-09-26) 38 commits
- hold_locked_index(): move from lockfile.c to read-cache.c
- hold_lock_file_for_append(): restore errno before returning
* sp/stream-clean-filter (2014-09-22) 7 commits
- - sha1_file: don't convert off_t to size_t too early to avoid potential die()
- - convert: stream from fd to required clean filter to reduce used address space
- - copy_fd(): do not close the input file descriptor
- - mmap_limit: introduce GIT_MMAP_LIMIT to allow testing expected mmap size
- - memory_limit: use git_env_ulong() to parse GIT_ALLOC_LIMIT
- - config.c: add git_env_ulong() to parse environment variable
- - convert: drop arguments other than 'path' from would_convert_to_git()
+ (merged to 'next' on 2014-09-29 at 47fc36d)
+ + sha1_file: don't convert off_t to size_t too early to avoid potential die()
+ + convert: stream from fd to required clean filter to reduce used address space
+ + copy_fd(): do not close the input file descriptor
+ + mmap_limit: introduce GIT_MMAP_LIMIT to allow testing expected mmap size
+ + memory_limit: use git_env_ulong() to parse GIT_ALLOC_LIMIT
+ + config.c: add git_env_ulong() to parse environment variable
+ + convert: drop arguments other than 'path' from would_convert_to_git()
+
+ When running a required clean filter, we do not have to mmap the
+ original before feeding the filter. Instead, stream the file
+ contents directly to the filter and process its output.
- Will merge to 'next'.
+ Will merge to 'master'.
* jc/push-cert (2014-09-25) 24 commits
Will merge to 'master'.
-* jc/test-lazy-prereq (2014-06-13) 1 commit
- (merged to 'next' on 2014-09-25 at ed479f3)
- + tests: drop GIT_*_TIMING_TESTS environment variable support
-
- Test-script clean-up.
-
- Will merge to 'master'.
-
-
* mt/patch-id-stable (2014-06-10) 1 commit
- patch-id: change default to stable