From a62bbae61827242ea11dff5bd4f1099eb4828cfa Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 28 Jun 2019 15:12:53 -0700 Subject: What's cooking (2019/06 #07) diff --git a/whats-cooking.txt b/whats-cooking.txt index ec82d27..caa73c0 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 (Jun 2019, #06; Wed, 26) +Subject: What's cooking in git.git (Jun 2019, #07; Fri, 28) X-master-at: 8dca754b1e874719a732bc9ab7b0e14b21b1bc10 -X-next-at: ee2e6308ae95ce7ba2fabedcc43f5f741e71c152 +X-next-at: 81fc6c5d4a7fb145529da1dfc407c4e0c0e8ae8e -What's cooking in git.git (Jun 2019, #06; Wed, 26) +What's cooking in git.git (Jun 2019, #07; Fri, 28) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with @@ -21,89 +21,181 @@ of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html -------------------------------------------------- -[Graduated to "master"] +[New Topics] -* ab/hash-object-doc (2019-05-28) 1 commit - (merged to 'next' on 2019-06-06 at 8e4d85b906) - + hash-object doc: stop mentioning git-cvsimport +* cb/windows-manifest (2019-06-27) 1 commit + - mingw: embed a manifest to trick UAC into Doing The Right Thing - Doc update. + Windows update. + + Will merge to 'next'. -* an/ignore-doc-update (2019-06-04) 1 commit - (merged to 'next' on 2019-06-06 at 8579d82c0d) - + gitignore.txt: make slash-rules more readable +* js/mingw-gcc-stash-protect (2019-06-27) 1 commit + - mingw: enable stack smashing protector - The description about slashes in gitignore patterns (used to - indicate things like "anchored to this level only" and "only - matches directories") has been revamped. + Windows update. + + Will merge to 'next'. -* cm/send-email-document-req-modules (2019-05-31) 1 commit - (merged to 'next' on 2019-06-06 at acf1c2fc96) - + send-email: update documentation of required Perl modules +* js/mingw-use-utf8 (2019-06-27) 2 commits + - mingw: use Unicode functions explicitly + - mingw: get pw_name in UTF-8 format - A doc update. + Windows update. + Will merge to 'next'. -* jt/partial-clone-missing-ref-delta-base (2019-06-11) 4 commits - (merged to 'next' on 2019-06-12 at 95628af9bb) - + t5616: cover case of client having delta base - + t5616: use correct flag to check object is missing - (merged to 'next' on 2019-05-29 at 5d7573a151) - + index-pack: prefetch missing REF_DELTA bases - + t5616: refactor packfile replacement - "git fetch" into a lazy clone forgot to fetch base objects that are - necessary to complete delta in a thin packfile, which has been - corrected. +* kb/windows-force-utf8 (2019-06-27) 1 commit + - gettext: always use UTF-8 on native Windows + + Windows update. + + Will merge to 'next'. + + +* js/rebase-reschedule-applies-only-to-interactive (2019-06-27) 1 commit + - rebase: ignore rebase.reschedulefailedexec unless interactive + + The configuration variable rebase.rescheduleFailedExec should be + effective only while running an interactive rebase and should not + affect anything when running an non-interactive one, which was not + the case. This has been corrected. + + Almost there, modulo minor nits. + -* md/list-objects-filter-memfix (2019-05-31) 1 commit - (merged to 'next' on 2019-06-06 at 80f0187cef) - + list-objects-filter: correct usage of ALLOC_GROW +* jt/t5551-test-chunked (2019-06-27) 1 commit + - t5551: test usage of chunked encoding explicitly - The filter_data used in the list-objects-filter (which manages a - lazily sparse clone repository) did not use the dynamic array API - correctly---'nr' is supposed to point at one past the last element - of the array in use. This has been corrected. + Update smart-http test. + Will merge to 'next'. + + +* tb/ref-filter-multiple-patterns (2019-06-27) 1 commit + - ref-filter.c: find disjoint pattern prefixes + + "git for-each-ref" with multiple patterns have been optimized. + + Will merge to 'next'. -* md/list-objects-filter-parse-msgfix (2019-05-31) 1 commit - (merged to 'next' on 2019-06-06 at 736f3c175b) - + list-objects-filter-options: error is localizeable - Make an end-user facing message localizable. +* ew/repack-with-bitmaps-by-default (2019-06-28) 1 commit + - repack: disable bitmaps-by-default if .keep files exist + Generation of pack bitmaps are now disabled when .keep files exist, + as these are mutually exclusive features. -* md/url-parse-harden (2019-06-04) 2 commits - (merged to 'next' on 2019-06-06 at b187c3dbfe) - + url: do not allow %00 to represent NUL in URLs - + url: do not read past end of buffer - The URL decoding code has been updated to avoid going past the end - of the string while parsing %-- sequence. +* jk/br-blame-ignore-unused-fix (2019-06-28) 1 commit + - blame: drop some unused function parameters + (this branch uses br/blame-ignore.) + Move this into the base topic, once acked. -* ml/userdiff-rust (2019-05-30) 2 commits - (merged to 'next' on 2019-06-12 at 33b88fa9e5) - + userdiff: two simplifications of patterns for rust - (merged to 'next' on 2019-05-19 at 1266fddce5) - + userdiff: add built-in pattern for rust - The pattern "git diff/grep" use to extract funcname and words - boundary for Rust has been added. +* jk/check-connected-with-alternates (2019-06-28) 1 commit + - check_connected: assume alternate ref tips are valid + The tips of refs from the alternate object store can be used as + starting point for reachability computation now. + + Will merge to 'next'. -* mo/clang-format-for-each-update (2019-06-04) 1 commit - (merged to 'next' on 2019-06-06 at ee3066bb65) - + clang-format: use git grep to generate the ForEachMacros list - The list of for-each like macros used by clang-format has been - updated. +* jk/test-commit-bulk (2019-06-28) 6 commits + - t6200: use test_commit_bulk + - t5703: use test_commit_bulk + - t5702: use test_commit_bulk + - t3311: use test_commit_bulk + - t5310: increase the number of bitmapped commits + - test-lib: introduce test_commit_bulk + + A test helper has been introduced to optimize preparation of test + repositories with many simple commits, and a handful of test + scripts have been updated to use it. + + Will merge to 'next'. + I think I spotted one unused command, which we may want to remove, though. -------------------------------------------------- -[New Topics] +[Stalled] + +* jn/unknown-index-extensions (2018-11-21) 2 commits + - index: offer advice for unknown index extensions + - index: do not warn about unrecognized extensions + + A bit too alarming warning given when unknown index extensions + exist is getting revamped. + + Expecting a reroll. + + +* jc/format-patch-delay-message-id (2019-04-05) 1 commit + - format-patch: move message-id and related headers to the end + + The location "git format-patch --thread" adds the Message-Id: + header in the series of header fields has been moved down, which + may help working around a suspected bug in GMail MSA, reported at + + + Waiting for feedback to see if it truly helps. + Needs tests. + + +* jt/fetch-cdn-offload (2019-03-12) 9 commits + - SQUASH??? + - upload-pack: send part of packfile response as uri + - fetch-pack: support more than one pack lockfile + - upload-pack: refactor reading of pack-objects out + - Documentation: add Packfile URIs design doc + - Documentation: order protocol v2 sections + - http-fetch: support fetching packfiles by URL + - http: improve documentation of http_pack_request + - http: use --stdin when getting dumb HTTP pack + + WIP for allowing a response to "git fetch" to instruct the bulk of + the pack contents to be instead taken from elsewhere (aka CDN). + + Stalled + + +* js/protocol-advertise-multi (2018-12-28) 1 commit + - protocol: advertise multiple supported versions + + The transport layer has been updated so that the protocol version + used can be negotiated between the parties, by the initiator + listing the protocol versions it is willing to talk, and the other + side choosing from one of them. + + Expecting a reroll. + cf. + + +* mk/use-size-t-in-zlib (2018-10-15) 1 commit + - zlib.c: use size_t for size + + The wrapper to call into zlib followed our long tradition to use + "unsigned long" for sizes of regions in memory, which have been + updated to use "size_t". + + +* dl/remote-save-to-push (2018-12-11) 1 commit + - remote: add --save-to-push option to git remote set-url + + "git remote set-url" learned a new option that moves existing value + of the URL field to pushURL field of the remote before replacing + the URL field with a new value. + + Anybody who wants to champion this topic? + I am personally not yet quite convinced if this is worth pursuing. + +-------------------------------------------------- +[Cooking] * ab/test-env (2019-06-21) 8 commits - tests: make GIT_TEST_FAIL_PREREQS a boolean @@ -123,11 +215,12 @@ of the repositories listed at * cc/first-contrib-tutorial (2019-06-24) 1 commit - - doc: improve usage string in MyFirstContribution + (merged to 'next' on 2019-06-27 at a9f2ab2f21) + + doc: improve usage string in MyFirstContribution Update docs used in a tutorial. - Will merge to 'next'. + Will merge to 'master'. * ds/early-access (2019-06-20) 3 commits @@ -138,79 +231,85 @@ of the repositories listed at A mechanism to enable newish configuration settings in bulk has been invented. + Looked mostly sane, modulo minor nits. + * jh/msvc (2019-06-25) 20 commits - - msvc: ignore .dll and incremental compile output - - msvc: avoid debug assertion windows in Debug Mode - - msvc: do not pretend to support all signals - - msvc: add pragmas for common warnings - - msvc: add a compile-time flag to allow detailed heap debugging - - msvc: support building Git using MS Visual C++ - - msvc: update Makefile to allow for spaces in the compiler path - - msvc: fix detect_msys_tty() - - msvc: define ftello() - - msvc: do not re-declare the timespec struct - - msvc: mark a variable as non-const - - msvc: define O_ACCMODE - - msvc: include sigset_t definition - - msvc: fix dependencies of compat/msvc.c - - mingw: replace mingw_startup() hack - - obstack: fix compiler warning - - cache-tree/blame: avoid reusing the DEBUG constant - - t0001 (mingw): do not expect a specific order of stdout/stderr - - Mark .bat files as requiring CR/LF endings - - mingw: fix a typo in the msysGit-specific section + (merged to 'next' on 2019-06-27 at 5a16e3d67c) + + msvc: ignore .dll and incremental compile output + + msvc: avoid debug assertion windows in Debug Mode + + msvc: do not pretend to support all signals + + msvc: add pragmas for common warnings + + msvc: add a compile-time flag to allow detailed heap debugging + + msvc: support building Git using MS Visual C++ + + msvc: update Makefile to allow for spaces in the compiler path + + msvc: fix detect_msys_tty() + + msvc: define ftello() + + msvc: do not re-declare the timespec struct + + msvc: mark a variable as non-const + + msvc: define O_ACCMODE + + msvc: include sigset_t definition + + msvc: fix dependencies of compat/msvc.c + + mingw: replace mingw_startup() hack + + obstack: fix compiler warning + + cache-tree/blame: avoid reusing the DEBUG constant + + t0001 (mingw): do not expect a specific order of stdout/stderr + + Mark .bat files as requiring CR/LF endings + + mingw: fix a typo in the msysGit-specific section Support to build with MSVC has been updated. - Will merge to 'next'. + Will merge to 'master'. * jk/delta-islands-progress-fix (2019-06-20) 1 commit - - delta-islands: respect progress flag + (merged to 'next' on 2019-06-27 at 644526ba73) + + delta-islands: respect progress flag The codepath to compute delta islands used to spew progress output without giving the callers any way to squelch it, which has been fixed. - Will merge to 'next'. + Will merge to 'master'. * jk/oidhash (2019-06-20) 17 commits - - hashmap: convert sha1hash() to oidhash() - - hash.h: move object_id definition from cache.h - - khash: rename oid helper functions - - khash: drop sha1-specific map types - - pack-bitmap: convert khash_sha1 maps into kh_oid_map - - delta-islands: convert island_marks khash to use oids - - khash: rename kh_oid_t to kh_oid_set - - khash: drop broken oid_map typedef - - object: convert create_object() to use object_id - - object: convert internal hash_obj() to object_id - - object: convert lookup_object() to use object_id - - object: convert lookup_unknown_object() to use object_id - - pack-objects: convert locate_object_entry_hash() to object_id - - pack-objects: convert packlist_find() to use object_id - - pack-bitmap-write: convert some helpers to use object_id - - upload-pack: rename a "sha1" variable to "oid" - - describe: fix accidental oid/hash type-punning + (merged to 'next' on 2019-06-27 at 7bf6b87738) + + hashmap: convert sha1hash() to oidhash() + + hash.h: move object_id definition from cache.h + + khash: rename oid helper functions + + khash: drop sha1-specific map types + + pack-bitmap: convert khash_sha1 maps into kh_oid_map + + delta-islands: convert island_marks khash to use oids + + khash: rename kh_oid_t to kh_oid_set + + khash: drop broken oid_map typedef + + object: convert create_object() to use object_id + + object: convert internal hash_obj() to object_id + + object: convert lookup_object() to use object_id + + object: convert lookup_unknown_object() to use object_id + + pack-objects: convert locate_object_entry_hash() to object_id + + pack-objects: convert packlist_find() to use object_id + + pack-bitmap-write: convert some helpers to use object_id + + upload-pack: rename a "sha1" variable to "oid" + + describe: fix accidental oid/hash type-punning Code clean-up to remove hardcoded SHA-1 hash from manty places. - Will merge to 'next'. + Will merge to 'master'. * nd/fetch-capability-tweak (2019-06-20) 3 commits - - fetch-pack: print server version at the top in -v -v - - fetch-pack: print all relevant supported capabilities with -v -v - - fetch-pack: move capability names out of i18n strings + (merged to 'next' on 2019-06-27 at dedbcb31a1) + + fetch-pack: print server version at the top in -v -v + + fetch-pack: print all relevant supported capabilities with -v -v + + fetch-pack: move capability names out of i18n strings Protocol capabilities that go over wire should never be translated, but it was incorrectly marked for translation, which has been corrected. The output of protocol capabilities for debugging has been tweaked a bit. - Will merge to 'next'. + Will merge to 'master'. * nd/index-dump-in-json (2019-06-26) 11 commits @@ -229,66 +328,66 @@ of the repositories listed at "ls-files" learned "--debug-json" option to dump the contents and the extensions of the index file. - -* nd/switch-and-restore-more (2019-06-20) 2 commits - - completion: disable dwim on "git switch -d" - - switch: allow to switch in the middle of bisect - (this branch is used by jl/status-reduce-vertical-blank; uses nd/switch-and-restore.) - - (this topic is just bits and pieces out of 4 patches) + At least the fixup at the tip needs to be squashed into the right + commit. * rs/config-unit-parsing (2019-06-24) 3 commits - - config: simplify parsing of unit factors - - config: don't multiply in parse_unit_factor() - - config: use unsigned_mult_overflows to check for overflows + (merged to 'next' on 2019-06-27 at db633f85fe) + + config: simplify parsing of unit factors + + config: don't multiply in parse_unit_factor() + + config: use unsigned_mult_overflows to check for overflows (this branch uses js/gcc-8-and-9.) The code to parse scaled numbers out of configuration files has been made more robust and also easier to follow. - Will merge to 'next'. + Will merge to 'master'. * ab/fail-prereqs-in-test (2019-06-21) 1 commit - - tests: mark two failing tests under FAIL_PREREQS + (merged to 'next' on 2019-06-27 at 4df04aa1a0) + + tests: mark two failing tests under FAIL_PREREQS Test updates. - Will merge to 'next'. + Will merge to 'master'. * ds/fetch-disable-force-notice (2019-06-21) 3 commits - - pull: add --[no-]show-forced-updates passthrough - - fetch: warn about forced updates in branch listing - - fetch: add --[no-]show-forced-updates argument + (merged to 'next' on 2019-06-27 at 3ff4516f85) + + pull: add --[no-]show-forced-updates passthrough + + fetch: warn about forced updates in branch listing + + fetch: add --[no-]show-forced-updates argument "git fetch" and "git pull" reports when a fetch results in non-fast-forward updates to let the user notice unusual situation. The commands learned "--no-shown-forced-updates" option to disable this safety feature. - Will merge to 'next'. + Will merge to 'master'. * jh/status-aheadbehind (2019-06-21) 3 commits - - status: ignore status.aheadbehind in porcelain formats - - status: warn when a/b calculation takes too long - - status: add status.aheadbehind setting + (merged to 'next' on 2019-06-27 at 362ee6b059) + + status: ignore status.aheadbehind in porcelain formats + + status: warn when a/b calculation takes too long + + status: add status.aheadbehind setting "git status" can be told a non-standard default value for the "--[no-]ahead-behind" option with a new configuration variable status.aheadBehind. - Will merge to 'next'. + Will merge to 'master'. * js/t0001-case-insensitive (2019-06-24) 1 commit - - t0001: fix on case-insensitive filesystems + (merged to 'next' on 2019-06-27 at 6c0001aebb) + + t0001: fix on case-insensitive filesystems Test update. - Will merge to 'next'. + Will merge to 'master'. * dr/progress-i18n (2019-06-24) 1 commit @@ -300,24 +399,26 @@ of the repositories listed at * jw/gitweb-sample-update (2019-06-24) 1 commit - - doc: don't use git.kernel.org as example gitweb URL + (merged to 'next' on 2019-06-27 at 30a5e91e76) + + doc: don't use git.kernel.org as example gitweb URL Doc update. - Will merge to 'next'. + Will merge to 'master'. * ms/submodule-foreach-fix (2019-06-25) 1 commit - - submodule foreach: fix recursion of options + (merged to 'next' on 2019-06-27 at ccd37d4dac) + + submodule foreach: fix recursion of options "git submodule foreach" did not protect command line options passed to the command to be run in each submodule correctly, when the "--recursive" option was in use. - Will merge to 'next'. + Will merge to 'master'. -* pw/status-with-corrupt-sequencer-state (2019-06-25) 3 commits +* pw/status-with-corrupt-sequencer-state (2019-06-27) 3 commits - status: do not report errors in sequencer/todo - sequencer: factor out todo command name parsing - sequencer: always allow tab after command name @@ -326,23 +427,28 @@ of the repositories listed at "git status" has been made more robust against a corrupt or stale state files. + Will merge to 'next'. + * sg/t5551-fetch-smart-error-is-translated (2019-06-25) 1 commit - - t5551: use 'test_i18ngrep' to check translated output + (merged to 'next' on 2019-06-27 at 967c03da24) + + t5551: use 'test_i18ngrep' to check translated output Test update. - Will merge to 'next'. + Will merge to 'master'. -* ab/no-kwset (2019-06-26) 7 commits +* ab/no-kwset (2019-06-28) 9 commits - grep: use PCRE v2 for optimized fixed-string search - grep: remove the kwset optimization - grep: drop support for \0 in --fixed-strings - - grep: make the behavior for \0 in patterns sane + - grep: make the behavior for NUL-byte in patterns sane - grep tests: move binary pattern tests into their own file - grep tests: move "grep binary" alongside the rest - grep: inline the return value of a function call used only once + - grep: don't use PCRE2?_UTF8 with "log --encoding=" + - log tests: test regex backends in "--encode=" tests Retire use of kwset library, which is an optimization for looking for fixed strings, with use of pcre2 JIT. @@ -368,7 +474,8 @@ of the repositories listed at Is this ready for 'next'? -* nd/tree-walk-with-repo (2019-06-26) 6 commits +* nd/tree-walk-with-repo (2019-06-28) 7 commits + - t7814: do not generate same commits in different repos - Use the right 'struct repository' instead of the_repository - match-trees.c: remove the_repo from shift_tree*() - tree-walk.c: remove the_repo from get_tree_entry_follow_symlinks() @@ -380,88 +487,6 @@ of the repositories listed at instance throughout more codepaths. -* jh/trace2-sid-fix (2019-06-26) 1 commit - - trace2: correct typo in technical documentation - - Typofix. - - Will merge to 'next'. - --------------------------------------------------- -[Stalled] - -* jn/unknown-index-extensions (2018-11-21) 2 commits - - index: offer advice for unknown index extensions - - index: do not warn about unrecognized extensions - - A bit too alarming warning given when unknown index extensions - exist is getting revamped. - - Expecting a reroll. - - -* jc/format-patch-delay-message-id (2019-04-05) 1 commit - - format-patch: move message-id and related headers to the end - - The location "git format-patch --thread" adds the Message-Id: - header in the series of header fields has been moved down, which - may help working around a suspected bug in GMail MSA, reported at - - - Waiting for feedback to see if it truly helps. - Needs tests. - - -* jt/fetch-cdn-offload (2019-03-12) 9 commits - - SQUASH??? - - upload-pack: send part of packfile response as uri - - fetch-pack: support more than one pack lockfile - - upload-pack: refactor reading of pack-objects out - - Documentation: add Packfile URIs design doc - - Documentation: order protocol v2 sections - - http-fetch: support fetching packfiles by URL - - http: improve documentation of http_pack_request - - http: use --stdin when getting dumb HTTP pack - - WIP for allowing a response to "git fetch" to instruct the bulk of - the pack contents to be instead taken from elsewhere (aka CDN). - - Stalled - - -* js/protocol-advertise-multi (2018-12-28) 1 commit - - protocol: advertise multiple supported versions - - The transport layer has been updated so that the protocol version - used can be negotiated between the parties, by the initiator - listing the protocol versions it is willing to talk, and the other - side choosing from one of them. - - Expecting a reroll. - cf. - - -* mk/use-size-t-in-zlib (2018-10-15) 1 commit - - zlib.c: use size_t for size - - The wrapper to call into zlib followed our long tradition to use - "unsigned long" for sizes of regions in memory, which have been - updated to use "size_t". - - -* dl/remote-save-to-push (2018-12-11) 1 commit - - remote: add --save-to-push option to git remote set-url - - "git remote set-url" learned a new option that moves existing value - of the URL field to pushURL field of the remote before replacing - the URL field with a new value. - - Anybody who wants to champion this topic? - I am personally not yet quite convinced if this is worth pursuing. - --------------------------------------------------- -[Cooking] - * cb/fsmonitor-intfix (2019-06-17) 1 commit (merged to 'next' on 2019-06-26 at bed7c7e78b) + fsmonitor: avoid signed integer overflow / infinite loop @@ -472,16 +497,17 @@ of the repositories listed at * es/rev-list-no-object-names (2019-06-20) 1 commit - - rev-list: teach --no-object-names to enable piping + (merged to 'next' on 2019-06-27 at 6d95228e01) + + rev-list: teach --no-object-names to enable piping "git rev-list --objects" learned with "--no-object-names" option to squelch the path to the object that is used as a grouping hint for pack-objects. - Will merge to 'next'. + Will merge to 'master'. -* md/list-objects-filter-combo (2019-06-17) 10 commits +* md/list-objects-filter-combo (2019-06-28) 10 commits - list-objects-filter-options: make parser void - list-objects-filter-options: clean up use of ALLOC_GROW - list-objects-filter-options: allow mult. --filter @@ -491,12 +517,13 @@ of the repositories listed at - list-objects-filter: implement composite filters - list-objects-filter-options: always supply *errbuf - list-objects-filter: put omits set in filter struct - - list-objects-filter: make API easier to use + - list-objects-filter: encapsulate filter components The list-objects-filter API (used to create a sparse/lazy clone) learned to take a combined filter specification. - Will merge to 'next'. + There is a bit of interaction with cc/multi-promisor topic, whose + conflict resolution I have no confidence in X-<. * pw/doc-synopsis-markup-opmode-options (2019-06-17) 1 commit @@ -557,12 +584,13 @@ of the repositories listed at * nd/fetch-multi-gc-once (2019-06-19) 1 commit - - fetch: only run 'gc' once when fetching multiple remotes + (merged to 'next' on 2019-06-27 at 0225ada5e2) + + fetch: only run 'gc' once when fetching multiple remotes "git fetch" that grabs from a group of remotes learned to run the auto-gc only once at the very end. - Will merge to 'next'. + Will merge to 'master'. * ra/cherry-pick-revert-skip (2019-06-24) 6 commits @@ -575,7 +603,7 @@ of the repositories listed at "git cherry-pick/revert" learned a new "--skip" action. - Is this one ready for 'next'? + Will merge to 'next'. * tg/stash-ref-by-index-fix (2019-06-19) 1 commit @@ -589,15 +617,16 @@ of the repositories listed at * js/gcc-8-and-9 (2019-06-13) 4 commits - - config: avoid calling `labs()` on too-large data type - - winansi: simplify loading the GetCurrentConsoleFontEx() function - - kwset: allow building with GCC 8 - - poll (mingw): allow compiling with GCC 8 and DEVELOPER=1 + (merged to 'next' on 2019-06-27 at 92bb0db3c7) + + config: avoid calling `labs()` on too-large data type + + winansi: simplify loading the GetCurrentConsoleFontEx() function + + kwset: allow building with GCC 8 + + poll (mingw): allow compiling with GCC 8 and DEVELOPER=1 (this branch is used by rs/config-unit-parsing.) Code clean-up for new compilers. - Will merge to 'next'. + Will merge to 'master'. The 'kwset' one may get a wholesale replacement, either with new version of kwset from upstream or removal of its users, but in the meantime, it is probably OK to merge it down. @@ -654,42 +683,45 @@ of the repositories listed at * cc/test-oidmap (2019-06-17) 4 commits - - test-hashmap: remove 'hash' command - - oidmap: use sha1hash() instead of static hash() function - - t: add t0016-oidmap.sh - - t/helper: add test-oidmap.c + (merged to 'next' on 2019-06-27 at 247a4341ca) + + test-hashmap: remove 'hash' command + + oidmap: use sha1hash() instead of static hash() function + + t: add t0016-oidmap.sh + + t/helper: add test-oidmap.c Extend the test coverage a bit. - Will merge to 'next'. + Will merge to 'master'. * ds/midx-expire-repack (2019-06-11) 11 commits - - t5319-multi-pack-index.sh: test batch size zero - - midx: add test that 'expire' respects .keep files - - multi-pack-index: test expire while adding packs - - midx: implement midx_repack() - - multi-pack-index: prepare 'repack' subcommand - - multi-pack-index: implement 'expire' subcommand - - midx: refactor permutation logic and pack sorting - - midx: simplify computation of pack name lengths - - multi-pack-index: prepare for 'expire' subcommand - - Docs: rearrange subcommands for multi-pack-index - - repack: refactor pack deletion for future use + (merged to 'next' on 2019-06-27 at 35e6e3b38d) + + t5319-multi-pack-index.sh: test batch size zero + + midx: add test that 'expire' respects .keep files + + multi-pack-index: test expire while adding packs + + midx: implement midx_repack() + + multi-pack-index: prepare 'repack' subcommand + + multi-pack-index: implement 'expire' subcommand + + midx: refactor permutation logic and pack sorting + + midx: simplify computation of pack name lengths + + multi-pack-index: prepare for 'expire' subcommand + + Docs: rearrange subcommands for multi-pack-index + + repack: refactor pack deletion for future use "git multi-pack-index" learned expire and repack subcommands. - Will merge to 'next'. + Will merge to 'master'. * md/sort-detached-head-first (2019-06-19) 1 commit - - ref-filter: sort detached HEAD lines firstly + (merged to 'next' on 2019-06-27 at dc50dbe045) + + ref-filter: sort detached HEAD lines firstly "git branch --list" learned to always output the detached HEAD as the first item (when the HEAD is detached, of course), regardless of the locale. - Will merge to 'next'. + Will merge to 'master'. * nd/completion-no-cache-failure (2019-06-12) 1 commit @@ -703,20 +735,23 @@ of the repositories listed at Will merge to 'master'. -* sg/rebase-progress (2019-06-24) 5 commits - - progress: use term_clear_line() - - rebase: fix garbled progress display with '-x' - - pager: add a helper function to clear the last line in the terminal - - t3404: make the 'rebase.missingCommitsCheck=ignore' test more focused - - t3404: modernize here doc style +* sg/rebase-progress (2019-06-27) 5 commits + (merged to 'next' on 2019-06-27 at 425dd45c81) + + progress: use term_clear_line() + + rebase: fix garbled progress display with '-x' + + pager: add a helper function to clear the last line in the terminal + + t3404: make the 'rebase.missingCommitsCheck=ignore' test more focused + + t3404: modernize here doc style Use "Erase in Line" CSI sequence that is already used in the editor support to clear cruft in the progress output. - Will merge to 'next'. + Will merge to 'master'. -* sg/trace2-rename (2019-06-12) 1 commit +* sg/trace2-rename (2019-06-27) 2 commits + (merged to 'next' on 2019-06-27 at 6e189bdb20) + + trace2: correct typo in technical documentation (merged to 'next' on 2019-06-26 at 8ee228c455) + Revert "test-lib: whitelist GIT_TR2_* in the environment" @@ -741,7 +776,7 @@ of the repositories listed at * jl/status-reduce-vertical-blank (2019-06-21) 1 commit - status: remove the empty line after hints - (this branch uses nd/switch-and-restore and nd/switch-and-restore-more.) + (this branch uses nd/switch-and-restore.) Extra blank lines in "git status" output have been reduced. @@ -759,12 +794,13 @@ of the repositories listed at * dl/includeif-onbranch (2019-06-05) 1 commit - - config: learn the "onbranch:" includeIf condition + (merged to 'next' on 2019-06-27 at ef7250bbae) + + config: learn the "onbranch:" includeIf condition The conditional inclusion mechanism learned to base the choice on the branch the HEAD currently is on. - Will merge to 'next'. + Will merge to 'master'. * ds/commit-graph-incremental (2019-06-19) 18 commits @@ -831,15 +867,16 @@ of the repositories listed at * pw/rebase-abort-clean-rewritten (2019-05-15) 4 commits - - rebase --abort/--quit: cleanup refs/rewritten - - sequencer: return errors from sequencer_remove_state() - - rebase: warn if state directory cannot be removed - - rebase: fix a memory leak + (merged to 'next' on 2019-06-27 at 97c9f12c4d) + + rebase --abort/--quit: cleanup refs/rewritten + + sequencer: return errors from sequencer_remove_state() + + rebase: warn if state directory cannot be removed + + rebase: fix a memory leak "git rebase --abort" used to leave refs/rewritten/ when concluding "git rebase -r", which has been corrected. - Will merge to 'next'. + Will merge to 'master'. cf. <2a37d4c2-6eec-548d-0bd0-12bbd49c8071@gmail.com> @@ -878,53 +915,59 @@ of the repositories listed at promisor remote and consult them in order when downloading missing objects on demand. - -* nd/switch-and-restore (2019-06-20) 44 commits - - t2027: use test_must_be_empty - - Declare both git-switch and git-restore experimental - - help: move git-diff and git-reset to different groups - - doc: promote "git restore" - - user-manual.txt: prefer 'merge --abort' over 'reset --hard' - - completion: support restore - - t: add tests for restore - - restore: support --patch - - restore: replace --force with --ignore-unmerged - - restore: default to --source=HEAD when only --staged is specified - - restore: reject invalid combinations with --staged - - restore: add --worktree and --staged - - checkout: factor out worktree checkout code - - restore: disable overlay mode by default - - restore: make pathspec mandatory - - restore: take tree-ish from --source option instead - - checkout: split part of it to new command 'restore' - - doc: promote "git switch" - - completion: support switch - - t: add tests for switch - - switch: make --orphan switch to an empty tree - - switch: reject if some operation is in progress - - switch: no worktree status unless real branch switch happens - - switch: implicit dwim, use --no-guess to disable it - - switch: add short option for --detach - - switch: only allow explicit detached HEAD - - switch: reject "do nothing" case - - switch: stop accepting pathspec - - switch: remove -l - - switch: add --discard-changes - - switch: better names for -b and -B - - checkout: split part of it to new command 'switch' - - checkout: split options[] array in three pieces - - checkout: move 'confict_style' and 'dwim_..' to checkout_opts - - checkout: make "opts" in cmd_checkout() a pointer - - checkout: factor out some code in parse_branchname_arg() - - checkout: keep most #include sorted - - checkout: inform the user when removing branch state - - checkout: advice how to get out of detached HEAD mode - - t: rename t2014-switch.sh to t2014-checkout-switch.sh - - git-checkout.txt: fix monospace typeset - - doc: document --overwrite-ignore - - git-checkout.txt: fix one syntax line - - git-checkout.txt: spell out --no-option - (this branch is used by jl/status-reduce-vertical-blank and nd/switch-and-restore-more.) + There is a bit of interaction with md/list-objects-filter-combo + topic, whose conflict resolution I have no confidence in X-<. + + +* nd/switch-and-restore (2019-06-20) 46 commits + (merged to 'next' on 2019-06-27 at 85f83ad8d6) + + completion: disable dwim on "git switch -d" + + switch: allow to switch in the middle of bisect + + t2027: use test_must_be_empty + + Declare both git-switch and git-restore experimental + + help: move git-diff and git-reset to different groups + + doc: promote "git restore" + + user-manual.txt: prefer 'merge --abort' over 'reset --hard' + + completion: support restore + + t: add tests for restore + + restore: support --patch + + restore: replace --force with --ignore-unmerged + + restore: default to --source=HEAD when only --staged is specified + + restore: reject invalid combinations with --staged + + restore: add --worktree and --staged + + checkout: factor out worktree checkout code + + restore: disable overlay mode by default + + restore: make pathspec mandatory + + restore: take tree-ish from --source option instead + + checkout: split part of it to new command 'restore' + + doc: promote "git switch" + + completion: support switch + + t: add tests for switch + + switch: make --orphan switch to an empty tree + + switch: reject if some operation is in progress + + switch: no worktree status unless real branch switch happens + + switch: implicit dwim, use --no-guess to disable it + + switch: add short option for --detach + + switch: only allow explicit detached HEAD + + switch: reject "do nothing" case + + switch: stop accepting pathspec + + switch: remove -l + + switch: add --discard-changes + + switch: better names for -b and -B + + checkout: split part of it to new command 'switch' + + checkout: split options[] array in three pieces + + checkout: move 'confict_style' and 'dwim_..' to checkout_opts + + checkout: make "opts" in cmd_checkout() a pointer + + checkout: factor out some code in parse_branchname_arg() + + checkout: keep most #include sorted + + checkout: inform the user when removing branch state + + checkout: advice how to get out of detached HEAD mode + + t: rename t2014-switch.sh to t2014-checkout-switch.sh + + git-checkout.txt: fix monospace typeset + + doc: document --overwrite-ignore + + git-checkout.txt: fix one syntax line + + git-checkout.txt: spell out --no-option + (this branch is used by jl/status-reduce-vertical-blank.) Two new commands "git switch" and "git restore" are introduced to split "checking out a branch to work on advancing its history" and @@ -932,7 +975,7 @@ of the repositories listed at advancing the current history" out of the single "git checkout" command. - Will merge to 'next'. + Will merge to 'master'. cf. <20190329103919.15642-1-pclouds@gmail.com> (switch v6) cf. <20190425094600.15673-1-pclouds@gmail.com> (restore v3) @@ -947,18 +990,19 @@ of the repositories listed at * am/p4-branches-excludes (2019-04-02) 8 commits - - git-p4: respect excluded paths when detecting branches - - git-p4: add failing test for "git-p4: respect excluded paths when detecting branches" - - git-p4: don't exclude other files with same prefix - - git-p4: add failing test for "don't exclude other files with same prefix" - - git-p4: don't groom exclude path list on every commit - - git-p4: match branches case insensitively if configured - - git-p4: add failing test for "git-p4: match branches case insensitively if configured" - - git-p4: detect/prevent infinite loop in gitCommitByP4Change() + (merged to 'next' on 2019-06-27 at 5b4fb87c45) + + git-p4: respect excluded paths when detecting branches + + git-p4: add failing test for "git-p4: respect excluded paths when detecting branches" + + git-p4: don't exclude other files with same prefix + + git-p4: add failing test for "don't exclude other files with same prefix" + + git-p4: don't groom exclude path list on every commit + + git-p4: match branches case insensitively if configured + + git-p4: add failing test for "git-p4: match branches case insensitively if configured" + + git-p4: detect/prevent infinite loop in gitCommitByP4Change() "git p4" update. - Will merge to 'next'. + Will merge to 'master'. * dl/rebase-i-keep-base (2019-04-25) 6 commits @@ -1003,18 +1047,19 @@ of the repositories listed at * br/blame-ignore (2019-06-20) 9 commits - - blame: add a test to cover blame_coalesce() - - blame: use the fingerprint heuristic to match ignored lines - - blame: add a fingerprint heuristic to match ignored lines - - blame: optionally track line fingerprints during fill_blame_origin() - - blame: add config options for the output of ignored or unblamable lines - - blame: add the ability to ignore commits and their changes - - blame: use a helper function in blame_chunk() - - Move oidset_parse_file() to oidset.c - - fsck: rename and touch up init_skiplist() + (merged to 'next' on 2019-06-27 at 36b91a787f) + + blame: add a test to cover blame_coalesce() + + blame: use the fingerprint heuristic to match ignored lines + + blame: add a fingerprint heuristic to match ignored lines + + blame: optionally track line fingerprints during fill_blame_origin() + + blame: add config options for the output of ignored or unblamable lines + + blame: add the ability to ignore commits and their changes + + blame: use a helper function in blame_chunk() + + Move oidset_parse_file() to oidset.c + + fsck: rename and touch up init_skiplist() + (this branch is used by jk/br-blame-ignore-unused-fix.) "git blame" learned to "ignore" commits in the history, whose effects (as well as their presence) get ignored. - Will merge to 'next'. - cf. <20190620163820.231316-1-brho@google.com> (v9) + Needs a touch-up to reduce -Wunused-parameters error. -- cgit v0.10.2-6-g49f6