From: Junio C Hamano Date: Mon, 14 Mar 2022 21:19:41 +0000 (+0000) Subject: What's cooking (2022/03 #03) X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cfdb4fca85e8fabb7da5c8aa0eea983eb8d4d675;p=thirdparty%2Fgit.git What's cooking (2022/03 #03) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index f78db1d92e..ad1fbbcb85 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 (Mar 2022, #02; Mon, 7) -X-master-at: c2162907e9aa884bdb70208389cb99b181620d51 -X-next-at: 4b3deeb25d03f55d1d605c96f19e40bb89b562d1 +Subject: What's cooking in git.git (Mar 2022, #03; Mon, 14) +X-master-at: b896f729e240d250cf56899e6a0073f6aa469f5d +X-next-at: 00dc842c0f4f38d42e23fc4916f48b0869e9054f -What's cooking in git.git (Mar 2022, #02; Mon, 7) +What's cooking in git.git (Mar 2022, #03; Mon, 14) -------------------------------------------------- Here are the topics that have been cooking in my tree. Commits @@ -49,224 +49,362 @@ Release tarballs are available at: -------------------------------------------------- [Graduated to 'master'] -* ab/c99-designated-initializers (2022-02-24) 9 commits - (merged to 'next' on 2022-02-28 at 5ff6d5b26f) - + fast-import.c: use designated initializers for "partial" struct assignments - + refspec.c: use designated initializers for "struct refspec_item" - + convert.c: use designated initializers for "struct stream_filter*" - + userdiff.c: use designated initializers for "struct userdiff_driver" - + archive-*.c: use designated initializers for "struct archiver" - + object-file: use designated initializers for "struct git_hash_algo" - + trace2: use designated initializers for "struct tr2_dst" - + trace2: use designated initializers for "struct tr2_tgt" - + imap-send.c: use designated initializers for "struct imap_server_conf" +* ab/c99-variadic-macros (2022-02-21) 2 commits + (merged to 'next' on 2022-03-01 at 0419a86e23) + + C99: remove hardcoded-out !HAVE_VARIADIC_MACROS code + + git-compat-util.h: clarify GCC v.s. C99-specific in comment - Use designated initializers we started using in mid 2017 in more - parts of the codebase that are relatively quiescent. - source: + Remove the escape hatch we added when we introduced the weather + balloon to use variadic macros unconditionally, to make it official + that we now have a hard dependency on the feature. + source: -* ab/hook-tests (2022-02-19) 2 commits - (merged to 'next' on 2022-02-28 at bb6b7d1c24) - + hook tests: use a modern style for "pre-push" tests - + hook tests: test for exact "pre-push" hook input +* ab/help-fixes (2022-02-23) 9 commits + (merged to 'next' on 2022-03-01 at 215f5dbbfb) + + help: don't print "\n" before single-section output + + help: add --no-[external-commands|aliases] for use with --all + + help: error if [-a|-g|-c] and [-i|-m|-w] are combined + + help: correct usage & behavior of "git help --all" + + help: note the option name on option incompatibility + + help.c: split up list_all_cmds_help() function + + help tests: test "git" and "git help [-a|-g] spacing + + help.c: use puts() instead of printf{,_ln}() for consistency + + help doc: add missing "]" to "[-a|--all]" - Test modernization. - source: + Updates to how command line options to "git help" are handled. + source: -* ab/test-leak-diag (2022-02-28) 4 commits - (merged to 'next' on 2022-02-28 at 3019aad7fe) - + test-lib: add "fast_unwind_on_malloc=0" to LSAN_OPTIONS - + test-lib: make $GIT_BUILD_DIR an absolute path - + test-lib: correct and assert TEST_DIRECTORY overriding - + test-lib: add GIT_SAN_OPTIONS, inherit [AL]SAN_OPTIONS +* ab/make-optim-noop (2022-03-03) 8 commits + (merged to 'next' on 2022-03-04 at 0419394f3d) + + Makefiles: add and use wildcard "mkdir -p" template + + Makefile: add "$(QUIET)" boilerplate to shared.mak + + Makefile: move $(comma), $(empty) and $(space) to shared.mak + + Makefile: move ".SUFFIXES" rule to shared.mak + + Makefile: define $(LIB_H) in terms of $(FIND_SOURCE_FILES) + + Makefile: disable GNU make built-in wildcard rules + + Makefiles: add "shared.mak", move ".DELETE_ON_ERROR" to it + + scalar Makefile: use "The default target of..." pattern - Random test-framework clean-up. - source: + Makefile refactoring with a bit of suffixes rule stripping to + optimize the runtime overhead. + source: -* ac/usage-string-fixups (2022-02-23) 1 commit - (merged to 'next' on 2022-02-28 at 5e8fa3f846) - + amend remaining usage strings according to style guide +* ab/plug-random-leaks (2022-03-04) 14 commits + (merged to 'next' on 2022-03-04 at f461b7a6b5) + + repository.c: free the "path cache" in repo_clear() + + range-diff: plug memory leak in read_patches() + + range-diff: plug memory leak in common invocation + + lockfile API users: simplify and don't leak "path" + + commit-graph: stop fill_oids_from_packs() progress on error and free() + + commit-graph: fix memory leak in misused string_list API + + submodule--helper: fix trivial leak in module_add() + + transport: stop needlessly copying bundle header references + + bundle: call strvec_clear() on allocated strvec + + remote-curl.c: free memory in cmd_main() + + urlmatch.c: add and use a *_release() function + + diff.c: free "buf" in diff_words_flush() + + merge-base: free() allocated "struct commit **" list + + index-pack: fix memory leaks - Usage-string normalization. - source: + Plug random memory leaks. + source: -* ah/advice-switch-requires-detach-to-detach (2022-02-25) 1 commit - (merged to 'next' on 2022-02-28 at 941ee621cf) - + switch: mention the --detach option when dying due to lack of a branch +* en/merge-ort-align-verbosity-with-recursive (2022-03-01) 1 commit + (merged to 'next' on 2022-03-04 at e2c7eabab6) + + merge-ort: exclude messages from inner merges by default - The error message given by "git switch HEAD~4" has been clarified - to suggest the "--detach" option that is required. - source: <20220226061213.1590341-1-alexhenrie24@gmail.com> + Align the level of verbose output from the ort backend during inner + merge to that of the recursive backend. + source: -* cg/t3903-modernize (2022-02-23) 3 commits - (merged to 'next' on 2022-02-23 at 0d5a844b40) - + tests: make the code more readable - + tests: allow testing if a path is truly a file or a directory - + t/t3903-stash.sh: replace test [-d|-f] with test_path_is_* +* en/present-despite-skipped (2022-03-01) 7 commits + (merged to 'next' on 2022-03-01 at 4982287a31) + + repo_read_index: add config to expect files outside sparse patterns + (merged to 'next' on 2022-02-15 at 960873fdad) + + Accelerate clear_skip_worktree_from_present_files() by caching + + Update documentation related to sparsity and the skip-worktree bit + + repo_read_index: clear SKIP_WORKTREE bit from files present in worktree + + unpack-trees: fix accidental loss of user changes + + t1011: add testcase demonstrating accidental loss of user modifications + + Merge branch 'vd/sparse-clean-etc' into en/present-despite-skipped - Test modernization. - source: <20220222215430.605254-1-cogoni.guillaume@gmail.com> + In sparse-checkouts, files mis-marked as missing from the working tree + could lead to later problems. Such files were hard to discover, and + harder to correct. Automatically detecting and correcting the marking + of such files has been added to avoid these problems. + source: -* ds/worktree-docs (2022-02-23) 11 commits - (merged to 'next' on 2022-02-28 at b7d23cb1a5) - + worktree: use 'worktree' over 'working tree' - + worktree: use 'worktree' over 'working tree' - + worktree: use 'worktree' over 'working tree' - + worktree: use 'worktree' over 'working tree' - + worktree: use 'worktree' over 'working tree' - + worktree: use 'worktree' over 'working tree' - + worktree: use 'worktree' over 'working tree' - + worktree: extract checkout_worktree() - + worktree: extract copy_sparse_checkout() - + worktree: extract copy_filtered_worktree_config() - + worktree: combine two translatable messages +* fs/gpgsm-update (2022-03-04) 3 commits + (merged to 'next' on 2022-03-04 at 9c72508077) + + t/lib-gpg: kill all gpg components, not just gpg-agent + + t/lib-gpg: reload gpg components after updating trustlist + + gpg-interface/gpgsm: fix for v2.3 - Tighten the language around "working tree" and "worktree" in the - docs. - source: + Newer version of GPGSM changed its output in a backward + incompatible way to break our code that parses its output. It also + added more processes our tests need to kill when cleaning up. + Adjustments have been made to accommodate these changes. + source: <20220302090250.590450-1-fs@gigacodes.de> -* en/merge-ort-plug-leaks (2022-02-20) 2 commits - (merged to 'next' on 2022-02-28 at d7afb6b624) - + merge-ort: fix small memory leak in unique_path() - + merge-ort: fix small memory leak in detect_and_process_renames() +* gc/parse-tree-indirect-errors (2022-03-01) 1 commit + (merged to 'next' on 2022-03-04 at f8d60e5253) + + checkout, clone: die if tree cannot be parsed - Leakfix. - source: + Check the return value from parse_tree_indirect() to turn segfaults + into calls to die(). + source: <20220302003613.15567-1-chooglen@google.com> -* en/sparse-checkout-fixes (2022-02-20) 5 commits - (merged to 'next' on 2022-02-28 at 7307431c62) - + sparse-checkout: reject arguments in cone-mode that look like patterns - + sparse-checkout: error or warn when given individual files - + sparse-checkout: pay attention to prefix for {set, add} - + sparse-checkout: correctly set non-cone mode when expected - + sparse-checkout: correct reapply's handling of options +* hn/reftable-no-empty-keys (2022-02-23) 7 commits + (merged to 'next' on 2022-03-01 at dc4aa7e796) + + reftable: rename writer_stats to reftable_writer_stats + + reftable: add test for length of disambiguating prefix + + reftable: ensure that obj_id_len is >= 2 on writing + + reftable: avoid writing empty keys at the block layer + + reftable: add a test that verifies that writing empty keys fails + + reftable: reject 0 object_id_len + + Documentation: object_id_len goes up to 31 - Further polishing of "git sparse-checkout". - source: + General clean-up in reftable implementation, including + clarification of the API documentation, tightening the code to + honor documented length limit, etc. + source: -* gc/stash-on-branch-with-multi-level-name (2022-02-24) 1 commit - (merged to 'next' on 2022-02-28 at 1a94306611) - + stash: strip "refs/heads/" with skip_prefix +* jc/cat-file-batch-commands (2022-02-18) 4 commits + (merged to 'next' on 2022-03-01 at 8764b7963c) + + cat-file: add --batch-command mode + + cat-file: add remove_timestamp helper + + cat-file: introduce batch_mode enum to replace print_contents + + cat-file: rename cmdmode to transform_mode - "git checkout -b branch/with/multi/level/name && git stash" only - recorded the last level component of the branch name, which has - been corrected. - source: <20220124205342.41450-1-chooglen@google.com> + "git cat-file" learns "--batch-command" mode, which is a more + flexible interface than the existing "--batch" or "--batch-check" + modes, to allow different kinds of inquiries made. + source: -* jc/rerere-train-modernise (2022-02-27) 1 commit - (merged to 'next' on 2022-02-28 at d86d29733d) - + rerere-train: two fixes to the use of "git show -s" +* nj/read-tree-doc-reffix (2022-03-03) 1 commit + (merged to 'next' on 2022-03-04 at 9b183b3e3e) + + Documentation: git-read-tree: separate links using commas - Small modernization of the rerere-train script (in contrib/). - source: <20220227220924.2144325-1-gitster@pobox.com> + Documentation mark-up fix. + source: <20220303161542.11616-1-nihal@nihaljere.xyz> -* jt/ls-files-stage-recurse (2022-02-23) 1 commit - (merged to 'next' on 2022-02-28 at 4ad82bfdf6) - + ls-files: support --recurse-submodules --stage +* ps/fetch-atomic (2022-02-17) 7 commits + (merged to 'next' on 2022-02-18 at 3824153b23) + + fetch: make `--atomic` flag cover pruning of refs + + fetch: make `--atomic` flag cover backfilling of tags + + refs: add interface to iterate over queued transactional updates + + fetch: report errors when backfilling tags fails + + fetch: control lifecycle of FETCH_HEAD in a single place + + fetch: backfill tags before setting upstream + + fetch: increase test coverage of fetches + (this branch is used by ps/fetch-atomic-fixup and ps/fetch-mirror-optim.) - Many output modes of "ls-files" do not work with its - "--recurse-submodules" option, but the "-s" mode has been taught to - work with it. - source: <20220224002303.2363189-1-jonathantanmy@google.com> + "git fetch" can make two separate fetches, but ref updates coming + from them were in two separate ref transactions under "--atomic", + which has been corrected. + source: -* mc/index-pack-report-max-size (2022-02-23) 1 commit - (merged to 'next' on 2022-02-28 at 31b907844b) - + index-pack: clarify the breached limit +* ps/fetch-atomic-fixup (2022-03-03) 1 commit + (merged to 'next' on 2022-03-04 at cb279e84df) + + t5503: simplify setup of test which exercises failure of backfill + (this branch uses ps/fetch-atomic.) - When "index-pack" dies due to incoming data exceeding the maximum - allowed input size, include the value of the limit in the error - message. - source: + Test simplification. + source: -* rs/bisect-executable-not-found (2022-01-19) 4 commits - (merged to 'next' on 2022-02-28 at c74bff7954) - + bisect--helper: double-check run command on exit code 126 and 127 - + bisect: document run behavior with exit codes 126 and 127 - + bisect--helper: release strbuf and strvec on run error - + bisect--helper: report actual bisect_state() argument on error +* pw/xdiff-alloc-fail (2022-02-16) 4 commits + (merged to 'next' on 2022-03-01 at 8a10912059) + + xdiff: handle allocation failure when merging + + xdiff: refactor a function + + xdiff: handle allocation failure in patience diff + + xdiff: fix a memory leak - A not-so-common mistake is to write a script to feed "git bisect - run" without making it executable, in which case all tests will - exit with 126 or 127 error codes, even on revisions that are marked - as good. Try to recognize this situation and stop iteration early. - source: + Improve failure case behaviour of xdiff library when memory + allocation fails. + source: -------------------------------------------------- [New Topics] -* ab/grep-patterntype (2022-03-04) 1 commit - - log tests: fix "abort tests early" regression in ff37a60c369 +* bc/block-sha1-without-gcc-asm-extension (2022-03-10) 1 commit + - block-sha1: remove use of obsolete x86 assembly - Test fix-up for a topic already in master. + Get rid of one use of __asm__() GCC extension that does not help us + much these days, which has an added advantage of not having to + worry about -pedantic complaining. - Will merge to 'next' and then to 'master'. - source: + Will merge to 'next'. + source: <20220310174750.4166514-1-sandals@crustytoothpaste.net> -* mf/fix-type-in-config-h (2022-03-03) 1 commit - - config: correct "--type" option in "git config -h" output +* jy/gitweb-no-need-for-meta (2022-03-08) 2 commits + (merged to 'next' on 2022-03-13 at 1e8d643130) + + gitweb: remove invalid http-equiv="content-type" + + comment: fix typo + + Remove unneeded from gitweb + output. + + Will merge to 'master'. + source: <20220308155612.105957-3-jason@jasonyundt.email> + + +* ns/core-fsyncmethod (2022-03-10) 6 commits + - core.fsync: documentation and user-friendly aggregate options + - core.fsync: new option to harden the index + - core.fsync: add configuration parsing + - core.fsync: introduce granular fsync control infrastructure + - core.fsyncmethod: add writeout-only mode + - wrapper: make inclusion of Windows csprng header tightly scoped + (this branch is used by ps/fsync-refs.) + + Replace core.fsyncObjectFiles with two new configuration variables, + core.fsync and core.fsyncMethod. + + Will merge to 'next'? + source: - "git config -h" did not describe the "--type" option correctly. + +* pw/add-p-single-key (2022-03-09) 5 commits + - terminal: restore settings on SIGTSTP + - terminal: work around macos poll() bug + - terminal: don't assume stdin is /dev/tty + - terminal: use flags for save_term() + - Merge branch 'pw/single-key-interactive' into pw/add-p-single-key + (this branch uses pw/single-key-interactive.) + + Finishing touches to C rewrite of "git add -i" in single-key + interactive mode. + + Expecting a reroll. + cf. + source: <20220309110325.36917-1-phillip.wood123@gmail.com> + + +* ab/reflog-prep-fix (2022-03-13) 1 commit + - reflog: don't be noisy on empty reflogs + + Regression fix. Will merge to 'next'. - source: + source: -* ab/racy-hooks (2022-03-07) 2 commits - - hooks: fix an obscure TOCTOU "did we just run a hook?" race - - merge: don't run post-hook logic on --no-verify +* en/sparse-cone-becomes-default (2022-03-13) 9 commits + - Documentation: some sparsity wording clarifications + - git-sparse-checkout.txt: mark non-cone mode as deprecated + - git-sparse-checkout.txt: flesh out non-cone mode pattern discussion a bit + - git-sparse-checkout.txt: add a new EXAMPLES section + - git-sparse-checkout.txt: shuffle some sections and mark as internal + - git-sparse-checkout.txt: update docs for deprecation of 'init' + - git-sparse-checkout.txt: wording updates for the cone mode default + - sparse-checkout: make --cone the default + - tests: stop assuming --no-cone is the default mode for sparse-checkout + + source: - Code clean-up to allow callers of run_commit_hook() to learn if it - got "success" because the hook succeeded or because there wasn't - any hook. + +* ep/remove-duplicated-includes (2022-03-14) 6 commits + - attr.h: remove duplicate struct definition + - t/helper/test-run-command.c: delete duplicate include + - builtin/stash.c: delete duplicate include + - builtin/sparse-checkout.c: delete duplicate include + - builtin/gc.c: delete duplicate include + - attr.c: delete duplicate include + + Code clean-up. Will merge to 'next'. - source: + source: <20220313195536.224075-1-gitter.spiros@gmail.com> -* ab/string-list-count-in-size-t (2022-03-07) 2 commits - - string-list API: change "nr" and "alloc" to "size_t" - - gettext API users: don't explicitly cast ngettext()'s "n" +* ep/t6423-modernize (2022-03-13) 1 commit + - t6423-merge-rename-directories.sh: use the $(...) construct + + Code clean-up. + + Will merge to 'next'. + source: <20220313172829.215517-1-gitter.spiros@gmail.com> - Count string_list items in size_t, not "unsigned int". + +* jc/rebase-detach-fix (2022-03-13) 2 commits + - rebase: set REF_HEAD_DETACH in checkout_up_to_date() + - rebase: use test_commit helper in setup + + "git rebase $base $non_branch_commit", when $base is an ancestor or + the $non_branch_commit, modified the current branch, which has been + corrected. Will merge to 'next'? - source: + source: + + +* jh/builtin-fsmonitor-part-2plus (2022-03-13) 16 commits + - fsmonitor-settings: simplify initialization of settings data + - fsmonitor--daemon: add _() to calls to error() + - fsmonitor--daemon: add _() to calls to die() + - compat/fsmonitor/fsm-listen-win32: add _() to calls to error() + - compat/fsmonitor/fsm-listen-darwin: add _() to calls to error() + - fsmonitor-ipc: add _() to calls to die() + - t7527: delete unused verify_status() function + - t7527: fix && chaining in matrix_try() + - t7527: add parameters to start_daemon to handle args and subshell + - t/perf/p7519: cleanup coding style + - t/perf/p7519: use grep rather than egrep in test + - fsmonitor--daemon: refactor cookie handling for readability + - t/helper/fsmonitor-client: cleanup call to parse_options() + - compat/fsmonitor/fsm-listen-darwin: split out GCC-specific declarations + - update-index: convert advise() messages back to warning() + - t/test-lib: avoid using git on LHS of pipe + (this branch uses jh/builtin-fsmonitor-part2.) --------------------------------------------------- -[Stalled] + Various small fixes and cleanups on part-2 of the same topic. -* tl/ls-tree-oid-only (2022-03-04) 12 commits - - ls-tree: support --object-only option for "git-ls-tree" - - ls-tree: introduce "--format" option - - cocci: allow padding with `strbuf_addf()` - - ls-tree: introduce struct "show_tree_data" - - ls-tree: slightly refactor `show_tree()` - - ls-tree: fix "--name-only" and "--long" combined use bug - - ls-tree: simplify nesting if/else logic in "show_tree()" - - ls-tree: rename "retval" to "recurse" in "show_tree()" - - ls-tree: use "size_t", not "int" for "struct strbuf"'s "len" - - ls-tree: use "enum object_type", not {blob,tree,commit}_type - - ls-tree: add missing braces to "else" arms - - ls-tree: remove commented-out code + Needs review. + source: - "git ls-tree" learns "--oid-only" option, similar to "--name-only", - and more generalized "--format" option. - source: +* ps/fsync-refs (2022-03-12) 2 commits + - core.fsync: new option to harden references + - Merge branch 'ns/core-fsyncmethod' into ps/fsync-refs + (this branch uses ns/core-fsyncmethod.) + + Updates to refs traditionally weren't fsync'ed, but we can + configure using core.fsync variable to do so. + + Will merge to 'next'? + source: <47dd79106b93bb81750320d50ccaa74c24aacd28.1646992380.git.ps@pks.im> + + +* vd/stash-silence-reset (2022-03-13) 5 commits + - stash: make internal resets quiet and refresh index + - reset: suppress '--no-refresh' advice if logging is silenced + - reset: replace '--quiet' with '--no-refresh' in performance advice + - reset: introduce --[no-]refresh option to --mixed + - reset: revise index refresh advice + + "git stash" does not allow subcommands it internally runs as its + implementation detail, except for "git reset", to emit messages; + now "git reset" part has also been squelched. + + Will merge to 'next'. + source: + +-------------------------------------------------- +[Stalled] * je/http-better-error-output (2021-12-03) 1 commit . http-backend: give a hint that web browser access is not supported @@ -297,39 +435,105 @@ Release tarballs are available at: cf. source: <20211202035446.1154-1-carenas@gmail.com> --------------------------------------------------- -[Cooking] +-------------------------------------------------- +[Cooking] + +* tl/ls-tree-oid-only (2022-03-04) 12 commits + - ls-tree: support --object-only option for "git-ls-tree" + - ls-tree: introduce "--format" option + - cocci: allow padding with `strbuf_addf()` + - ls-tree: introduce struct "show_tree_data" + - ls-tree: slightly refactor `show_tree()` + - ls-tree: fix "--name-only" and "--long" combined use bug + - ls-tree: simplify nesting if/else logic in "show_tree()" + - ls-tree: rename "retval" to "recurse" in "show_tree()" + - ls-tree: use "size_t", not "int" for "struct strbuf"'s "len" + - ls-tree: use "enum object_type", not {blob,tree,commit}_type + - ls-tree: add missing braces to "else" arms + - ls-tree: remove commented-out code + + "git ls-tree" learns "--oid-only" option, similar to "--name-only", + and more generalized "--format" option. + source: + + +* ab/grep-patterntype (2022-03-04) 1 commit + (merged to 'next' on 2022-03-08 at 407dcd1f5d) + + log tests: fix "abort tests early" regression in ff37a60c369 + + Test fix-up for a topic already in master. + + Will merge to 'master'. + source: + + +* mf/fix-type-in-config-h (2022-03-03) 1 commit + (merged to 'next' on 2022-03-08 at a914e267f2) + + config: correct "--type" option in "git config -h" output + + "git config -h" did not describe the "--type" option correctly. + + Will merge to 'master'. + source: + + +* ab/racy-hooks (2022-03-07) 2 commits + (merged to 'next' on 2022-03-08 at 07188be733) + + hooks: fix an obscure TOCTOU "did we just run a hook?" race + + merge: don't run post-hook logic on --no-verify + + Code clean-up to allow callers of run_commit_hook() to learn if it + got "success" because the hook succeeded or because there wasn't + any hook. + + Will merge to 'master'. + source: + + +* ab/string-list-count-in-size-t (2022-03-07) 2 commits + (merged to 'next' on 2022-03-08 at 3458b5c278) + + string-list API: change "nr" and "alloc" to "size_t" + + gettext API users: don't explicitly cast ngettext()'s "n" + + Count string_list items in size_t, not "unsigned int". + + Will merge to 'master'. + source: + -* jd/userdiff-kotlin (2022-03-06) 1 commit +* jd/userdiff-kotlin (2022-03-12) 1 commit - userdiff: add builtin diff driver for kotlin language. A new built-in userdiff driver for kotlin. - source: <20220306111031.335489-2-jaydeepjd.8914@gmail.com> + + Will merge to 'next'. + source: <20220312044832.718356-1-jaydeepjd.8914@gmail.com> * ps/fetch-mirror-optim (2022-03-01) 6 commits - - refs/files-backend: optimize reading of symbolic refs - - remote: read symbolic refs via `refs_read_symbolic_ref()` - - refs: add ability for backends to special-case reading of symbolic refs - - fetch: avoid lookup of commits when not appending to FETCH_HEAD - - upload-pack: look up "want" lines via commit-graph - - Merge branch 'ps/fetch-atomic' into ps/fetch-mirror-optim - (this branch uses ps/fetch-atomic.) + (merged to 'next' on 2022-03-08 at 60aae8731c) + + refs/files-backend: optimize reading of symbolic refs + + remote: read symbolic refs via `refs_read_symbolic_ref()` + + refs: add ability for backends to special-case reading of symbolic refs + + fetch: avoid lookup of commits when not appending to FETCH_HEAD + + upload-pack: look up "want" lines via commit-graph + + Merge branch 'ps/fetch-atomic' into ps/fetch-mirror-optim Various optimization for "git fetch". - Will merge to 'next'. + Will merge to 'master'. source: * tk/t7063-chmtime-dirs-too (2022-03-01) 2 commits - - t7063: mtime-mangling instead of delays in untracked cache testing - - t/helper/test-chmtime: update mingw to support chmtime on directories + (merged to 'next' on 2022-03-08 at 99c954903d) + + t7063: mtime-mangling instead of delays in untracked cache testing + + t/helper/test-chmtime: update mingw to support chmtime on directories Teach "test-chmtime" to work on a directory and use it to avoid having to wait for a second in a few places in tests. - Will merge to 'next'. + Will merge to 'master'. source: @@ -347,86 +551,45 @@ Release tarballs are available at: Update tests around the use of hook scripts. - Will merge to 'next'? + Needs a (hopefully) final eyeballing. source: * ab/keep-git-exit-codes-in-tests (2022-03-07) 15 commits - - rev-list simplify tests: don't ignore "git" exit code - - checkout tests: don't ignore "git " exit code - - apply tests: don't ignore "git ls-files" exit code, drop sub-shell - - gettext tests: don't ignore "test-tool regex" exit code - - rev-list tests: don't hide abort() in "test_expect_failure" - - diff tests: don't ignore "git rev-list" exit code - - notes tests: don't ignore "git" exit code - - rev-parse tests: don't ignore "git reflog" exit code - - merge tests: use "test_must_fail" instead of ad-hoc pattern - - apply tests: use "test_must_fail" instead of ad-hoc pattern - - diff tests: don't ignore "git diff" exit code in "read" loop - - diff tests: don't ignore "git diff" exit code - - read-tree tests: check "diff-files" exit code on failure - - tests: use "test_stdout_line_count", not "test $(git [...] | wc -l)" - - tests: change some 'test $(git) = "x"' to test_cmp + (merged to 'next' on 2022-03-08 at bf89509f4c) + + rev-list simplify tests: don't ignore "git" exit code + + checkout tests: don't ignore "git " exit code + + apply tests: don't ignore "git ls-files" exit code, drop sub-shell + + gettext tests: don't ignore "test-tool regex" exit code + + rev-list tests: don't hide abort() in "test_expect_failure" + + diff tests: don't ignore "git rev-list" exit code + + notes tests: don't ignore "git" exit code + + rev-parse tests: don't ignore "git reflog" exit code + + merge tests: use "test_must_fail" instead of ad-hoc pattern + + apply tests: use "test_must_fail" instead of ad-hoc pattern + + diff tests: don't ignore "git diff" exit code in "read" loop + + diff tests: don't ignore "git diff" exit code + + read-tree tests: check "diff-files" exit code on failure + + tests: use "test_stdout_line_count", not "test $(git [...] | wc -l)" + + tests: change some 'test $(git) = "x"' to test_cmp Updates tests around the use of "test $(git cmd) = constant". - Will merge to 'next'? - source: - - -* ab/plug-random-leaks (2022-03-04) 14 commits - (merged to 'next' on 2022-03-04 at f461b7a6b5) - + repository.c: free the "path cache" in repo_clear() - + range-diff: plug memory leak in read_patches() - + range-diff: plug memory leak in common invocation - + lockfile API users: simplify and don't leak "path" - + commit-graph: stop fill_oids_from_packs() progress on error and free() - + commit-graph: fix memory leak in misused string_list API - + submodule--helper: fix trivial leak in module_add() - + transport: stop needlessly copying bundle header references - + bundle: call strvec_clear() on allocated strvec - + remote-curl.c: free memory in cmd_main() - + urlmatch.c: add and use a *_release() function - + diff.c: free "buf" in diff_words_flush() - + merge-base: free() allocated "struct commit **" list - + index-pack: fix memory leaks - - Plug random memory leaks. - - Will merge to 'master'. - source: - - -* en/merge-ort-align-verbosity-with-recursive (2022-03-01) 1 commit - (merged to 'next' on 2022-03-04 at e2c7eabab6) - + merge-ort: exclude messages from inner merges by default - - Align the level of verbose output from the ort backend during inner - merge to that of the recursive backend. - Will merge to 'master'. - source: + source: -* ep/test-malloc-check-with-glibc-2.34 (2022-03-04) 1 commit - - test-lib.sh: Use GLIBC_TUNABLES instead of MALLOC_CHECK_ on glibc >= 2.34 +* ep/test-malloc-check-with-glibc-2.34 (2022-03-09) 2 commits + (merged to 'next' on 2022-03-12 at 13ed9014e6) + + test-lib: declare local variables as local + (merged to 'next' on 2022-03-08 at 810ac5a1d3) + + test-lib.sh: Use GLIBC_TUNABLES instead of MALLOC_CHECK_ on glibc >= 2.34 The method to trigger malloc check used in our tests no longer work with newer versions of glibc. - Will merge to 'next'. - source: <20220304133702.26706-1-gitter.spiros@gmail.com> - - -* gc/parse-tree-indirect-errors (2022-03-01) 1 commit - (merged to 'next' on 2022-03-04 at f8d60e5253) - + checkout, clone: die if tree cannot be parsed - - Check the return value from parse_tree_indirect() to turn segfaults - into calls to die(). - Will merge to 'master'. - source: <20220302003613.15567-1-chooglen@google.com> + source: <81f43fbefde84ab7af9ee2ac760845b728a48ab5.1646861976.git.git@grubix.eu> * jc/mailsplit-warn-on-tty (2022-03-03) 1 commit @@ -439,37 +602,17 @@ Release tarballs are available at: * jc/stash-drop (2022-03-02) 3 commits - - stash: call reflog_delete() in reflog.c - - reflog: libify delete reflog function and helpers - - stash: add tests to ensure reflog --rewrite --updatref behavior + (merged to 'next' on 2022-03-08 at 4073dcf05c) + + stash: call reflog_delete() in reflog.c + + reflog: libify delete reflog function and helpers + + stash: add tests to ensure reflog --rewrite --updatref behavior "git stash drop" is reimplemented as an internal call to reflog_delete() function, instead of invoking "git reflog delete" via run_command() API. - Will merge to 'next'. - source: - - -* nj/read-tree-doc-reffix (2022-03-03) 1 commit - (merged to 'next' on 2022-03-04 at 9b183b3e3e) - + Documentation: git-read-tree: separate links using commas - - Documentation mark-up fix. - Will merge to 'master'. - source: <20220303161542.11616-1-nihal@nihaljere.xyz> - - -* ps/fetch-atomic-fixup (2022-03-03) 1 commit - (merged to 'next' on 2022-03-04 at cb279e84df) - + t5503: simplify setup of test which exercises failure of backfill - (this branch uses ps/fetch-atomic.) - - Test simplification. - - Will merge to 'master' together with ps/fetch-atomic. - source: + source: * tb/cruft-packs (2022-03-02) 17 commits @@ -495,20 +638,22 @@ Release tarballs are available at: instead of ejecting them into loose form to be reclaimed later, has been introduced. - Will merge to 'next'. + Waiting for discussion to settle. + cf. source: * tb/rename-remote-progress (2022-03-03) 2 commits - - builtin/remote.c: show progress when renaming remote references - - builtin/remote.c: parse options in 'rename' + (merged to 'next' on 2022-03-08 at adff4dbd86) + + builtin/remote.c: show progress when renaming remote references + + builtin/remote.c: parse options in 'rename' "git remote rename A B", depending on the number of remote-tracking refs involved, takes long time renaming them. The command has been taught to show progress bar while making the user wait. - Will merge to 'next'? - source: + Will merge to 'master'. + source: * js/ci-github-workflow-markup (2022-03-01) 9 commits @@ -525,22 +670,22 @@ Release tarballs are available at: Update the GitHub workflow support to make it quicker to get to the failing test. - Will merge to 'next'? + Waiting for discussion to settle. + cf. <220309.86tuc6lwpj.gmgdl@evledraar.gmail.com> cf. <220302.86mti87cj2.gmgdl@evledraar.gmail.com> cf. <30dbc8fb-a1db-05bc-3dcb-070e11cf4715@gmail.com> source: -* jk/name-rev-w-genno (2022-02-28) 1 commit +* jk/name-rev-w-genno (2022-03-13) 1 commit - name-rev: use generation numbers if available "git name-rev" learned to use the generation numbers when setting the lower bound of searching commits used to explain the revision, when available, instead of committer time. - Breaks linux-TEST-vars job at CI? - cf. - source: <20220228215025.325904-2-jacob.e.keller@intel.com> + Will merge to 'next'. + source: <20220312000015.3643427-1-jacob.e.keller@intel.com> * et/xdiff-indirection (2022-02-17) 1 commit @@ -554,44 +699,17 @@ Release tarballs are available at: source: <20220217225408.GB7@edef91d97c94> -* ab/c99-variadic-macros (2022-02-21) 2 commits - (merged to 'next' on 2022-03-01 at 0419a86e23) - + C99: remove hardcoded-out !HAVE_VARIADIC_MACROS code - + git-compat-util.h: clarify GCC v.s. C99-specific in comment - - Remove the escape hatch we added when we introduced the weather - balloon to use variadic macros unconditionally, to make it official - that we now have a hard dependency on the feature. - - Will merge to 'master'. - source: - - -* ab/help-fixes (2022-02-23) 9 commits - (merged to 'next' on 2022-03-01 at 215f5dbbfb) - + help: don't print "\n" before single-section output - + help: add --no-[external-commands|aliases] for use with --all - + help: error if [-a|-g|-c] and [-i|-m|-w] are combined - + help: correct usage & behavior of "git help --all" - + help: note the option name on option incompatibility - + help.c: split up list_all_cmds_help() function - + help tests: test "git" and "git help [-a|-g] spacing - + help.c: use puts() instead of printf{,_ln}() for consistency - + help doc: add missing "]" to "[-a|--all]" - - Updates to how command line options to "git help" are handled. - - Will merge to 'master'. - source: - - -* sm/no-git-in-upstream-of-pipe-in-tests (2022-02-23) 1 commit - - t0003: avoid pipes with Git on LHS +* sm/no-git-in-upstream-of-pipe-in-tests (2022-03-12) 3 commits + (merged to 'next' on 2022-03-12 at 9e6f538b36) + + t0030-t0050: avoid pipes with Git on LHS + + t0001-t0028: avoid pipes with Git on LHS + (merged to 'next' on 2022-03-08 at 3ff4e5c09c) + + t0003: avoid pipes with Git on LHS Test fixes. - Will merge to 'next'. - source: <20220223115347.3083-3-shivam828787@gmail.com> + Will merge to 'master'. + source: <20220223115347.3083-1-shivam828787@gmail.com> * ab/http-gcc-12-workaround (2022-02-25) 1 commit @@ -601,74 +719,45 @@ Release tarballs are available at: source: -* ab/make-optim-noop (2022-03-03) 8 commits - (merged to 'next' on 2022-03-04 at 0419394f3d) - + Makefiles: add and use wildcard "mkdir -p" template - + Makefile: add "$(QUIET)" boilerplate to shared.mak - + Makefile: move $(comma), $(empty) and $(space) to shared.mak - + Makefile: move ".SUFFIXES" rule to shared.mak - + Makefile: define $(LIB_H) in terms of $(FIND_SOURCE_FILES) - + Makefile: disable GNU make built-in wildcard rules - + Makefiles: add "shared.mak", move ".DELETE_ON_ERROR" to it - + scalar Makefile: use "The default target of..." pattern - - Makefile refactoring with a bit of suffixes rule stripping to - optimize the runtime overhead. - - Will merge to 'master'. - source: - - * ds/commit-graph-gen-v2-fixes (2022-03-07) 6 commits - - commit-graph: declare bankruptcy on GDAT chunks - - commit-graph: fix generation number v2 overflow values - - commit-graph: start parsing generation v2 (again) - - commit-graph: fix ordering bug in generation numbers - - t5318: extract helpers to lib-commit-graph.sh - - test-read-graph: include extra post-parse info + (merged to 'next' on 2022-03-08 at 36dd214bc2) + + commit-graph: declare bankruptcy on GDAT chunks + + commit-graph: fix generation number v2 overflow values + + commit-graph: start parsing generation v2 (again) + + commit-graph: fix ordering bug in generation numbers + + t5318: extract helpers to lib-commit-graph.sh + + test-read-graph: include extra post-parse info Fixes to the way generation number v2 in the commit-graph files are (not) handled. - Will merge to 'next'. + Will merge to 'master'. source: -* ds/partial-bundles (2022-03-07) 12 commits - - clone: fail gracefully when cloning filtered bundle - - bundle: unbundle promisor packs - - bundle: create filtered bundles - - rev-list: move --filter parsing into revision.c - - bundle: parse filter capability - - bundle: safely handle --objects option - - MyFirstObjectWalk: update recommended usage - - list-objects: consolidate traverse_commit_list[_filtered] - - pack-bitmap: drop filter in prepare_bitmap_walk() - - pack-objects: use rev.filter when possible - - revision: put object filter into struct rev_info - - index-pack: document and test the --promisor option +* ds/partial-bundles (2022-03-09) 13 commits + (merged to 'next' on 2022-03-13 at 03529eaa59) + + clone: fail gracefully when cloning filtered bundle + + bundle: unbundle promisor packs + + bundle: create filtered bundles + + rev-list: move --filter parsing into revision.c + + bundle: parse filter capability + + list-objects: handle NULL function pointers + + MyFirstObjectWalk: update recommended usage + + list-objects: consolidate traverse_commit_list[_filtered] + + pack-bitmap: drop filter in prepare_bitmap_walk() + + pack-objects: use rev.filter when possible + + revision: put object filter into struct rev_info + + list-objects-filter-options: create copy helper + + index-pack: document and test the --promisor option + (this branch is used by ds/bundle-uri.) Bundle file format gets extended to allow a partial bundle, filtered by similar criteria you would give when making a partial/lazy clone. - Will merge to 'next'? - source: - - -* fs/gpgsm-update (2022-03-04) 3 commits - (merged to 'next' on 2022-03-04 at 9c72508077) - + t/lib-gpg: kill all gpg components, not just gpg-agent - + t/lib-gpg: reload gpg components after updating trustlist - + gpg-interface/gpgsm: fix for v2.3 - - Newer version of GPGSM changed its output in a backward - incompatible way to break our code that parses its output. It also - added more processes our tests need to kill when cleaning up. - Adjustments have been made to accommodate these changes. - Will merge to 'master'. - source: <20220302090250.590450-1-fs@gigacodes.de> + source: * jd/prompt-upstream-mark (2022-03-03) 4 commits @@ -680,7 +769,7 @@ Release tarballs are available at: Tweaks in the command line prompt (in contrib/) code around its GIT_PS1_SHOWUPSTREAM feature. - Will merge to 'next'? + What's the status of this one? source: @@ -709,20 +798,22 @@ Release tarballs are available at: the other side what we already have, which is useful when you cannot trust what you have in the local object store. - Will merge to 'next'? + Waiting for discussion to settle. + cf. <20220309002729.3581315-1-calvinwan@google.com> source: * tk/empty-untracked-cache (2022-02-28) 3 commits - - untracked-cache: write index when populating empty untracked cache - - t7519: populate untracked cache before test - - t7519: avoid file to index mtime race for untracked cache + (merged to 'next' on 2022-03-08 at d3749d5850) + + untracked-cache: write index when populating empty untracked cache + + t7519: populate untracked cache before test + + t7519: avoid file to index mtime race for untracked cache The untracked cache newly computed weren't written back to the on-disk index file when there is no other change to the index, which has been corrected. - Will merge to 'next'. + Will merge to 'master'. source: @@ -751,19 +842,20 @@ Release tarballs are available at: * vd/sparse-read-tree (2022-03-01) 8 commits - - read-tree: make three-way merge sparse-aware - - read-tree: make two-way merge sparse-aware - - read-tree: narrow scope of index expansion for '--prefix' - - read-tree: integrate with sparse index - - read-tree: expand sparse checkout test coverage - - read-tree: explicitly disallow prefixes with a leading '/' - - status: fix nested sparse directory diff in sparse index - - sparse-index: prevent repo root from becoming sparse + (merged to 'next' on 2022-03-08 at 037c187db2) + + read-tree: make three-way merge sparse-aware + + read-tree: make two-way merge sparse-aware + + read-tree: narrow scope of index expansion for '--prefix' + + read-tree: integrate with sparse index + + read-tree: expand sparse checkout test coverage + + read-tree: explicitly disallow prefixes with a leading '/' + + status: fix nested sparse directory diff in sparse index + + sparse-index: prevent repo root from becoming sparse "git read-tree" has been made to be aware of the sparse-index feature. - Will merge to 'next'. + Will merge to 'master'. source: @@ -779,102 +871,56 @@ Release tarballs are available at: * pw/single-key-interactive (2022-02-23) 4 commits - - add -p: disable stdin buffering when interactive.singlekey is set - - terminal: set VMIN and VTIME in non-canonical mode - - terminal: pop signal handler when terminal is restored - - terminal: always reset terminal when reading without echo + (merged to 'next' on 2022-03-13 at 02fd6aca2f) + + add -p: disable stdin buffering when interactive.singlekey is set + + terminal: set VMIN and VTIME in non-canonical mode + + terminal: pop signal handler when terminal is restored + + terminal: always reset terminal when reading without echo + (this branch is used by pw/add-p-single-key.) The single-key interactive operation used by "git add -p" has been made more robust. - Will merge to 'next'? + Will merge to 'master'. source: -* jh/builtin-fsmonitor-part3 (2022-03-01) 23 commits - - t/perf/p7527: add perf test for builtin FSMonitor - - t7527: FSMonitor tests for directory moves - - fsmonitor: optimize processing of directory events - - fsm-listen-darwin: shutdown daemon if worktree root is moved/renamed - - fsm-health-win32: force shutdown daemon if worktree root moves - - fsm-health-win32: add framework to monitor daemon health - - fsmonitor--daemon: stub in health thread - - fsmonitor--daemon: rename listener thread related variables - - fsmonitor--daemon: prepare for adding health thread - - fsmonitor--daemon: cd out of worktree root - - fsm-listen-darwin: ignore FSEvents caused by xattr changes on macOS - - unpack-trees: initialize fsmonitor_has_run_once in o->result - - fsmonitor-settings: remote repos on Windows are incompatible with FSMonitor - - fsmonitor-settings: remote repos on macOS are incompatible with FSMonitor - - fsmonitor-settings: stub in macOS-specific incompatibility checking - - fsmonitor-settings: virtual repos are incompatible with FSMonitor - - fsmonitor-settings: stub in platform-specific incompatibility checking - - fsmonitor-settings: bare repos are incompatible with FSMonitor - - t/helper/fsmonitor-client: create stress test - - t7527: test builtin FSMonitor watching repos with unicode paths - - t7527: test FS event reporing on macOS WRT case and Unicode - - fsm-listen-win32: handle shortnames - - Merge branch 'jh/builtin-fsmonitor-part2' into jh/builtin-fsmonitor-part3 +* jh/builtin-fsmonitor-part3 (2022-03-09) 28 commits + . fsmonitor-settings: NTFS and FAT32 on MacOS are incompatible + . t7527: test Unicode NFC/NFD handling on MacOS + . t/lib-unicode-nfc-nfd: helper prereqs for testing unicode nfc/nfd + . fsmonitor: on macOS also emit NFC spelling for NFD pathname + . t7527: test FSMonitor on case insensitive+preserving file system + . fsmonitor: never set CE_FSMONITOR_VALID on submodules + . t/perf/p7527: add perf test for builtin FSMonitor + . t7527: FSMonitor tests for directory moves + . fsmonitor: optimize processing of directory events + . fsm-listen-darwin: shutdown daemon if worktree root is moved/renamed + . fsm-health-win32: force shutdown daemon if worktree root moves + . fsm-health-win32: add polling framework to monitor daemon health + . fsmonitor--daemon: stub in health thread + . fsmonitor--daemon: rename listener thread related variables + . fsmonitor--daemon: prepare for adding health thread + . fsmonitor--daemon: cd out of worktree root + . fsm-listen-darwin: ignore FSEvents caused by xattr changes on macOS + . unpack-trees: initialize fsmonitor_has_run_once in o->result + . fsmonitor-settings: remote repos on Windows are incompatible + . fsmonitor-settings: remote repos on macOS are incompatible + . fsmonitor-settings: stub in macOS-specific incompatibility checking + . fsmonitor-settings: VFS for Git virtual repos are incompatible + . fsmonitor-settings: stub in platform-specific incompatibility checking + . fsmonitor-settings: bare repos are incompatible with FSMonitor + . t/helper/fsmonitor-client: create stress test + . t7527: test FSMonitor on repos with Unicode root paths + . fsm-listen-win32: handle shortnames + . Merge branch 'jh/builtin-fsmonitor-part2' into jh/builtin-fsmonitor-part3 (this branch uses jh/builtin-fsmonitor-part2.) More fsmonitor--daemon. - - Expecting a reroll on the updated "part 2". - source: - - -* hn/reftable-no-empty-keys (2022-02-23) 7 commits - (merged to 'next' on 2022-03-01 at dc4aa7e796) - + reftable: rename writer_stats to reftable_writer_stats - + reftable: add test for length of disambiguating prefix - + reftable: ensure that obj_id_len is >= 2 on writing - + reftable: avoid writing empty keys at the block layer - + reftable: add a test that verifies that writing empty keys fails - + reftable: reject 0 object_id_len - + Documentation: object_id_len goes up to 31 - - General clean-up in reftable implementation, including - clarification of the API documentation, tightening the code to - honor documented length limit, etc. - - Will merge to 'master'. - source: - - -* ps/fetch-atomic (2022-02-17) 7 commits - (merged to 'next' on 2022-02-18 at 3824153b23) - + fetch: make `--atomic` flag cover pruning of refs - + fetch: make `--atomic` flag cover backfilling of tags - + refs: add interface to iterate over queued transactional updates - + fetch: report errors when backfilling tags fails - + fetch: control lifecycle of FETCH_HEAD in a single place - + fetch: backfill tags before setting upstream - + fetch: increase test coverage of fetches - (this branch is used by ps/fetch-atomic-fixup and ps/fetch-mirror-optim.) - - "git fetch" can make two separate fetches, but ref updates coming - from them were in two separate ref transactions under "--atomic", - which has been corrected. - - Will merge to 'master' together with ps/fetch-atomic-fixup. - source: - - -* pw/xdiff-alloc-fail (2022-02-16) 4 commits - (merged to 'next' on 2022-03-01 at 8a10912059) - + xdiff: handle allocation failure when merging - + xdiff: refactor a function - + xdiff: handle allocation failure in patience diff - + xdiff: fix a memory leak - - Improve failure case behaviour of xdiff library when memory - allocation fails. - - Will merge to 'master'. - source: + source: -* gc/recursive-fetch-with-unused-submodules (2022-03-03) 10 commits +* gc/recursive-fetch-with-unused-submodules (2022-03-07) 10 commits - submodule: fix latent check_has_commit() bug - fetch: fetch unpopulated, changed submodules - submodule: move logic into fetch_task_create() @@ -892,8 +938,9 @@ Release tarballs are available at: in the current checkout of the superproject. We now do so for all submodules that have been run "git submodule init" on. - Will merge to 'next'? - source: <20220304005757.70107-1-chooglen@google.com> + Expecting a reroll. + cf. + source: <20220308001433.94995-1-chooglen@google.com> * js/bisect-in-c (2022-02-23) 14 commits @@ -934,22 +981,7 @@ Release tarballs are available at: source: -* jc/cat-file-batch-commands (2022-02-18) 4 commits - (merged to 'next' on 2022-03-01 at 8764b7963c) - + cat-file: add --batch-command mode - + cat-file: add remove_timestamp helper - + cat-file: introduce batch_mode enum to replace print_contents - + cat-file: rename cmdmode to transform_mode - - "git cat-file" learns "--batch-command" mode, which is a more - flexible interface than the existing "--batch" or "--batch-check" - modes, to allow different kinds of inquiries made. - - Will merge to 'master'. - source: - - -* ar/submodule-update (2022-03-04) 13 commits +* gc/submodule-update-part1 (2022-03-04) 13 commits - submodule--helper update-clone: check for --filter and --init - submodule update: add tests for --filter - submodule--helper: remove ensure-core-worktree @@ -966,7 +998,7 @@ Release tarballs are available at: Rewrite of "git submodule update" in C (early part). - Will merge to 'next'? + Will merge to 'next'. source: <20220305001401.20888-1-chooglen@google.com> @@ -984,22 +1016,23 @@ Release tarballs are available at: * ab/object-file-api-updates (2022-02-25) 12 commits - - object-file API: pass an enum to read_object_with_reference() - - object-file.c: add a literal version of write_object_file_prepare() - - object-file API: have hash_object_file() take "enum object_type" - - object API: rename hash_object_file_literally() to write_*() - - object-file API: split up and simplify check_object_signature() - - object API users + docs: check <0, not !0 with check_object_signature() - - object API docs: move check_object_signature() docs to cache.h - - object API: correct "buf" v.s. "map" mismatch in *.c and *.h - - object-file API: have write_object_file() take "enum object_type" - - object-file API: add a format_object_header() function - - object-file API: return "void", not "int" from hash_object_file() - - object-file.c: split up declaration of unrelated variables + (merged to 'next' on 2022-03-08 at 7fc151ce67) + + object-file API: pass an enum to read_object_with_reference() + + object-file.c: add a literal version of write_object_file_prepare() + + object-file API: have hash_object_file() take "enum object_type" + + object API: rename hash_object_file_literally() to write_*() + + object-file API: split up and simplify check_object_signature() + + object API users + docs: check <0, not !0 with check_object_signature() + + object API docs: move check_object_signature() docs to cache.h + + object API: correct "buf" v.s. "map" mismatch in *.c and *.h + + object-file API: have write_object_file() take "enum object_type" + + object-file API: add a format_object_header() function + + object-file API: return "void", not "int" from hash_object_file() + + object-file.c: split up declaration of unrelated variables Object-file API shuffling. - Will merge to 'next'. + Will merge to 'master'. source: @@ -1056,26 +1089,6 @@ Release tarballs are available at: source: <20220210164627.279520-1-jholdsworth@nvidia.com> -* en/present-despite-skipped (2022-03-01) 7 commits - (merged to 'next' on 2022-03-01 at 4982287a31) - + repo_read_index: add config to expect files outside sparse patterns - (merged to 'next' on 2022-02-15 at 960873fdad) - + Accelerate clear_skip_worktree_from_present_files() by caching - + Update documentation related to sparsity and the skip-worktree bit - + repo_read_index: clear SKIP_WORKTREE bit from files present in worktree - + unpack-trees: fix accidental loss of user changes - + t1011: add testcase demonstrating accidental loss of user modifications - + Merge branch 'vd/sparse-clean-etc' into en/present-despite-skipped - - In sparse-checkouts, files mis-marked as missing from the working tree - could lead to later problems. Such files were hard to discover, and - harder to correct. Automatically detecting and correcting the marking - of such files has been added to avoid these problems. - - Will merge to 'master'. - source: - - * js/use-builtin-add-i (2021-12-01) 2 commits - add -i: default to the built-in implementation - t2016: require the PERL prereq only when necessary @@ -1094,55 +1107,56 @@ Release tarballs are available at: * jh/builtin-fsmonitor-part2 (2022-03-01) 30 commits - - update-index: convert fsmonitor warnings to advise - - t7527: test status with untracked-cache and fsmonitor--daemon - - fsmonitor: force update index after large responses - - fsmonitor--daemon: use a cookie file to sync with file system - - fsmonitor--daemon: periodically truncate list of modified files - - t/perf/p7519: add fsmonitor--daemon test cases - - t/perf/p7519: speed up test on Windows - - t/helper/test-chmtime: skip directories on Windows - - t/perf: avoid copying builtin fsmonitor files into test repo - - t7527: create test for fsmonitor--daemon - - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon - - help: include fsmonitor--daemon feature flag in version info - - fsmonitor--daemon: implement handle_client callback - - compat/fsmonitor/fsm-listen-darwin: implement FSEvent listener on MacOS - - compat/fsmonitor/fsm-listen-darwin: add MacOS header files for FSEvent - - compat/fsmonitor/fsm-listen-win32: implement FSMonitor backend on Windows - - fsmonitor--daemon: create token-based changed path cache - - fsmonitor--daemon: define token-ids - - fsmonitor--daemon: add pathname classification - - fsmonitor--daemon: implement 'start' command - - fsmonitor--daemon: implement 'run' command - - compat/fsmonitor/fsm-listen-darwin: stub in backend for Darwin - - compat/fsmonitor/fsm-listen-win32: stub in backend for Windows - - fsmonitor--daemon: implement 'stop' and 'status' commands - - fsmonitor--daemon: add a built-in fsmonitor daemon - - fsmonitor: document builtin fsmonitor - - fsmonitor: use IPC to query the builtin FSMonitor daemon - - fsmonitor: config settings are repository-specific - - fsmonitor-ipc: create client routines for git-fsmonitor--daemon - - fsmonitor: enhance existing comments, clarify trivial response handling - (this branch is used by jh/builtin-fsmonitor-part3.) + (merged to 'next' on 2022-03-08 at 5f9d385483) + + update-index: convert fsmonitor warnings to advise + + t7527: test status with untracked-cache and fsmonitor--daemon + + fsmonitor: force update index after large responses + + fsmonitor--daemon: use a cookie file to sync with file system + + fsmonitor--daemon: periodically truncate list of modified files + + t/perf/p7519: add fsmonitor--daemon test cases + + t/perf/p7519: speed up test on Windows + + t/helper/test-chmtime: skip directories on Windows + + t/perf: avoid copying builtin fsmonitor files into test repo + + t7527: create test for fsmonitor--daemon + + t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon + + help: include fsmonitor--daemon feature flag in version info + + fsmonitor--daemon: implement handle_client callback + + compat/fsmonitor/fsm-listen-darwin: implement FSEvent listener on MacOS + + compat/fsmonitor/fsm-listen-darwin: add MacOS header files for FSEvent + + compat/fsmonitor/fsm-listen-win32: implement FSMonitor backend on Windows + + fsmonitor--daemon: create token-based changed path cache + + fsmonitor--daemon: define token-ids + + fsmonitor--daemon: add pathname classification + + fsmonitor--daemon: implement 'start' command + + fsmonitor--daemon: implement 'run' command + + compat/fsmonitor/fsm-listen-darwin: stub in backend for Darwin + + compat/fsmonitor/fsm-listen-win32: stub in backend for Windows + + fsmonitor--daemon: implement 'stop' and 'status' commands + + fsmonitor--daemon: add a built-in fsmonitor daemon + + fsmonitor: document builtin fsmonitor + + fsmonitor: use IPC to query the builtin FSMonitor daemon + + fsmonitor: config settings are repository-specific + + fsmonitor-ipc: create client routines for git-fsmonitor--daemon + + fsmonitor: enhance existing comments, clarify trivial response handling + (this branch is used by jh/builtin-fsmonitor-part-2plus and jh/builtin-fsmonitor-part3.) Built-in fsmonitor (part 2). - Will merge to 'next'. + Will merge to 'master'. source: -* es/superproject-aware-submodules (2022-02-28) 3 commits - - rev-parse: short-circuit superproject worktree when config unset - - introduce submodule.hasSuperproject record - - t7400-submodule-basic: modernize inspect() helper +* es/superproject-aware-submodules (2022-03-09) 3 commits + . rev-parse: short-circuit superproject worktree when config unset + . introduce submodule.hasSuperproject record + . t7400-submodule-basic: modernize inspect() helper A configuration variable in a repository tells if it is (or is not) a submodule of a superproject. Expecting a reroll. - cf. - source: <20220301002613.1459916-1-emilyshaffer@google.com> + cf. + source: <20220310004423.2627181-1-emilyshaffer@google.com> -------------------------------------------------- [Discarded]