From 1de9209a8798ef4ad406bcbfbaa5a7eff346755c Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Thu, 6 May 2021 14:00:18 +0900 Subject: [PATCH] What's cooking (2021/05 #01) --- whats-cooking.txt | 1081 +++++++++++++++++++++++++-------------------- 1 file changed, 608 insertions(+), 473 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index 5bef71df02..e9b2ba660c 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 (Apr 2021, #06; Thu, 29) -X-master-at: 311531c9de557d25ac087c1637818bd2aad6eb3a -X-next-at: 47e6f1690178d77508c72e3fec1411a0ca706661 +Subject: What's cooking in git.git (May 2021, #01; Thu, 6) +X-master-at: 7e391989789db82983665667013a46eabc6fc570 +X-next-at: 1ce651569ca7e0a65f24af9c9548363d83d99866 -What's cooking in git.git (Apr 2021, #06; Thu, 29) +What's cooking in git.git (May 2021, #01; Thu, 6) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -12,11 +12,6 @@ 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. -I am still catching up with the updates of various topics that -happened during my absense, and I'd expect new patches will still -take more time to be queued in 'seen' (as by definition I haven't -seen many of them ;-). - 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 repositories have only a subset of branches. @@ -48,293 +43,382 @@ Release tarballs are available at: -------------------------------------------------- [Graduated to 'master'] -* ab/detox-gettext-tests (2021-04-13) 1 commit - (merged to 'next' on 2021-04-15 at db0da2903a) - + tests: remove all uses of test_i18cmp +* ab/pathname-encoding-doc (2021-04-20) 1 commit + (merged to 'next' on 2021-04-20 at a90562c59f) + + doc: clarify the filename encoding in git diff + + Clarify that pathnames recorded in Git trees are most often (but + not necessarily) encoded in UTF-8. - Test clean-up. + +* ds/maintenance-prefetch-fix (2021-04-16) 4 commits + (merged to 'next' on 2021-04-16 at 0a1818e235) + + maintenance: respect remote.*.skipFetchAll + + maintenance: use 'git fetch --prefetch' + + fetch: add --prefetch option + + maintenance: simplify prefetch logic + + The prefetch task in "git maintenance" assumed that "git fetch" + from any remote would fetch all its local branches, which would + fetch too much if the user is interested in only a subset of + branches there. -* ab/usage-error-docs (2021-04-13) 3 commits - (merged to 'next' on 2021-04-15 at dbbbaa5eea) - + api docs: document that BUG() emits a trace2 error event - + api docs: document BUG() in api-error-handling.txt - + usage.c: don't copy/paste the same comment three times +* ds/sparse-index (2021-03-30) 21 commits + (merged to 'next' on 2021-04-07 at f1290a7929) + + p2000: add sparse-index repos + + sparse-index: loose integration with cache_tree_verify() + + cache-tree: integrate with sparse directory entries + + sparse-checkout: disable sparse-index + + sparse-checkout: toggle sparse index from builtin + + sparse-index: add index.sparse config option + + sparse-index: check index conversion happens + + unpack-trees: allow sparse directories + + submodule: sparse-index should not collapse links + + sparse-index: convert from full to sparse + + sparse-index: add 'sdir' index extension + + sparse-checkout: hold pattern list in index + + unpack-trees: ensure full index + + test-tool: don't force full index + + test-read-cache: print cache entries with --table + + t1092: compare sparse-checkout to sparse-index + + sparse-index: implement ensure_full_index() + + sparse-index: add guard to ensure full index + + t1092: clean up script quoting + + t/perf: add performance test for sparse operations + + sparse-index: design doc and format update + (this branch is used by ds/sparse-index-protections and ds/status-with-sparse-index.) - Documentation updates, with unrelated comment updates, too. + Both in-core and on-disk index has been updated to optionally omit + individual entries and replace them with the tree object that + corresponds to the directory that contains them when the "cone" + mode of sparse checkout is in use. -* ab/userdiff-tests (2021-04-08) 9 commits - (merged to 'next' on 2021-04-13 at 35fb0e853d) - + blame tests: simplify userdiff driver test - + blame tests: don't rely on t/t4018/ directory - + userdiff: remove support for "broken" tests - + userdiff tests: list builtin drivers via test-tool - + userdiff tests: explicitly test "default" pattern - + userdiff: add and use for_each_userdiff_driver() - + userdiff style: normalize pascal regex declaration - + userdiff style: declare patterns with consistent style - + userdiff style: re-order drivers in alphabetical order +* ds/sparse-index-protections (2021-04-14) 26 commits + (merged to 'next' on 2021-04-17 at f1c40f89ba) + + name-hash: use expand_to_path() + + sparse-index: expand_to_path() + + name-hash: don't add directories to name_hash + + revision: ensure full index + + resolve-undo: ensure full index + + read-cache: ensure full index + + pathspec: ensure full index + + merge-recursive: ensure full index + + entry: ensure full index + + dir: ensure full index + + update-index: ensure full index + + stash: ensure full index + + rm: ensure full index + + merge-index: ensure full index + + ls-files: ensure full index + + grep: ensure full index + + fsck: ensure full index + + difftool: ensure full index + + commit: ensure full index + + checkout: ensure full index + + checkout-index: ensure full index + + add: ensure full index + + cache: move ensure_full_index() to cache.h + + read-cache: expand on query into sparse-directory entry + + *: remove 'const' qualifier for struct index_state + + sparse-index: API protection strategy + (this branch is used by ds/status-with-sparse-index; uses ds/sparse-index.) - A bit of code clean-up and a lot of test clean-up around userdiff - area. + Builds on top of the sparse-index infrastructure to mark operations + that are not ready to mark with the sparse index, causing them to + fall back on fully-populated index that they always have worked with. -* ar/userdiff-scheme (2021-04-08) 1 commit - (merged to 'next' on 2021-04-13 at eb80d55a8c) - + userdiff: add support for Scheme +* hn/refs-trace-errno (2021-04-12) 1 commit + (merged to 'next' on 2021-04-20 at 0816e49d22) + + refs: print errno for read_raw_ref if GIT_TRACE_REFS is set - Userdiff patterns for "Scheme" has been added. + Show errno in the trace output in the error codepath that calls + read_raw_ref method. -* hn/reftable-tables-doc-update (2021-04-12) 1 commit - (merged to 'next' on 2021-04-13 at cdadb2c621) - + reftable: document an alternate cleanup method on Windows +* jk/promisor-optim (2021-04-13) 3 commits + (merged to 'next' on 2021-04-15 at 41f303ef9b) + + revision: avoid parsing with --exclude-promisor-objects + + lookup_unknown_object(): take a repository argument + + is_promisor_object(): free tree buffer after parsing + (this branch is used by rs/repack-without-loosening-promised-objects.) - Doc updte. + Handling of "promisor packs" that allows certain objects to be + missing and lazily retrievable has been optimized (a bit). -* jc/doc-do-not-capitalize-clarification (2021-04-14) 1 commit - (merged to 'next' on 2021-04-15 at 873f7a1f84) - + doc: clarify "do not capitalize the first word" rule +* mt/parallel-checkout-part-2 (2021-04-19) 5 commits + (merged to 'next' on 2021-04-20 at d4779b8864) + + parallel-checkout: add design documentation + + parallel-checkout: support progress displaying + + parallel-checkout: add configuration options + + parallel-checkout: make it truly parallel + + unpack-trees: add basic support for parallel checkout + (this branch is used by mt/parallel-checkout-part-3.) - Doc update for developers. + The checkout machinery has been taught to perform the actual + write-out of the files in parallel when able. -* jk/pack-objects-bitmap-progress-fix (2021-04-12) 1 commit - (merged to 'next' on 2021-04-13 at bbe18a7b3a) - + pack-objects: update "nr_seen" progress based on pack-reused count +* mt/pkt-write-errors (2021-04-15) 1 commit + (merged to 'next' on 2021-04-16 at 4a82d89ff3) + + pkt-line: do not report packet write errors twice - When "git pack-objects" makes a literal copy of a part of existing - packfile using the reachability bitmaps, its update to the progress - meter was broken. + When packet_write() fails, we gave an extra error message + unnecessarily, which has been corrected. -* js/access-nul-emulation-on-windows (2021-04-16) 1 commit - (merged to 'next' on 2021-04-16 at 3017437e51) - + msvc: avoid calling `access("NUL", flags)` +* ow/push-quiet-set-upstream (2021-04-15) 1 commit + (merged to 'next' on 2021-04-16 at 9466d4ef38) + + transport: respect verbosity when setting upstream - Portability fix. + "git push --quiet --set-upstream" was not quiet when setting the + upstream branch configuration, which has been corrected. -* jt/fetch-pack-request-fix (2021-04-08) 1 commit - (merged to 'next' on 2021-04-15 at 25c02ce3c3) - + fetch-pack: buffer object-format with other args - (this branch is used by jt/push-negotiation.) +* so/log-diff-merge (2021-04-16) 5 commits + (merged to 'next' on 2021-04-17 at 6c1eba8ee3) + + doc/diff-options: document new --diff-merges features + + diff-merges: introduce log.diffMerges config variable + + diff-merges: adapt -m to enable default diff format + + diff-merges: refactor set_diff_merges() + + diff-merges: introduce --diff-merges=on - The response to the "object-format" capability in the fetch client - codepath were malformed, which has been corrected. It is - understandable that this bug has been hidden, as practically nobody - uses the non-standard hash function yet. + "git log" learned "--diff-merges=