@leroysheep / MovieWebApp / commits / 8c3450d755

What's cooking (2017/10 #01)

Junio C Hamano committed Oct 4, 2017 at 16:18 UTC 8c3450d755d7bb5662ad79f351c50f09ca559e71
1 file changed +353 -314
whats-cooking.txt
+353 -314
index c8015dd0df..09c8f462ec 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,10 +1,10 @@ To: git@vger.kernel.org Bcc: lwn@lwn.net -Subject: What's cooking in git.git (Sep 2017, #06; Fri, 29) -X-master-at: ea220ee40cbb03a63ebad2be902057bf742492fd -X-next-at: c088eec7b5eaefc58ab32b335cb69cb3d5e2cd78 +Subject: What's cooking in git.git (Oct 2017, #01; Wed, 4) +X-master-at: 8fb8a945bc2dea2bb04249213ad8dacffbfc604f +X-next-at: 6663358d3414aff4d7dac0c6f06cbfcc2cb48ddb -What's cooking in git.git (Sep 2017, #06; Fri, 29) +What's cooking in git.git (Oct 2017, #01; Wed, 4) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with @@ -12,6 +12,10 @@ 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. +I wanted to do v2.15-rc0 today but it seems that this has to slip, +with too many topics still in flight in 'next' among which many are +fixes, one is even a fix for a recent regression. + You can find the changes described here in the integration branches of the repositories listed at @@ -20,336 +24,402 @@ of the repositories listed at -------------------------------------------------- [Graduated to "master"] -* hn/typofix (2017-09-22) 1 commit - (merged to 'next' on 2017-09-25 at 489ad60f5b) - + submodule.h: typofix +* ad/doc-markup-fix (2017-09-29) 1 commit + (merged to 'next' on 2017-10-02 at fdf600e8f3) + + doc: correct command formatting + Docfix. -* ic/fix-filter-branch-to-handle-tag-without-tagger (2017-09-22) 4 commits - (merged to 'next' on 2017-09-25 at c7550033df) - + filter-branch: use hash-object instead of mktag - + filter-branch: stash away ref map in a branch - + filter-branch: preserve and restore $GIT_AUTHOR_* and $GIT_COMMITTER_* - + filter-branch: reset $GIT_* before cleaning up - "git filter-branch" cannot reproduce a history with a tag without - the tagger field, which only ancient versions of Git allowed to be - created. This has been corrected. +* bc/rev-parse-parseopt-fix (2017-09-25) 7 commits + (merged to 'next' on 2017-09-26 at f3e013eaa4) + + parse-options: only insert newline in help text if needed + + parse-options: write blank line to correct output stream + + t0040,t1502: Demonstrate parse_options bugs + (merged to 'next' on 2017-09-24 at e479bce0ff) + + git-rebase: don't ignore unexpected command line arguments + + rev-parse parseopt: interpret any whitespace as start of help text + + rev-parse parseopt: do not search help text for flag chars + + t1502: demonstrate rev-parse --parseopt option mis-parsing + Recent versions of "git rev-parse --parseopt" did not parse the + option specification that does not have the optional flags (*=?!) + correctly, which has been corrected. -* ik/userdiff-html-h-element-fix (2017-09-24) 1 commit - (merged to 'next' on 2017-09-25 at e3cbe89672) - + userdiff: fix HTML hunk header regexp - The built-in pattern to detect the "function header" for HTML did - not match <H1>..<H6> elements without any attributes, which has - been fixed. +* bw/git-clang-format (2017-10-01) 1 commit + (merged to 'next' on 2017-10-02 at ee84c89b07) + + clang-format: adjust line break penalties + (this branch is used by sb/git-clang-format.) + Adjust clang-format penalty parameters. -* jc/merge-x-theirs-docfix (2017-09-25) 1 commit - (merged to 'next' on 2017-09-26 at 5a7d954982) - + merge-strategies: avoid implying that "-s theirs" exists - The documentation for '-X<option>' for merges was misleadingly - written to suggest that "-s theirs" exists, which is not the case. +* hn/path-ownership-comment (2017-09-27) 2 commits + (merged to 'next' on 2017-09-28 at 7cf8481c29) + + read_gitfile_gently: clarify return value ownership. + + real_path: clarify return value ownership + Add comment to a few functions that use a short-lived buffer the + caller can peek and copy out of. -* jk/describe-omit-some-refs (2017-09-17) 1 commit - (merged to 'next' on 2017-09-24 at c373c71279) - + describe: fix matching to actually match all patterns - (this branch is used by mk/describe-match-with-all.) - "git describe --match" learned to take multiple patterns in v2.13 - series, but the feature ignored the patterns after the first one - and did not work at all. This has been fixed. +* hn/string-list-doc (2017-09-27) 1 commit + (merged to 'next' on 2017-09-28 at ffc8f65f4a) + + string-list.h: move documentation from Documentation/api/ into header + Doc reorg. -* jk/diff-blob (2017-09-22) 1 commit - (merged to 'next' on 2017-09-25 at 38286c8ff5) - + cat-file: handle NULL object_context.path - "git cat-file --textconv" started segfaulting recently, which - has been corrected. +* hn/submodule-comment (2017-09-26) 1 commit + (merged to 'next' on 2017-09-28 at a071ca3fde) + + submodule.c: describe submodule_to_gitdir() in a new comment -* jk/doc-read-tree-table-asciidoctor-fix (2017-09-24) 1 commit - (merged to 'next' on 2017-09-25 at 070163b964) - + doc: put literal block delimiter around table +* jk/no-optional-locks (2017-09-27) 1 commit + (merged to 'next' on 2017-09-28 at eaffe9c638) + + git: add --no-optional-locks option - A docfix. + Some commands (most notably "git status") makes an opportunistic + update when performing a read-only operation to help optimize later + operations in the same repository. The new "--no-optional-locks" + option can be passed to Git to disable them. -* jk/fallthrough (2017-09-22) 3 commits - (merged to 'next' on 2017-09-25 at ad96c37620) - + consistently use "fallthrough" comments in switches - + curl_trace(): eliminate switch fallthrough - + test-line-buffer: simplify command parsing +* jk/read-in-full (2017-09-27) 7 commits + (merged to 'next' on 2017-09-28 at 9d109b9233) + + worktree: check the result of read_in_full() + + worktree: use xsize_t to access file size + + distinguish error versus short read from read_in_full() + + avoid looking at errno for short read_in_full() returns + + prefer "!=" when checking read_in_full() result + + notes-merge: drop dead zero-write code + + files-backend: prefer "0" for write_in_full() error check - Many codepaths have been updated to squelch -Wimplicit-fallthrough - warnings from Gcc 7 (which is a good code hygiene). + Code clean-up to prevent future mistakes by copying and pasting + code that checks the result of read_in_full() function. -* jm/status-ignored-directory-optim (2017-09-19) 1 commit - (merged to 'next' on 2017-09-24 at ca50f5ed41) - + Improve performance of git status --ignored +* jk/validate-headref-fix (2017-09-27) 3 commits + (merged to 'next' on 2017-09-28 at dcea9d16f9) + + validate_headref: use get_oid_hex for detached HEADs + + validate_headref: use skip_prefix for symref parsing + + validate_headref: NUL-terminate HEAD buffer - "git status --ignored", when noticing that a directory without any - tracked path is ignored, still enumerated all the ignored paths in - the directory, which is unnecessary. The codepath has been - optimized to avoid this overhead. + Code clean-up. -* js/win32-lazyload-dll (2017-09-26) 1 commit - (merged to 'next' on 2017-09-26 at 04577bf1c5) - + Win32: simplify loading of DLL functions +* js/rebase-i-final (2017-07-27) 10 commits + (merged to 'next' on 2017-09-26 at ea3f8f5e11) + + rebase -i: rearrange fixup/squash lines using the rebase--helper + + t3415: test fixup with wrapped oneline + + rebase -i: skip unnecessary picks using the rebase--helper + + rebase -i: check for missing commits in the rebase--helper + + t3404: relax rebase.missingCommitsCheck tests + + rebase -i: also expand/collapse the SHA-1s via the rebase--helper + + rebase -i: do not invent onelines when expanding/collapsing SHA-1s + + rebase -i: remove useless indentation + + rebase -i: generate the script via rebase--helper + + t3415: verify that an empty instructionFormat is handled as before - Add a helper in anticipation for its need in a future topic RSN. + The final batch to "git rebase -i" updates to move more code from + the shell script to C. -* jt/fast-export-copy-modify-fix (2017-09-21) 1 commit - (merged to 'next' on 2017-09-24 at c02bfe1902) - + fast-export: do not copy from modified file +* mh/mmap-packed-refs (2017-09-25) 21 commits + (merged to 'next' on 2017-09-29 at 3639417666) + + packed-backend.c: rename a bunch of things and update comments + + mmapped_ref_iterator: inline into `packed_ref_iterator` + + ref_cache: remove support for storing peeled values + + packed_ref_store: get rid of the `ref_cache` entirely + + ref_store: implement `refs_peel_ref()` generically + + packed_read_raw_ref(): read the reference from the mmapped buffer + + packed_ref_iterator_begin(): iterate using `mmapped_ref_iterator` + + read_packed_refs(): ensure that references are ordered when read + + packed_ref_cache: keep the `packed-refs` file mmapped if possible + + packed-backend.c: reorder some definitions + + mmapped_ref_iterator_advance(): no peeled value for broken refs + + mmapped_ref_iterator: add iterator over a packed-refs file + + packed_ref_cache: remember the file-wide peeling state + + read_packed_refs(): read references with minimal copying + + read_packed_refs(): make parsing of the header line more robust + + read_packed_refs(): only check for a header at the top of the file + + read_packed_refs(): use mmap to read the `packed-refs` file + + die_unterminated_line(), die_invalid_line(): new functions + + packed_ref_cache: add a backlink to the associated `packed_ref_store` + + prefix_ref_iterator: break when we leave the prefix + + ref_iterator: keep track of whether the iterator output is ordered - "git fast-export" with -M/-C option issued "copy" instruction on a - path that is simultaneously modified, which was incorrect. + Operations that do not touch (majority of) packed refs have been + optimized by making accesses to packed-refs file lazy; we no longer + pre-parse everything, and an access to a single ref in the + packed-refs does not touch majority of irrelevant refs, either. -* ks/doc-use-camelcase-for-config-name (2017-09-25) 1 commit - (merged to 'next' on 2017-09-26 at 7b4d2115af) - + doc: camelCase the config variables to improve readability +* mr/doc-negative-pathspec (2017-09-25) 1 commit + (merged to 'next' on 2017-09-29 at 147bb7ef8b) + + docs: improve discoverability of exclude pathspec - Doc update. + Doc updates. -* ma/leakplugs (2017-09-24) 6 commits - (merged to 'next' on 2017-09-25 at 69d381a96a) - + pack-bitmap[-write]: use `object_array_clear()`, don't leak - + object_array: add and use `object_array_pop()` - + object_array: use `object_array_clear()`, not `free()` - + leak_pending: use `object_array_clear()`, not `free()` - + commit: fix memory leak in `reduce_heads()` - + builtin/commit: fix memory leak in `prepare_index()` +* sb/diff-color-move (2017-09-28) 1 commit + (merged to 'next' on 2017-09-28 at cbdbc741be) + + diff: correct newline in summary for renamed files - Memory leaks in various codepaths have been plugged. + The output from "git diff --summary" was broken in a recent topic + that has been merged to 'master' and lost a LF after reporting of + mode change. This has been fixed. -* mk/describe-match-with-all (2017-09-20) 2 commits - (merged to 'next' on 2017-09-24 at f96d58dd83) - + describe: teach --match to handle branches and remotes - + Merge branch 'jk/describe-omit-some-refs' into mk/describe-match-with-all +* sb/submodule-diff-header-fix (2017-09-28) 1 commit + (merged to 'next' on 2017-09-28 at 10e0f59303) + + submodule: correct error message for missing commits - "git describe --match <pattern>" has been taught to play well with - the "--all" option. + Error message tweak. -* mk/diff-delta-avoid-large-offset (2017-08-11) 1 commit - (merged to 'next' on 2017-09-26 at b4983ac027) - + diff-delta: do not allow delta offset truncation +* sb/test-submodule-update-config (2017-09-27) 1 commit + (merged to 'next' on 2017-09-28 at 497214603c) + + t7406: submodule.<name>.update command must not be run from .gitmodules - The delta format used in the packfile cannot reference data at - offset larger than what can be expressed in 4-byte, but the - generator for the data failed to make sure the offset does not - overflow. This has been corrected. +* sd/branch-copy (2017-09-24) 4 commits + (merged to 'next' on 2017-09-28 at a6eceefa02) + + branch: fix "copy" to never touch HEAD + + branch: add a --copy (-c) option to go with --move (-m) + + branch: add test for -m renaming multiple config sections + + config: create a function to format section headers -* mk/diff-delta-uint-may-be-shorter-than-ulong (2017-08-10) 1 commit - (merged to 'next' on 2017-09-26 at 0ccd9346d7) - + diff-delta: fix encoding size that would not fit in "unsigned int" + "git branch" learned "-c/-C" to create a new branch by copying an + existing one. - The machinery to create xdelta used in pack files received the - sizes of the data in size_t, but lost the higher bits of them by - storing them in "unsigned int" during the computation, which is - fixed. +-------------------------------------------------- +[New Topics] +* jc/merge-symlink-ours-theirs (2017-09-26) 1 commit + - merge: teach -Xours/-Xtheirs to symbolic link merge -* rj/no-sign-compare (2017-09-22) 4 commits - (merged to 'next' on 2017-09-25 at 71ee264ce6) - + ALLOC_GROW: avoid -Wsign-compare warnings - + cache.h: hex2chr() - avoid -Wsign-compare warnings - + commit-slab.h: avoid -Wsign-compare warnings - + git-compat-util.h: xsize_t() - avoid -Wsign-compare warnings + "git merge -Xours/-Xtheirs" learned to use our/their version when + resolving a conflicting updates to a symbolic link. - Many codepaths have been updated to squelch -Wsign-compare - warnings. + Needs review. -* rs/mailinfo-qp-decode-fix (2017-09-24) 1 commit - (merged to 'next' on 2017-09-25 at d48c594041) - + mailinfo: don't decode invalid =XY quoted-printable sequences +* jt/oidmap (2017-10-01) 1 commit + - oidmap: map with OID as key - "git mailinfo" was loose in decoding quoted printable and produced - garbage when the two letters after the equal sign are not - hexadecimal. This has been fixed. + Introduce a new "oidmap" API and rewrite oidset to use it. + Will merge to 'next'. -* rs/resolve-ref-optional-result (2017-09-24) 3 commits - (merged to 'next' on 2017-09-25 at b0f31228bb) - + refs: pass NULL to resolve_ref_unsafe() if hash is not needed - + refs: pass NULL to refs_resolve_ref_unsafe() if hash is not needed - + refs: make sha1 output parameter of refs_resolve_ref_unsafe() optional - Code clean-up. +* jt/partial-clone-lazy-fetch (2017-10-02) 18 commits + - fetch-pack: restore save_commit_buffer after use + - unpack-trees: batch fetching of missing blobs + - clone: configure blobmaxbytes in created repos + - clone: support excluding large blobs + - fetch: support excluding large blobs + - fetch: refactor calculation of remote list + - fetch-pack: support excluding large blobs + - pack-objects: support --blob-max-bytes + - pack-objects: rename want_.* to ignore_.* + - gc: do not repack promisor packfiles + - rev-list: support termination at promisor objects + - sha1_file: support lazily fetching missing objects + - introduce fetch-object: fetch one promisor object + - index-pack: refactor writing of .keep files + - fsck: support promisor objects as CLI argument + - fsck: support referenced promisor objects + - fsck: support refs pointing to promisor objects + - fsck: introduce partialclone extension + + A journey for "git clone" and "git fetch" to become "lazier" by + depending more on its remote repository---this is the beginning of + it. + Needs review. -* sb/doc-config-submodule-update (2017-09-24) 1 commit - (merged to 'next' on 2017-09-25 at 447014b4ce) - + Documentation/config: clarify the meaning of submodule.<name>.update +* ma/builtin-unleak (2017-10-02) 1 commit + - builtin/: add UNLEAKs -* sb/merge-commit-msg-hook (2017-09-22) 1 commit - (merged to 'next' on 2017-09-25 at 096e0502a8) - + Documentation/githooks: mention merge in commit-msg hook + Many variables that points at a region of memory that will live + throughout the life of the program have been marked with UNLEAK + marker to help the leak checkers concentrate on real leaks.. - As "git commit" to conclude a conflicted "git merge" honors the - commit-msg hook, "git merge" that records a merge commit that - cleanly auto-merges should, but it didn't. - * sb/merge-commit-msg-hook (2017-09-22) 1 commit - (merged to 'next' on 2017-09-25 at 096e0502a8) - + Documentation/githooks: mention merge in commit-msg hook - Add documentation for a topic that has recently graduated to the - 'master' branch. +* ma/lockfile-fixes (2017-10-02) 11 commits + - read-cache: roll back lock on error with `COMMIT_LOCK` + - read-cache: don't leave dangling pointer in `do_write_index()` + - read-cache: require flags for `write_locked_index()` + - cache.h: document `write_locked_index()` + - apply: remove `newfd` from `struct apply_state` + - apply: move lockfile into `apply_state` + - cache-tree: simplify locking logic + - tempfile: fix documentation on `delete_tempfile()` + - lockfile: fix documentation on `close_lock_file_gently()` + - treewide: prefer lockfiles on the stack + - sha1_file: do not leak `lock_file` --------------------------------------------------- -[New Topics] + An earlier update made it possible to use an on-stack in-core + lockfile structure (as opposed to having to deliberately leak an + on-heap one). Many codepaths have been updated to take advantage + of this new facility. -* er/fast-import-dump-refs-on-checkpoint (2017-09-29) 2 commits - - SQUASH??? - - fast-import: checkpoint: dump branches/tags/marks even if object_count==0 - The checkpoint command "git fast-import" did not flush updates to - refs and marks unless at least one object was created since the - last checkpoint, which has been corrected, as these things can - happen without any new object getting created. +* rs/cleanup-strbuf-users (2017-10-02) 3 commits + (merged to 'next' on 2017-10-03 at 322ec33ad8) + + graph: use strbuf_addchars() to add spaces + + use strbuf_addstr() for adding strings to strbufs + + path: use strbuf_add_real_path() + Code clean-up. -* hn/path-ownership-comment (2017-09-27) 2 commits - (merged to 'next' on 2017-09-28 at 7cf8481c29) - + read_gitfile_gently: clarify return value ownership. - + real_path: clarify return value ownership + Will merge to 'master'. - Add comment to a few functions that use a short-lived buffer the - caller can peek and copy out of. + +* rs/cocci-de-paren-call-params (2017-10-02) 1 commit + (merged to 'next' on 2017-10-03 at ee97fe5c24) + + coccinelle: remove parentheses that become unnecessary + + Code clean-up. Will merge to 'master'. -* hn/string-list-doc (2017-09-27) 1 commit - (merged to 'next' on 2017-09-28 at ffc8f65f4a) - + string-list.h: move documentation from Documentation/api/ into header +* rs/run-command-use-alloc-array (2017-10-03) 1 commit + (merged to 'next' on 2017-10-03 at e3869b6c32) + + run-command: use ALLOC_ARRAY - Doc reorg. + Code clean-up. Will merge to 'master'. -* hn/submodule-comment (2017-09-26) 1 commit - (merged to 'next' on 2017-09-28 at a071ca3fde) - + submodule.c: describe submodule_to_gitdir() in a new comment +* rs/tag-null-pointer-arith-fix (2017-10-02) 1 commit + (merged to 'next' on 2017-10-03 at e05d92fec9) + + tag: avoid NULL pointer arithmetic + + Code clean-up. Will merge to 'master'. -* jk/no-optional-locks (2017-09-27) 1 commit - (merged to 'next' on 2017-09-28 at eaffe9c638) - + git: add --no-optional-locks option +* rs/use-free-and-null (2017-10-02) 1 commit + (merged to 'next' on 2017-10-03 at 6340234d67) + + repository: use FREE_AND_NULL - Some commands (most notably "git status") makes an opportunistic - update when performing a read-only operation to help optimize later - operations in the same repository. The new "--no-optional-locks" - option can be passed to Git to disable them. + Code clean-up. Will merge to 'master'. -* jk/read-in-full (2017-09-27) 7 commits - (merged to 'next' on 2017-09-28 at 9d109b9233) - + worktree: check the result of read_in_full() - + worktree: use xsize_t to access file size - + distinguish error versus short read from read_in_full() - + avoid looking at errno for short read_in_full() returns - + prefer "!=" when checking read_in_full() result - + notes-merge: drop dead zero-write code - + files-backend: prefer "0" for write_in_full() error check +* sb/git-clang-format (2017-10-02) 1 commit + (merged to 'next' on 2017-10-03 at b40d47b9d5) + + clang-format: add a comment about the meaning/status of the - Code clean-up to prevent future mistakes by copying and pasting - code that checks the result of read_in_full() function. + Add comment to clarify that the style file is meant to be used with + clang-5 and the rules are still work in progress. Will merge to 'master'. -* jk/validate-headref-fix (2017-09-27) 3 commits - (merged to 'next' on 2017-09-28 at dcea9d16f9) - + validate_headref: use get_oid_hex for detached HEADs - + validate_headref: use skip_prefix for symref parsing - + validate_headref: NUL-terminate HEAD buffer +* rs/resolve-ref-optional-result (2017-10-01) 2 commits + (merged to 'next' on 2017-10-03 at f129d4b0e9) + + refs: pass NULL to resolve_refdup() if hash is not needed + + refs: pass NULL to refs_resolve_refdup() if hash is not needed Code clean-up. Will merge to 'master'. -* sb/diff-color-move (2017-09-28) 1 commit - (merged to 'next' on 2017-09-28 at cbdbc741be) - + diff: correct newline in summary for renamed files +* ar/request-pull-phrasofix (2017-10-03) 1 commit + (merged to 'next' on 2017-10-03 at 07807bba90) + + request-pull: capitalise "Git" to make it a proper noun - The output from "git diff --summary" was broken in a recent topic - that has been merged to 'master' and lost a LF after reporting of - mode change. This has been fixed. + Spell the name of our system as "Git" in the output from + request-pull script. Will merge to 'master'. -* sb/submodule-diff-header-fix (2017-09-28) 1 commit - (merged to 'next' on 2017-09-28 at 10e0f59303) - + submodule: correct error message for missing commits +* tb/show-trailers-in-ref-filter (2017-10-02) 7 commits + - ref-filter.c: parse trailers arguments with %(contents) atom + - ref-filter.c: use trailer_opts to format trailers + - t6300: refactor %(trailers) tests + - doc: use "`<literal>`"-style quoting for literal strings + - doc: 'trailers' is the preferred way to format trailers + - t4205: unfold across multiple lines + - pretty.c: delimit "%(trailers)" arguments with "," - Error message tweak. + "git for-each-ref --format=..." learned a new format element, + %(trailers), to show only the commit log trailer part of the log + message. - Will merge to 'master'. + Will merge to 'next'. -* sb/test-submodule-update-config (2017-09-27) 1 commit - (merged to 'next' on 2017-09-28 at 497214603c) - + t7406: submodule.<name>.update command must not be run from .gitmodules +* jk/ui-color-always-to-auto (2017-10-04) 3 commits + - Merge branch 'jk/ui-color-always-to-auto-maint' into jk/ui-color-always-to-auto + - t7301: use test_terminal to check color + - t4015: use --color with --color-moved + (this branch uses jk/ui-color-always-to-auto-maint.) - Will merge to 'master'. +* jk/ui-color-always-to-auto-maint (2017-10-04) 10 commits + - color: make "always" the same as "auto" in config + - provide --color option for all ref-filter users + - t3205: use --color instead of color.branch=always + - t3203: drop "always" color test + - t6006: drop "always" color config tests + - t7502: use diff.noprefix for --verbose test + - t7508: use test_terminal for color output + - t3701: use test-terminal to collect color output + - t4015: prefer --color to -c color.diff=always + - test-terminal: set TERM=vt100 + (this branch is used by jk/ui-color-always-to-auto.) -* ad/doc-markup-fix (2017-09-29) 1 commit - - doc: correct command formatting - Docfix. +* jn/strbuf-doc-re-reuse (2017-10-04) 1 commit + - strbuf doc: reuse after strbuf_release is fine Will merge to 'next'. -* jr/hash-migration-plan-doc (2017-09-28) 1 commit - - technical doc: add a design doc for hash function transition +* ks/branch-tweak-error-message-for-extra-args (2017-10-04) 1 commit + - branch: change the error messages to be more meaningful - Lay out plans for weaning us off of SHA-1. + Error message tweak. - Will merge to 'next'. +* ks/verify-filename-non-option-error-message-tweak (2017-10-04) 1 commit + - setup: update error message to be more meaningful -* ot/mru-on-list (2017-09-28) 1 commit - - mru: use double-linked list from list.h + Error message tweak. - The first step to getting rid of mru API and using the - doubly-linked list API directly instead. - Needs review. - Outreachy. +* rs/qsort-s (2017-10-04) 1 commit + - test-stringlist: avoid buffer underrun when sorting nothing + Will merge to 'next'. -* rb/compat-poll-fix (2017-09-29) 1 commit - - poll.c: always set revents, even if to zero - Backports a moral equivalent of 2015 fix to the poll emulation from - the upstream gnulib to fix occasional breakages on HPE NonStop. +* sb/branch-avoid-repeated-strbuf-release (2017-10-04) 1 commit + - branch: reset instead of release a strbuf - Needs review. + Will merge to 'next'. + + +* tg/memfixes (2017-10-04) 3 commits + - sub-process: use child_process.args instead of child_process.argv + - http-push: fix construction of hex value from path + - path.c: fix uninitialized memory access + Fixes for a handful memory access issues identified by valgrind. + + Will merge to 'next'. -------------------------------------------------- [Stalled] @@ -408,15 +478,45 @@ of the repositories listed at -------------------------------------------------- [Cooking] -* mr/doc-negative-pathspec (2017-09-25) 1 commit - (merged to 'next' on 2017-09-29 at 147bb7ef8b) - + docs: improve discoverability of exclude pathspec +* er/fast-import-dump-refs-on-checkpoint (2017-09-29) 1 commit + (merged to 'next' on 2017-10-03 at 4e7b0e7ec1) + + fast-import: checkpoint: dump branches/tags/marks even if object_count==0 - Doc updates. + The checkpoint command "git fast-import" did not flush updates to + refs and marks unless at least one object was created since the + last checkpoint, which has been corrected, as these things can + happen without any new object getting created. Will merge to 'master'. +* jr/hash-migration-plan-doc (2017-09-28) 1 commit + - technical doc: add a design doc for hash function transition + + Lay out plans for weaning us off of SHA-1. + + Will merge to 'next'. + + +* ot/mru-on-list (2017-10-01) 1 commit + - mru: use double-linked list from list.h + + The first step to getting rid of mru API and using the + doubly-linked list API directly instead. + + Needs review. + Outreachy. + + +* rb/compat-poll-fix (2017-09-29) 1 commit + - poll.c: always set revents, even if to zero + + Backports a moral equivalent of 2015 fix to the poll emulation from + the upstream gnulib to fix occasional breakages on HPE NonStop. + + Needs review. + + * jm/svn-pushmergeinfo-fix (2017-09-17) 1 commit - git-svn: fix svn.pushmergeinfo handling of svn+ssh usernames. @@ -455,29 +555,12 @@ of the repositories listed at What's the doneness of this one? -* bc/rev-parse-parseopt-fix (2017-09-25) 7 commits - (merged to 'next' on 2017-09-26 at f3e013eaa4) - + parse-options: only insert newline in help text if needed - + parse-options: write blank line to correct output stream - + t0040,t1502: Demonstrate parse_options bugs - (merged to 'next' on 2017-09-24 at e479bce0ff) - + git-rebase: don't ignore unexpected command line arguments - + rev-parse parseopt: interpret any whitespace as start of help text - + rev-parse parseopt: do not search help text for flag chars - + t1502: demonstrate rev-parse --parseopt option mis-parsing - - Recent versions of "git rev-parse --parseopt" did not parse the - option specification that does not have the optional flags (*=?!) - correctly, which has been corrected. - - Will merge to 'master'. - - -* ds/find-unique-abbrev-optim (2017-09-19) 4 commits - - SQUASH??? +* ds/find-unique-abbrev-optim (2017-10-03) 5 commits + - sha1_name: minimize OID comparisons during disambiguation - sha1_name: parse less while finding common prefix - sha1_name: unroll len loop in find_unique_abbrev_r() - - sha1_name: create perf test for find_unique_abbrev() + - p0008-abbrev.sh: test find_unique_abbrev() perf + - test-list-objects: list a subset of object ids * cc/perf-run-config (2017-09-24) 9 commits @@ -506,46 +589,28 @@ of the repositories listed at Waiting for review to conclude. -* js/rebase-i-final (2017-07-27) 10 commits - (merged to 'next' on 2017-09-26 at ea3f8f5e11) - + rebase -i: rearrange fixup/squash lines using the rebase--helper - + t3415: test fixup with wrapped oneline - + rebase -i: skip unnecessary picks using the rebase--helper - + rebase -i: check for missing commits in the rebase--helper - + t3404: relax rebase.missingCommitsCheck tests - + rebase -i: also expand/collapse the SHA-1s via the rebase--helper - + rebase -i: do not invent onelines when expanding/collapsing SHA-1s - + rebase -i: remove useless indentation - + rebase -i: generate the script via rebase--helper - + t3415: verify that an empty instructionFormat is handled as before - - The final batch to "git rebase -i" updates to move more code from - the shell script to C. - - Will merge to 'master'. - - -* bp/fsmonitor (2017-09-24) 12 commits - - 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 +* bp/fsmonitor (2017-10-04) 13 commits + - fsmonitor: MINGW support for watchman integration + (merged to 'next' on 2017-10-02 at cf0c67979c) + + 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 We learned to talk to watchman to speed up "git status" and other operations that need to see which paths have been modified. - Looking mostly ready. Further comments? - -* bw/protocol-v1 (2017-09-27) 9 commits +* bw/protocol-v1 (2017-10-04) 10 commits + - ssh: introduce a 'simple' ssh variant - i5700: add interop test for protocol transition - http: tell server that the client understands v1 - connect: tell server that the client understands v1 @@ -561,46 +626,13 @@ of the repositories listed at without harming them. -* mh/mmap-packed-refs (2017-09-25) 21 commits - (merged to 'next' on 2017-09-29 at 3639417666) - + packed-backend.c: rename a bunch of things and update comments - + mmapped_ref_iterator: inline into `packed_ref_iterator` - + ref_cache: remove support for storing peeled values - + packed_ref_store: get rid of the `ref_cache` entirely - + ref_store: implement `refs_peel_ref()` generically - + packed_read_raw_ref(): read the reference from the mmapped buffer - + packed_ref_iterator_begin(): iterate using `mmapped_ref_iterator` - + read_packed_refs(): ensure that references are ordered when read - + packed_ref_cache: keep the `packed-refs` file mmapped if possible - + packed-backend.c: reorder some definitions - + mmapped_ref_iterator_advance(): no peeled value for broken refs - + mmapped_ref_iterator: add iterator over a packed-refs file - + packed_ref_cache: remember the file-wide peeling state - + read_packed_refs(): read references with minimal copying - + read_packed_refs(): make parsing of the header line more robust - + read_packed_refs(): only check for a header at the top of the file - + read_packed_refs(): use mmap to read the `packed-refs` file - + die_unterminated_line(), die_invalid_line(): new functions - + packed_ref_cache: add a backlink to the associated `packed_ref_store` - + prefix_ref_iterator: break when we leave the prefix - + ref_iterator: keep track of whether the iterator output is ordered - - Operations that do not touch (majority of) packed refs have been - optimized by making accesses to packed-refs file lazy; we no longer - pre-parse everything, and an access to a single ref in the - packed-refs does not touch majority of irrelevant refs, either. - - Will merge to 'master'. - - -* pc/submodule-helper (2017-09-25) 4 commits +* pc/submodule-helper (2017-10-02) 3 commits - submodule: port submodule subcommand 'status' from shell to C - - submodule: port set_name_rev() from shell to C - submodule--helper: introduce for_each_listed_submodule() - submodule--helper: introduce get_submodule_displaypath() GSoC. - Looking better; it appeared to me that 3/4 is totally superfluous, though. + Is this ready for 'next'? * bc/hash-algo (2017-08-20) 5 commits @@ -693,14 +725,20 @@ of the repositories listed at this release cycle. -* sd/branch-copy (2017-09-24) 4 commits - (merged to 'next' on 2017-09-28 at a6eceefa02) - + branch: fix "copy" to never touch HEAD - + branch: add a --copy (-c) option to go with --move (-m) - + branch: add test for -m renaming multiple config sections - + config: create a function to format section headers +-------------------------------------------------- +[Discarded] + +* jc/ref-filter-colors-fix (2017-10-03) 2 commits + . colors: git_default_config() does not read color.ui + . Revert "color: check color.ui in git_default_config()" + + Recent tip of 'master' and 'maint' (at least as of v2.14.2) has a + regression in "git add -p" for those who set ui.color=always in + their configuration, caused by us being overly aggressive in + allowing plumbing commands to honor the configuration to fix a + fallout from an earlier change that made everybody, even the + plumbing commands, to automatically color its output by default. + Revert it for now from the released version (and to be released + one) until we come up with a different fix to the problem. - "git branch" learned "-c/-C" to create and switch to a new branch - by copying an existing one. - Will merge to 'master'.