From: Junio C Hamano Date: Sat, 16 Jan 2021 00:57:41 +0000 (-0800) Subject: What's cooking (2021/01 #03) X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dad1d95d014d0be09950149f55ff40a4ce062638;p=thirdparty%2Fgit.git What's cooking (2021/01 #03) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index 6252a27bdc..a35acac80d 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 (Jan 2021, #02; Fri, 8) -X-master-at: 72c4083ddf91b489b7b7b812df67ee8842177d98 -X-next-at: b2714ff1a467d5c50f82988d2216cb7d091f5c2b +Subject: What's cooking in git.git (Jan 2021, #03; Fri, 15) +X-master-at: 4151fdb1c76c1a190ac9241b67223efd19f3e478 +X-next-at: 6a967380364a91b4c913c719b6c1f3962b1af2d8 -What's cooking in git.git (Jan 2021, #02; Fri, 8) +What's cooking in git.git (Jan 2021, #03; Fri, 15) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -12,9 +12,7 @@ only in 'seen' (formerly 'pu'---proposed updates) while 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. -Many topics that have been cooking in the 'next' branch during the -pre-release freeze at the year end have now been merged to the -'master' branch, and the tip of the 'next' branch has been rewound. +The second batch of topics are now in 'master'. Copies of the source code to Git live in many repositories, and the following is a list of the ones I push into or their mirrors. Some @@ -66,37 +64,300 @@ Release tarballs are available at: - merge-ort: initialize and free new directory rename data structures - merge-ort: add new data structures for directory rename detection - Merge branch 'en/merge-ort-3' into en/ort-directory-rename - (this branch uses en/merge-ort-3.) + (this branch is used by en/merge-ort-perf; uses en/merge-ort-3.) ORT merge strategy learns to infer "renamed directory" while merging. * jk/forbid-lf-in-git-url (2021-01-07) 2 commits - - fsck: reject .gitmodules git:// urls with newlines - - git_connect_git(): forbid newlines in host and path + (merged to 'next' on 2021-01-12 at 88a1d937ae) + + fsck: reject .gitmodules git:// urls with newlines + + git_connect_git(): forbid newlines in host and path Newline characters in the host and path part of git:// URL are now forbidden. - Will merge to 'next'. + Will merge to 'master'. -* ps/fetch-atomic (2021-01-07) 2 commits - - fetch: implement support for atomic reference updates - - fetch: allow passing a transaction to `s_update_ref()` +* ps/fetch-atomic (2021-01-12) 5 commits + (merged to 'next' on 2021-01-13 at a8896d0873) + + fetch: implement support for atomic reference updates + + fetch: allow passing a transaction to `s_update_ref()` + + fetch: refactor `s_update_ref` to use common exit path + + fetch: use strbuf to format FETCH_HEAD updates + + fetch: extract writing to FETCH_HEAD "git fetch" learns to treat ref updates atomically in all-or-none fashion, just like "git push" does, with the new "--atomic" option. + Will merge to 'master'. + * jc/sign-off (2021-01-07) 1 commit - - SubmittingPatches: tighten wording on "sign-off" procedure + (merged to 'next' on 2021-01-12 at 0d9a2a9a41) + + SubmittingPatches: tighten wording on "sign-off" procedure + + Doc update. + + Will merge to 'master'. + + +* ab/detox-gettext-tests (2021-01-11) 6 commits + - tests: remove uses of GIT_TEST_GETTEXT_POISON=false + - tests: (almost) remove C_LOCALE_OUTPUT prerequisites + - tests: (almost) remove use of "test_i18ngrep !" + - tests: remove misc use of test_i18n{cmp,grep} + - tests: remove support for GIT_TEST_GETTEXT_POISON + - ci: remove GETTEXT_POISON jobs + + Get rid of "GETTEXT_POISON" support altogether, which may or may + not be controversial. + + +* ab/gettext-charset-comment-fix (2021-01-11) 2 commits + (merged to 'next' on 2021-01-12 at bc7f60e246) + + gettext.c: remove/reword a mostly-useless comment + + Makefile: remove a warning about old GETTEXT_POISON flag + + Comments update. + + Will merge to 'master'. + + +* ad/t4129-setfacl-target-fix (2021-01-09) 1 commit + (merged to 'next' on 2021-01-12 at e09694772a) + + t4129: fix setfacl-related permissions failure + + Test fix. + + Will merge to 'master'. + + +* bc/doc-status-short (2021-01-11) 1 commit + (merged to 'next' on 2021-01-13 at 6093625f0c) + + docs: rephrase and clarify the git status --short format Doc update. + Will merge to 'master'. + + +* bc/signed-objects-with-both-hashes (2021-01-11) 6 commits + - SQUASH??? ulong vs size_t + - gpg-interface: remove other signature headers before verifying + - ref-filter: hoist signature parsing + - commit: allow parsing arbitrary buffers with headers + - gpg-interface: improve interface for parsing tags + - commit: ignore additional signatures when parsing signed commits + + Signed commits and tags now allow verification of objects, whose + two object names (one in SHA-1, the other in SHA-256) are both + signed. + + +* ds/update-index (2021-01-09) 14 commits + - update-index: remove static globals from callbacks + - update-index: reduce static globals, part 2 + - update-index: reduce static globals, part 1 + - update-index: remove ce_match_stat(), all macros + - update-index: replace several compatibility macros + - update-index: use add_index_entry() + - update-index: use remove_file_from_index() + - update-index: use index_name_pos() over cache_name_pos() + - update-index: use istate->cache_changed + - update-index: use istate->cache_nr over active_nr + - update-index: use istate->cache over active_cache + - update-index: drop the_index, the_repository + - rm: remove compatilibity macros + - mv: remove index compatibility macros + (this branch uses ag/merge-strategies-in-c.) + + The implementation of a few commands lost reliance of "the_index" + compatibility macros by explicitly passing the index_state through + the callchain. + + Unfortunately the base topic still needs to solidify. + + +* jk/t5516-deflake (2021-01-09) 1 commit + (merged to 'next' on 2021-01-12 at ed5317a798) + + t5516: loosen "not our ref" error check + + Test fix. + + Will merge to 'master'. + + +* jx/bundle (2021-01-11) 3 commits + (merged to 'next' on 2021-01-14 at 749a907dd2) + + bundle: arguments can be read from stdin + + bundle: lost objects when removing duplicate pendings + + test: add helper functions for git-bundle + + "git bundle" learns "--stdin" option to read its refs from the + standard input. Also, it now does not lose refs whey thy point at + the same object. + + Will merge to 'master'. + + +* ug/doc-lose-dircache (2021-01-09) 1 commit + (merged to 'next' on 2021-01-12 at 28310380a5) + + doc: remove "directory cache" from man pages + + Doc update. + + Will merge to 'master'. + + +* ab/mailmap (2021-01-12) 22 commits + (merged to 'next' on 2021-01-13 at a3ce27912f) + + shortlog: remove unused(?) "repo-abbrev" feature + + mailmap doc + tests: document and test for case-insensitivity + + mailmap tests: add tests for empty "<>" syntax + + mailmap tests: add tests for whitespace syntax + + mailmap tests: add a test for comment syntax + + mailmap doc + tests: add better examples & test them + + tests: refactor a few tests to use "test_commit --append" + + test-lib functions: add an --append option to test_commit + + test-lib functions: add --author support to test_commit + + test-lib functions: document arguments to test_commit + + test-lib functions: expand "test_commit" comment template + + mailmap: test for silent exiting on missing file/blob + + mailmap tests: get rid of overly complex blame fuzzing + + mailmap tests: add a test for "not a blob" error + + mailmap tests: remove redundant entry in test + + mailmap tests: improve --stdin tests + + mailmap tests: modernize syntax & test idioms + + mailmap tests: use our preferred whitespace syntax + + mailmap doc: start by mentioning the comment syntax + + check-mailmap doc: note config options + + mailmap doc: quote config variables `like.this` + + mailmap doc: create a new "gitmailmap(5)" man page + (this branch is used by ab/mailmap-fixup.) + + Clean-up docs, codepaths and tests around mailmap. + + Will merge to 'master'. + + +* jk/log-cherry-pick-duplicate-patches (2021-01-12) 1 commit + (merged to 'next' on 2021-01-13 at abcfbf8603) + + patch-ids: handle duplicate hashmap entries + + When more than one commit with the same patch ID appears on one + side, "git log --cherry-pick A...B" did not exclude them all when a + commit with the same patch ID appears on the other side. Now it + does. + + +* tb/local-clone-race-doc (2021-01-11) 1 commit + (merged to 'next' on 2021-01-14 at b86c0426de) + + Documentation/git-clone.txt: document race with --local + + Doc update. + + Will merge to 'master'. + + +* tb/pack-revindex-api (2021-01-14) 21 commits + - for_each_object_in_pack(): clarify pack vs index ordering + - pack-revindex.c: avoid direct revindex access in 'offset_to_pack_pos()' + - pack-revindex: hide the definition of 'revindex_entry' + - pack-revindex: remove unused 'find_revindex_position()' + - pack-revindex: remove unused 'find_pack_revindex()' + - builtin/gc.c: guess the size of the revindex + - for_each_object_in_pack(): convert to new revindex API + - unpack_entry(): convert to new revindex API + - packed_object_info(): convert to new revindex API + - retry_bad_packed_offset(): convert to new revindex API + - get_delta_base_oid(): convert to new revindex API + - rebuild_existing_bitmaps(): convert to new revindex API + - try_partial_reuse(): convert to new revindex API + - get_size_by_pos(): convert to new revindex API + - show_objects_for_type(): convert to new revindex API + - bitmap_position_packfile(): convert to new revindex API + - check_object(): convert to new revindex API + - write_reused_pack_verbatim(): convert to new revindex API + - write_reused_pack_one(): convert to new revindex API + - write_reuse_object(): convert to new revindex API + - pack-revindex: introduce a new API + (this branch is used by tb/pack-revindex-on-disk.) + + Abstract accesses to in-core revindex that allows enumerating + objects stored in a packfile in the order they appear in the pack, + in preparation for introducing an on-disk precomputed revindex. + + Will merge to 'next'. + + +* cc/write-promisor-file (2021-01-14) 3 commits + (merged to 'next' on 2021-01-14 at 9d773d4734) + + pack-write: die on error in write_promisor_file() + + fetch-pack: refactor writing promisor file + + fetch-pack: rename helper to create_promisor_file() + + A bit of code refactoring. + + Will merge to 'master'. + + +* js/rebase-i-commit-cleanup-fix (2021-01-12) 1 commit + - rebase -i: do leave commit message intact in fixup! chains + + When "git rebase -i" processes "fixup" insn, there is no reason to + clean up the commit log message, but we did the usual stripspace + processing. This has been corrected. + + A bit more tests to document what is still broken have been offered. + cf. <20210112204939.1095-1-martin.agren@gmail.com> + + +* ab/mailmap-fixup (2021-01-14) 4 commits + - t4203: make blame output massaging more robust + - mailmap doc: use correct environment variable 'GIT_WORK_TREE' + - t4203: stop losing return codes of git commands + - test-lib-functions.sh: fix usage for test_commit() + (this branch uses ab/mailmap.) + + Follow-up fixes and improvements to ab/mailmap topic. + Will merge to 'next'. + +* jc/macos-install-dependencies-fix (2021-01-14) 1 commit + (merged to 'next' on 2021-01-14 at 5a11de010b) + + ci/install-depends: attempt to fix "brew cask" stuff + + Fix for procedure to building CI test environment for mac. + + Will merge to 'master'. + + +* tb/pack-revindex-on-disk (2021-01-14) 8 commits + - pack-revindex: ensure that on-disk reverse indexes are given precedence + - t: support GIT_TEST_WRITE_REV_INDEX + - t: prepare for GIT_TEST_WRITE_REV_INDEX + - Documentation/config/pack.txt: advertise 'pack.writeReverseIndex' + - builtin/pack-objects.c: respect 'pack.writeReverseIndex' + - builtin/index-pack.c: write reverse indexes + - pack-write.c: prepare to write 'pack-*.rev' files + - packfile: prepare for the existence of '*.rev' files + (this branch uses tb/pack-revindex-api.) + + Introduce an on-disk file to record revindex for packdata, which + traditionally was always created on the fly and only in-core. + + +* en/merge-ort-perf (2021-01-15) 4 commits + - merge-ort: begin performance work; instrument with trace2_region_* calls + - Merge branch 'en/ort-directory-rename' into en/merge-ort-perf + - Merge branch 'en/ort-conflict-handling' into en/merge-ort-perf + - Merge branch 'en/diffcore-rename' into en/merge-ort-perf + (this branch uses en/diffcore-rename, en/merge-ort-3, en/ort-conflict-handling and en/ort-directory-rename.) + -------------------------------------------------- [Graduated to 'master'] @@ -112,6 +373,29 @@ Release tarballs are available at: easier to design output for machine consumption. +* ar/t6016-modernise (2021-01-04) 1 commit + (merged to 'next' on 2021-01-08 at 45f1b43e88) + + t6016: move to lib-log-graph.sh framework + + Test update. + + +* bc/rev-parse-path-format (2020-12-12) 2 commits + (merged to 'next' on 2021-01-08 at 7d51587b7f) + + rev-parse: add option for absolute or relative path formatting + + abspath: add a function to resolve paths with missing components + + "git rev-parse" can be explicitly told to give output as absolute + or relative path with the `--path-format=(absolute|relative)` option. + + +* ds/trace2-topo-walk (2021-01-04) 1 commit + (merged to 'next' on 2021-01-08 at 794c8f37ee) + + revision: trace topo-walk statistics + + The topological walk codepath is covered by new trace2 stats. + + * en/merge-ort-2 (2020-12-13) 7 commits (merged to 'next' on 2020-12-21 at ef5b184349) + merge-ort: add modify/delete handling and delayed output processing @@ -167,6 +451,16 @@ Release tarballs are available at: recursive backend has done for years. +* en/stash-apply-sparse-checkout (2020-12-01) 3 commits + (merged to 'next' on 2021-01-08 at cae5b73d99) + + stash: fix stash application in sparse-checkouts + + stash: remove unnecessary process forking + + t7012: add a testcase demonstrating stash apply bugs in sparse checkouts + + "git stash" did not work well in a sparsely checked out working + tree. + + * es/perf-export-fix (2020-12-22) 1 commit (merged to 'next' on 2020-12-22 at d06b0379d9) + t/perf: avoid unnecessary test_export() recursion @@ -182,6 +476,25 @@ Release tarballs are available at: repository and the worktree moved. +* ew/decline-core-abbrev (2020-12-23) 1 commit + (merged to 'next' on 2021-01-08 at 630dd186a4) + + core.abbrev=no disables abbreviations + + The configuration variable 'core.abbrev' can be set to 'no' to + force no abbreviation regardless of the hash algorithm. + + +* fc/completion-aliases-support (2021-01-04) 4 commits + (merged to 'next' on 2021-01-08 at b2714ff1a4) + + completion: add proper public __git_complete + + test: completion: add tests for __git_complete + + completion: bash: improve function detection + + completion: bash: add __git_have_func helper + + Bash completion (in contrib/) update to make it easier for + end-users to add completion for their custom "git" subcommands. + + * fc/pull-merge-rebase (2020-12-15) 5 commits (merged to 'next' on 2020-12-21 at acce13e5c4) + pull: display default warning only when non-ff @@ -207,6 +520,46 @@ Release tarballs are available at: corrected. +* ma/doc-pack-format-varint-for-sizes (2021-01-04) 1 commit + (merged to 'next' on 2021-01-08 at 8a448c50dd) + + pack-format.txt: document sizes at start of delta data + + Doc update. + + +* ma/sha1-is-a-hash (2021-01-04) 4 commits + (merged to 'next' on 2021-01-08 at a25537f7c3) + + hash-lookup: rename from sha1-lookup + + sha1-lookup: rename `sha1_pos()` as `hash_pos()` + + object-file.c: rename from sha1-file.c + + object-name.c: rename from sha1-name.c + + Retire more names with "sha1" in it. + + +* ma/t1300-cleanup (2021-01-04) 3 commits + (merged to 'next' on 2021-01-08 at 51aaae39a1) + + t1300: don't needlessly work with `core.foo` configs + + t1300: remove duplicate test for `--file no-such-file` + + t1300: remove duplicate test for `--file ../foo` + + Code clean-up. + + +* nk/perf-fsmonitor-cleanup (2021-01-06) 1 commit + (merged to 'next' on 2021-01-08 at 1837d6c30b) + + p7519: allow running without watchman prereq + + Test fix. + + +* pb/doc-modules-git-work-tree-typofix (2021-01-04) 1 commit + (merged to 'next' on 2021-01-08 at a67ab3e96a) + + gitmodules.txt: fix 'GIT_WORK_TREE' variable name + + Doc fix. + + * pk/subsub-fetch-fix-take-2 (2020-12-09) 1 commit (merged to 'next' on 2020-12-14 at ccc01a5f66) + submodules: fix of regression on fetching of non-init subsub-repo @@ -214,6 +567,20 @@ Release tarballs are available at: "git fetch --recurse-submodules" fix (second attempt). +* rs/rebase-commit-validation (2021-01-04) 1 commit + (merged to 'next' on 2021-01-08 at 2c63eb1cc8) + + rebase: verify commit parameter + + Diagnose command line error of "git rebase" early. + + +* ta/doc-typofix (2021-01-04) 1 commit + (merged to 'next' on 2021-01-08 at 1e579ef94f) + + doc: fix some typos + + Doc fix. + + * tb/pack-bitmap (2020-12-08) 24 commits (merged to 'next' on 2020-12-15 at 773268c2fb) + pack-bitmap-write: better reuse bitmaps @@ -243,6 +610,14 @@ Release tarballs are available at: Various improvements to the codepath that writes out pack bitmaps. + +* zh/arg-help-format (2021-01-06) 2 commits + (merged to 'next' on 2021-01-08 at 208c98620c) + + builtin/*: update usage format + + parse-options: format argh like error messages + + Clean up option descriptions in "git cmd --help". + -------------------------------------------------- [Stalled] @@ -386,6 +761,7 @@ Release tarballs are available at: - update-index: move add_cacheinfo() to read-cache.c - t6060: modify multiple files to expose a possible issue with merge-index - t6407: modernise tests + (this branch is used by ds/update-index.) The resolve and octopus merge strategy backends have been rewritten in C. @@ -396,29 +772,31 @@ Release tarballs are available at: [Cooking] * vv/send-email-with-less-secure-apps-access (2021-01-07) 1 commit - - git-send-email.txt: mention less secure app access with Gmail + (merged to 'next' on 2021-01-12 at 53243ca7e7) + + git-send-email.txt: mention less secure app access with Gmail Doc update. - Will merge to 'next'. + Will merge to 'master'. * ab/branch-sort (2021-01-07) 7 commits - - branch: show "HEAD detached" first under reverse sort - - branch: sort detached HEAD based on a flag - - ref-filter: move ref_sorting flags to a bitfield - - ref-filter: move "cmp_fn" assignment into "else if" arm - - ref-filter: add braces to if/else if/else chain - - branch tests: add to --sort tests - - branch: change "--local" to "--list" in comment + (merged to 'next' on 2021-01-12 at 1231feea7c) + + branch: show "HEAD detached" first under reverse sort + + branch: sort detached HEAD based on a flag + + ref-filter: move ref_sorting flags to a bitfield + + ref-filter: move "cmp_fn" assignment into "else if" arm + + ref-filter: add braces to if/else if/else chain + + branch tests: add to --sort tests + + branch: change "--local" to "--list" in comment The implementation of "git branch --sort" wrt the detached HEAD display has always been hacky, which has been cleaned up. - Will merge to 'next'. + Will merge to 'master'. -* ab/coc-update-to-2.0 (2021-01-07) 3 commits +* ab/coc-update-to-2.0 (2021-01-13) 3 commits - CoC: update to version 2.0 + local changes - CoC: explicitly take any whitespace breakage - CoC: Update word-wrapping to match upstream @@ -426,28 +804,20 @@ Release tarballs are available at: Update the Code-of-conduct to version 2.0 from the upstream (we've been using version 1.4). - The first step needs to be signed off by the author, and like the - original discussion thread back in Sep 2019, it also needs to - collect acks from list regulars to show support. - - -* ar/t6016-modernise (2021-01-04) 1 commit - (merged to 'next' on 2021-01-08 at 45f1b43e88) - + t6016: move to lib-log-graph.sh framework - - Test update. - - Will merge to 'master'. + Will merge to 'next'. -* dl/reflog-with-single-entry (2021-01-07) 2 commits - - refs: allow @{n} to work with n-sized reflog - - refs: factor out set_read_ref_cutoffs() +* dl/reflog-with-single-entry (2021-01-11) 2 commits + (merged to 'next' on 2021-01-13 at 09b33209c4) + + refs: allow @{n} to work with n-sized reflog + + refs: factor out set_read_ref_cutoffs() After expiring a reflog and making a single commit, the reflog for the branch would record a single entry that knows both @{0} and @{1}, but we failed to answer "what commit were we on?", i.e. @{1} + Will merge to 'master'. + * ds/cache-tree-basics (2021-01-07) 10 commits - cache-tree: speed up consecutive path comparisons @@ -466,21 +836,13 @@ Release tarballs are available at: * ds/for-each-repo-noopfix (2021-01-07) 1 commit - - for-each-repo: do nothing on empty config + (merged to 'next' on 2021-01-12 at 92f83b5db1) + + for-each-repo: do nothing on empty config "git for-each-repo --config= " should not run for any repository when the configuration variable is not defined even once. - Will merge to 'next'. - - -* ds/trace2-topo-walk (2021-01-04) 1 commit - (merged to 'next' on 2021-01-08 at 794c8f37ee) - + revision: trace topo-walk statistics - - The topological walk codepath is covered by new trace2 stats. - Will merge to 'master'. @@ -495,61 +857,18 @@ Release tarballs are available at: - merge-ort: implement unique_path() helper - merge-ort: handle directory/file conflicts that remain - merge-ort: handle D/F conflict where directory disappears due to merge + (this branch is used by en/merge-ort-perf.) ORT merge strategy learns more support for merge conflicts. -* fc/completion-aliases-support (2021-01-04) 4 commits - (merged to 'next' on 2021-01-08 at b2714ff1a4) - + completion: add proper public __git_complete - + test: completion: add tests for __git_complete - + completion: bash: improve function detection - + completion: bash: add __git_have_func helper - - Bash completion (in contrib/) update to make it easier for - end-users to add completion for their custom "git" subcommands. - - Will merge to 'master'. - - -* ma/doc-pack-format-varint-for-sizes (2021-01-04) 1 commit - (merged to 'next' on 2021-01-08 at 8a448c50dd) - + pack-format.txt: document sizes at start of delta data - - Doc update. - - Will merge to 'master'. - - * ma/more-opaque-lock-file (2021-01-06) 5 commits - - read-cache: try not to peek into `struct {lock_,temp}file` - - refs/files-backend: don't peek into `struct lock_file` - - midx: don't peek into `struct lock_file` - - commit-graph: don't peek into `struct lock_file` - - builtin/gc: don't peek into `struct lock_file` - - Code clean-up. - - Will merge to 'next'. - - -* ma/sha1-is-a-hash (2021-01-04) 4 commits - (merged to 'next' on 2021-01-08 at a25537f7c3) - + hash-lookup: rename from sha1-lookup - + sha1-lookup: rename `sha1_pos()` as `hash_pos()` - + object-file.c: rename from sha1-file.c - + object-name.c: rename from sha1-name.c - - Retire more names with "sha1" in it. - - Will merge to 'master'. - - -* ma/t1300-cleanup (2021-01-04) 3 commits - (merged to 'next' on 2021-01-08 at 51aaae39a1) - + t1300: don't needlessly work with `core.foo` configs - + t1300: remove duplicate test for `--file no-such-file` - + t1300: remove duplicate test for `--file ../foo` + (merged to 'next' on 2021-01-12 at f246e38b50) + + read-cache: try not to peek into `struct {lock_,temp}file` + + refs/files-backend: don't peek into `struct lock_file` + + midx: don't peek into `struct lock_file` + + commit-graph: don't peek into `struct lock_file` + + builtin/gc: don't peek into `struct lock_file` Code clean-up. @@ -557,54 +876,29 @@ Release tarballs are available at: * mt/t4129-with-setgid-dir (2021-01-06) 1 commit - - t4129: don't fail if setgid is set in the test directory + (merged to 'next' on 2021-01-12 at 7a54dd92d8) + + t4129: don't fail if setgid is set in the test directory Some tests expect that "ls -l" output has either '-' or 'x' for group executable bit, but setgid bit can be inherited from parent directory and make these fields 'S' or 's' instead, causing test failures. - Will merge to 'next'. - - -* nk/perf-fsmonitor-cleanup (2021-01-06) 1 commit - (merged to 'next' on 2021-01-08 at 1837d6c30b) - + p7519: allow running without watchman prereq - - Test fix. - - Will merge to 'master'. - - -* pb/doc-modules-git-work-tree-typofix (2021-01-04) 1 commit - (merged to 'next' on 2021-01-08 at a67ab3e96a) - + gitmodules.txt: fix 'GIT_WORK_TREE' variable name - - Doc fix. - Will merge to 'master'. * pb/mergetool-tool-help-fix (2021-01-06) 1 commit - - mergetool--lib: fix '--tool-help' to correctly show available tools + (merged to 'next' on 2021-01-12 at ba0f76b413) + + mergetool--lib: fix '--tool-help' to correctly show available tools Fix 2.29 regression where "git mergetool --tool-help" fails to list all the available tools. - Will merge to 'next'. - - -* rs/rebase-commit-validation (2021-01-04) 1 commit - (merged to 'next' on 2021-01-08 at 2c63eb1cc8) - + rebase: verify commit parameter - - Diagnose command line error early. - Will merge to 'master'. -* sg/t7800-difftool-robustify (2021-01-04) 1 commit - . t7800-difftool: don't accidentally match tmp dirs +* sg/t7800-difftool-robustify (2021-01-09) 1 commit + - t7800-difftool: don't accidentally match tmp dirs Test fix. @@ -612,25 +906,6 @@ Release tarballs are available at: cf. https://github.com/git/git/runs/1660588243?check_suite_focus=true#step:7:4186 -* ta/doc-typofix (2021-01-04) 1 commit - (merged to 'next' on 2021-01-08 at 1e579ef94f) - + doc: fix some typos - - Doc fix. - - Will merge to 'master'. - - -* zh/arg-help-format (2021-01-06) 2 commits - (merged to 'next' on 2021-01-08 at 208c98620c) - + builtin/*: update usage format - + parse-options: format argh like error messages - - Clean up option descriptions in "git cmd --help". - - Will merge to 'master'. - - * ak/corrected-commit-date (2021-01-04) 11 commits - doc: add corrected commit date info - commit-reach: use corrected commit dates in paint_down_to_common() @@ -652,12 +927,18 @@ Release tarballs are available at: * dl/p4-encode-after-kw-expansion (2020-12-23) 1 commit - - git-p4: fix syncing file types with pattern + (merged to 'next' on 2021-01-13 at 8fce17d998) + + git-p4: fix syncing file types with pattern Text encoding fix for "git p4". + Will merge to 'master'. + -* fc/mergetool-automerge (2021-01-06) 5 commits +* fc/mergetool-automerge (2021-01-09) 8 commits + . fixup! mergetool: break setup_tool out into separate initialization function + . fixup! fixup! mergetool: add automerge configuration + . fixup! mergetool: add automerge configuration . mergetool: add automerge_enabled tool-specific override function . mergetool: break setup_tool out into separate initialization function . mergetool: add per-tool support for the autoMerge flag @@ -668,18 +949,8 @@ Release tarballs are available at: a conflicted path unmodified. The command learned to optionally prepare these files with unconflicted parts already resolved. - Breaks tests on macOS. - cf. https://github.com/git/git/runs/1659807735?check_suite_focus=true#step:4:1641 - - -* ew/decline-core-abbrev (2020-12-23) 1 commit - (merged to 'next' on 2021-01-08 at 630dd186a4) - + core.abbrev=no disables abbreviations - - Allow the configuration to specify no abbreviation regardless of - the hash algorithm. - - Will merge to 'master'. + Breaks tests on Windows + cf. https://github.com/git/git/runs/1675932107?check_suite_focus=true#step:7:10373 * mr/bisect-in-c-4 (2020-12-21) 7 commits @@ -710,22 +981,23 @@ Release tarballs are available at: * fc/bash-completion-post-2.29 (2020-12-23) 4 commits - - completion: bash: add correct suffix in variables - - completion: bash: fix for multiple dash commands - - completion: bash: fix for suboptions with value - - completion: bash: fix prefix detection in branch.* + . completion: bash: add correct suffix in variables + . completion: bash: fix for multiple dash commands + . completion: bash: fix for suboptions with value + . completion: bash: fix prefix detection in branch.* Seems to break tests on Windows * jc/deprecate-pack-redundant (2020-12-15) 1 commit - - pack-redundant: gauge the usage before proposing its removal + (merged to 'next' on 2021-01-12 at 14034c7892) + + pack-redundant: gauge the usage before proposing its removal Warn loudly when the "pack-redundant" command, which has been left stale with almost unusable performance issues, gets used, as we no longer want to recommend its use (instead just "repack -d" instead). - Will merge to 'next'. + Will merge to 'master'. * mt/parallel-checkout-part-1 (2020-12-16) 9 commits @@ -757,37 +1029,29 @@ Release tarballs are available at: + merge-ort: implement detect_regular_renames() + merge-ort: add initial outline for basic rename detection + merge-ort: add basic data structures for handling renames - (this branch is used by en/ort-directory-rename.) + (this branch is used by en/merge-ort-perf and en/ort-directory-rename.) Rename detection is added to the "ORT" merge strategy. Will merge to 'master'. -* ps/config-env-pairs (2021-01-06) 8 commits - - config: allow specifying config entries via envvar pairs - - environment: make `getenv_safe()` a public function - - config: parse more robust format in GIT_CONFIG_PARAMETERS - - config: store "git -c" variables using more robust format - - config: extract function to parse config pairs - - quote: make sq_dequote_step() a public function - - config: add new way to pass config via `--config-env` - - git: add `--super-prefix` to usage string +* ps/config-env-pairs (2021-01-15) 8 commits + (merged to 'next' on 2021-01-15 at 4ed0341270) + + config: allow specifying config entries via envvar pairs + + environment: make `getenv_safe()` a public function + + config: store "git -c" variables using more robust format + + config: parse more robust format in GIT_CONFIG_PARAMETERS + + config: extract function to parse config pairs + + quote: make sq_dequote_step() a public function + + config: add new way to pass config via `--config-env` + + git: add `--super-prefix` to usage string Introduce two new ways to feed configuration variable-value pairs via environment variables, and tweak the way GIT_CONFIG_PARAMETERS encodes variable/value pairs to make it more robust. - Ready for 'next'? - - -* bc/hashed-mailmap (2020-12-12) 1 commit - - mailmap: support hashed entries in mailmaps - - The mailmap database learned to take hashed value as the original - side of mapping. - - Expecting a reroll. + Will merge to 'master'. * so/log-diff-merge (2020-12-21) 32 commits @@ -826,18 +1090,7 @@ Release tarballs are available at: "git log" learned a new "--diff-merges=" option. - Rerolled. - - -* bc/rev-parse-path-format (2020-12-12) 2 commits - (merged to 'next' on 2021-01-08 at 7d51587b7f) - + rev-parse: add option for absolute or relative path formatting - + abspath: add a function to resolve paths with missing components - - "git rev-parse" can be explicitly told to give output as absolute - or relative path. - - Will merge to 'master'. + Ready for 'next'? * es/config-hooks (2020-12-21) 34 commits @@ -936,68 +1189,59 @@ Release tarballs are available at: * en/diffcore-rename (2021-01-04) 9 commits - - diffcore-rename: remove unnecessary duplicate entry checks - - diffcore-rename: accelerate rename_dst setup - - diffcore-rename: simplify and accelerate register_rename_src() - - t4058: explore duplicate tree entry handling in a bit more detail - - t4058: add more tests and documentation for duplicate tree entry handling - - diffcore-rename: reduce jumpiness in progress counters - - diffcore-rename: simplify limit check - - diffcore-rename: avoid usage of global in too_many_rename_candidates() - - diffcore-rename: rename num_create to num_destinations + (merged to 'next' on 2021-01-12 at fa769ebc35) + + diffcore-rename: remove unnecessary duplicate entry checks + + diffcore-rename: accelerate rename_dst setup + + diffcore-rename: simplify and accelerate register_rename_src() + + t4058: explore duplicate tree entry handling in a bit more detail + + t4058: add more tests and documentation for duplicate tree entry handling + + diffcore-rename: reduce jumpiness in progress counters + + diffcore-rename: simplify limit check + + diffcore-rename: avoid usage of global in too_many_rename_candidates() + + diffcore-rename: rename num_create to num_destinations + (this branch is used by en/merge-ort-perf.) File-level rename detection updates. - Will merge to 'next'. - - -* en/stash-apply-sparse-checkout (2020-12-01) 3 commits - (merged to 'next' on 2021-01-08 at cae5b73d99) - + stash: fix stash application in sparse-checkouts - + stash: remove unnecessary process forking - + t7012: add a testcase demonstrating stash apply bugs in sparse checkouts - - "git stash" did not work well in a sparsely checked out working - tree. - Will merge to 'master'. * js/default-branch-name-tests-final-stretch (2020-11-19) 29 commits - - tests: drop prereq `PREPARE_FOR_MAIN_BRANCH` where no longer needed - - t99*: adjust the references to the default branch name "main" - - tests(git-p4): transition to the default branch name `main` - - t9[5-7]*: adjust the references to the default branch name "main" - - t9[0-4]*: adjust the references to the default branch name "main" - - t8*: adjust the references to the default branch name "main" - - t7[5-9]*: adjust the references to the default branch name "main" - - t7[0-4]*: adjust the references to the default branch name "main" - - t6[4-9]*: adjust the references to the default branch name "main" - - t64*: preemptively adjust alignment to prepare for `master` -> `main` - - t6[0-3]*: adjust the references to the default branch name "main" - - t5[6-9]*: adjust the references to the default branch name "main" - - t55[4-9]*: adjust the references to the default branch name "main" - - t55[23]*: adjust the references to the default branch name "main" - - t551*: adjust the references to the default branch name "main" - - t550*: adjust the references to the default branch name "main" - - t5503: prepare aligned comment for replacing `master` with `main` - - t5[0-4]*: adjust the references to the default branch name "main" - - t5323: prepare centered comment for `master` -> `main` - - t4*: adjust the references to the default branch name "main" - - t3[5-9]*: adjust the references to the default branch name "main" - - t34*: adjust the references to the default branch name "main" - - t3416: preemptively adjust alignment in a comment - - t3[0-3]*: adjust the references to the default branch name "main" - - t2*: adjust the references to the default branch name "main" - - t[01]*: adjust the references to the default branch name "main" - - t0060: preemptively adjust alignment - - tests: mark tests relying on the current default for `init.defaultBranch` - - Merge 'jk/diff-release-filespec-fix' into js/default-branch-name-tests-final-stretch + (merged to 'next' on 2021-01-13 at 0e93f0d529) + + tests: drop prereq `PREPARE_FOR_MAIN_BRANCH` where no longer needed + + t99*: adjust the references to the default branch name "main" + + tests(git-p4): transition to the default branch name `main` + + t9[5-7]*: adjust the references to the default branch name "main" + + t9[0-4]*: adjust the references to the default branch name "main" + + t8*: adjust the references to the default branch name "main" + + t7[5-9]*: adjust the references to the default branch name "main" + + t7[0-4]*: adjust the references to the default branch name "main" + + t6[4-9]*: adjust the references to the default branch name "main" + + t64*: preemptively adjust alignment to prepare for `master` -> `main` + + t6[0-3]*: adjust the references to the default branch name "main" + + t5[6-9]*: adjust the references to the default branch name "main" + + t55[4-9]*: adjust the references to the default branch name "main" + + t55[23]*: adjust the references to the default branch name "main" + + t551*: adjust the references to the default branch name "main" + + t550*: adjust the references to the default branch name "main" + + t5503: prepare aligned comment for replacing `master` with `main` + + t5[0-4]*: adjust the references to the default branch name "main" + + t5323: prepare centered comment for `master` -> `main` + + t4*: adjust the references to the default branch name "main" + + t3[5-9]*: adjust the references to the default branch name "main" + + t34*: adjust the references to the default branch name "main" + + t3416: preemptively adjust alignment in a comment + + t3[0-3]*: adjust the references to the default branch name "main" + + t2*: adjust the references to the default branch name "main" + + t[01]*: adjust the references to the default branch name "main" + + t0060: preemptively adjust alignment + + tests: mark tests relying on the current default for `init.defaultBranch` + + Merge 'jk/diff-release-filespec-fix' into js/default-branch-name-tests-final-stretch Prepare tests not to be affected by the name of the default branch "git init" creates. - Will merge to 'next'. + Will merge to 'master'. * ds/maintenance-part-4 (2021-01-05) 4 commits @@ -1015,7 +1259,8 @@ Release tarballs are available at: * sj/untracked-files-in-submodule-directory-is-not-dirty (2020-12-08) 1 commit - - diff: do not show submodule with untracked files as "-dirty" + (merged to 'next' on 2021-01-12 at 2aca21c42e) + + diff: do not show submodule with untracked files as "-dirty" "git diff" showed a submodule working tree with untracked cruft as "Submodule commit -dirty", but a natural expectation is @@ -1023,7 +1268,7 @@ Release tarballs are available at: which does not consider having untracked files in the working tree as source of dirtiness. The inconsistency has been fixed. - Will merge to 'next'. + Will merge to 'master'. -------------------------------------------------- [Discarded] @@ -1034,3 +1279,13 @@ Release tarballs are available at: It turns out that the original "problem" that inspired the feature was working as designed. cf. + + +* bc/hashed-mailmap (2020-12-12) 1 commit + . mailmap: support hashed entries in mailmaps + + The mailmap database learned to take hashed value as the original + side of mapping. + + Retracted for now. + cf.