git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* What's cooking in git.git (Apr 2021, #06; Thu, 29)
@ 2021-04-29  9:15 Junio C Hamano
  2021-04-30  9:34 ` Ævar Arnfjörð Bjarmason
  2021-05-02 12:00 ` ZheNing Hu
  0 siblings, 2 replies; 9+ messages in thread
From: Junio C Hamano @ 2021-04-29  9:15 UTC (permalink / raw)
  To: git

Here are the topics that have been cooking.  Commits prefixed with '-' are
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 absence, 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.

With maint, master, next, seen, todo:

	git://git.kernel.org/pub/scm/git/git.git/
	git://repo.or.cz/alt-git.git/
	https://kernel.googlesource.com/pub/scm/git/git/
	https://github.com/git/git/
	https://gitlab.com/git-vcs/git/

With all the integration branches and topics broken out:

	https://github.com/gitster/git/

Even though the preformatted documentation in HTML and man format
are not sources, they are published in these repositories for
convenience (replace "htmldocs" with "manpages" for the manual
pages):

	git://git.kernel.org/pub/scm/git/git-htmldocs.git/
	https://github.com/gitster/git-htmldocs.git/

Release tarballs are available at:

	https://www.kernel.org/pub/software/scm/git/

--------------------------------------------------
[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

 Test clean-up.


* 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

 Documentation updates, with unrelated comment updates, too.


* 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

 A bit of code clean-up and a lot of test clean-up around userdiff
 area.


* ar/userdiff-scheme (2021-04-08) 1 commit
  (merged to 'next' on 2021-04-13 at eb80d55a8c)
 + userdiff: add support for Scheme

 Userdiff patterns for "Scheme" has been added.


* 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

 Doc updte.


* 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

 Doc update for developers.


* 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

 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.


* 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)`

 Portability fix.


* 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.)

 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.


* sg/bugreport-fixes (2021-04-08) 1 commit
  (merged to 'next' on 2021-04-16 at e93602f4df)
 + Makefile: add missing dependencies of 'config-list.h'
 (this branch is used by so/log-diff-merge.)

 The dependencies for config-list.h and command-list.h were broken
 when the former was split out of the latter, which has been
 corrected.

--------------------------------------------------
[New Topics]

* 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.

 Will merge to 'master'.


* dl/complete-stash-updates (2021-04-27) 4 commits
 - git-completion.bash: consolidate cases in _git_stash()
 - git-completion.bash: use $__git_cmd_idx in more places
 - git-completion.bash: rename to $__git_cmd_idx
 - git-completion.bash: separate some commands onto their own line
 (this branch uses dl/complete-stash.)

 Further update the command line completion (in contrib/) for "git
 stash".

 Will merge to 'next'?


* ab/pretty-date-format-tests (2021-04-27) 2 commits
 - pretty tests: give --date/format tests a better description
 - pretty tests: simplify %aI/%cI date format test
 (this branch is used by zh/pretty-date-human.)

 Tweak a few tests for "log --format=..." that show timestamps in
 various formats.

 Will merge to 'next'.


* ds/status-with-sparse-index (2021-04-28) 10 commits
 - fsmonitor: test with sparse index
 - status: use sparse-index throughout
 - status: skip sparse-checkout percentage with sparse-index
 - dir.c: accept a directory as part of cone-mode patterns
 - unpack-trees: stop recursing into sparse directories
 - unpack-trees: compare sparse directories correctly
 - unpack-trees: preserve cache_bottom
 - t1092: add tests for status/add and sparse files
 - Merge branch 'mt/add-rm-in-sparse-checkout' into ds/status-with-sparse-index
 - Merge branch 'ds/sparse-index-protections' into ds/status-with-sparse-index
 (this branch uses ds/sparse-index, ds/sparse-index-protections and mt/add-rm-in-sparse-checkout.)

 "git status" codepath learned to work with sparsely populated index
 without hydrating it fully.


* hn/trace-reflog-expiry (2021-04-27) 1 commit
 - refs/debug: trace into reflog expiry too

 The reflog expiry machinery has been taught to emit trace events.

 Will merge to 'next'.


* jk/prune-with-bitmap-fix (2021-04-29) 2 commits
 - prune: save reachable-from-recent objects with bitmaps
 - pack-bitmap: clean up include_check after use

 When the reachability bitmap is in effect, the "do not lose
 recently created objects and those that are reachable from them"
 safety to protect us from races were disabled by mistake, which has
 been corrected.

 Will merge to 'next'.


* js/merge-already-up-to-date-message-reword (2021-04-28) 1 commit
 - git-merge: rewrite already up to date message

 A few variants of informational message "Already up-to-date" has
 been rephrased.

 Expecting a reroll.


* jz/apply-3way-first-message-fix (2021-04-29) 1 commit
 - apply: adjust messages to account for --3way changes

 When we swapped the order of --3way fallback, we forgot to adjust
 the message we give when the first method fails and the second
 method is attempted (which used to be "direct application failed
 hence we try 3way", now it is the other way around).

 Will merge to 'next'.


* ls/fast-export-signed (2021-04-28) 3 commits
 - fast-export, fast-import: implement signed-commits
 - fast-export: rename --signed-tags='warn' to 'warn-verbatim'
 - git-fast-import.txt: add missing LF in the BNF

 "git fast-export" offers a way to control how signed tags are
 handled; the mechanism has been extended to allow specifying how
 signed commits are handled as well.

 Expecting a reroll.


* ls/subtree (2021-04-28) 30 commits
 - subtree: be stricter about validating flags
 - subtree: push: allow specifying a local rev other than HEAD
 - subtree: allow 'split' flags to be passed to 'push'
 - subtree: allow --squash to be used with --rejoin
 - subtree: give the docs a once-over
 - subtree: have $indent actually affect indentation
 - subtree: don't let debug and progress output clash
 - subtree: add comments and sanity checks
 - subtree: remove duplicate check
 - subtree: parse revs in individual cmd_ functions
 - subtree: use "^{commit}" instead of "^0"
 - subtree: don't fuss with PATH
 - subtree: use "$*" instead of "$@" as appropriate
 - subtree: use more explicit variable names for cmdline args
 - subtree: use git-sh-setup's `say`
 - subtree: use `git merge-base --is-ancestor`
 - subtree: drop support for git < 1.7
 - subtree: more consistent error propagation
 - subtree: don't have loose code outside of a function
 - subtree: t7900: add porcelain tests for 'pull' and 'push'
 - subtree: t7900: add a test for the -h flag
 - subtree: t7900: rename last_commit_message to last_commit_subject
 - subtree: t7900: fix 'verify one file change per commit'
 - subtree: t7900: delete some dead code
 - subtree: t7900: use 'test' for string equality
 - subtree: t7900: comment subtree_test_create_repo
 - subtree: t7900: use consistent formatting
 - subtree: t7900: use test-lib.sh's test_count
 - subtree: t7900: update for having the default branch name be 'main'
 - .gitignore: ignore 'git-subtree' as a build artifact

 "git subtree" updates.

 Will merge to 'next'?
 Unless somebody familiar with subtree speaks up soon and causes a
 reroll.


* mt/parallel-checkout-part-3 (2021-04-28) 7 commits
 - ci: run test round with parallel-checkout enabled
 - parallel-checkout: add tests related to .gitattributes
 - parallel-checkout: add tests related to path collisions
 - parallel-checkout: add tests for basic operations
 - checkout-index: add parallel checkout support
 - builtin/checkout.c: complete parallel checkout support
 - make_transient_cache_entry(): optionally alloc from mem_pool
 (this branch uses mt/parallel-checkout-part-2.)

 The final part of "parallel checkout".

 Waiting for a review.


* po/diff-patch-doc (2021-04-28) 1 commit
 - doc: point to diff attribute in patch format docs

 Doc update.

 Will merge to 'next'.


* rj/bisect-skip-honor-terms (2021-04-28) 2 commits
 - t6030: add test for git bisect skip started with --term-* arguments
 - bisect--helper: use BISECT_TERMS in 'bisect skip' command

 "git bisect skip" when custom words are used for new/old did not
 work, which has been corrected.


* tv/p4-fallback-encoding (2021-04-28) 1 commit
 - add git-p4.fallbackEncoding config variable, to prevent git-p4 from crashing on non UTF-8 changeset descriptions

 "git p4" learns the fallbackEncoding configuration variable to
 safely accept changeset descriptions that aren't written in UTF-8.

 Expecting a reroll.


* zh/pretty-date-human (2021-04-27) 1 commit
 - pretty: provide human date format
 (this branch uses ab/pretty-date-format-tests.)

 "git log --format=..." placeholders learned %ah/%ch placeholders to
 request the --date=human output.

 Will merge to 'next'?

--------------------------------------------------
[Stalled]

* jh/rfc-builtin-fsmonitor (2021-04-08) 23 commits
 - t7527: test status with untracked-cache and fsmonitor--daemon
 - p7519: add fsmonitor--daemon
 - t7527: create test for fsmonitor--daemon
 - fsmonitor: force update index when fsmonitor token advances
 - fsmonitor--daemon: use a cookie file to sync with file system
 - fsmonitor--daemon:: introduce client delay for testing
 - fsmonitor--daemon: periodically truncate list of modified files
 - fsmonitor--daemon: implement handle_client callback
 - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
 - fsmonitor-fs-listen-macos: add macos header files for FSEvent
 - fsmonitor-fs-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 daemon command options
 - fsmonitor-fs-listen-macos: stub in backend for MacOS
 - fsmonitor-fs-listen-win32: stub in backend for Windows
 - fsmonitor--daemon: implement client command options
 - fsmonitor--daemon: add a built-in fsmonitor daemon
 - fsmonitor: introduce `core.useBuiltinFSMonitor` to call the daemon via IPC
 - config: FSMonitor is repository-specific
 - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
 - Merge branch 'jh/simple-ipc' into jh/rfc-builtin-fsmonitor

 An attempt to write and ship with a watchman equivalent tailored
 for our use.


* ag/merge-strategies-in-c (2021-03-17) 15 commits
 - sequencer: use the "octopus" merge strategy without forking
 - sequencer: use the "resolve" strategy without forking
 - merge: use the "octopus" strategy without forking
 - merge: use the "resolve" strategy without forking
 - merge-octopus: rewrite in C
 - merge-recursive: move better_branch_name() to merge.c
 - merge-resolve: rewrite in C
 - merge-one-file: rewrite in C
 - update-index: move add_cacheinfo() to read-cache.c
 - merge-index: add a new way to invoke `git-merge-one-file'
 - merge-index: drop the index
 - merge-index: libify merge_one_path() and merge_all()
 - t6060: add tests for removed files
 - t6060: modify multiple files to expose a possible issue with merge-index
 - t6407: modernise tests

 The resolve and octopus merge strategy backends have been rewritten
 in C.

 Expecting a (hopefully final) reroll.
 cf. <nycvar.QRO.7.76.6.2103241142220.50@tvgsbejvaqbjf.bet>


* ab/describe-tests-fix (2021-04-29) 5 commits
 - describe tests: support -C in "check_describe"
 - describe tests: fix nested "test_expect_success" call
 - describe tests: don't rely on err.actual from "check_describe"
 - describe tests: refactor away from glob matching
 - describe tests: improve test for --work-tree & --dirty
 (this branch uses ab/test-lib-updates.)

 Various updates to tests around "git describe"


* ab/pickaxe-pcre2 (2021-04-29) 22 commits
 - xdiff-interface: replace discard_hunk_line() with a flag
 - xdiff users: use designated initializers for out_line
 - pickaxe -G: don't special-case create/delete
 - pickaxe -G: terminate early on matching lines
 - xdiff-interface: allow early return from xdiff_emit_line_fn
 - xdiff-interface: prepare for allowing early return
 - pickaxe -S: slightly optimize contains()
 - pickaxe: rename variables in has_changes() for brevity
 - pickaxe -S: support content with NULs under --pickaxe-regex
 - pickaxe: assert that we must have a needle under -G or -S
 - pickaxe: refactor function selection in diffcore-pickaxe()
 - perf: add performance test for pickaxe
 - pickaxe/style: consolidate declarations and assignments
 - diff.h: move pickaxe fields together again
 - pickaxe: die when --find-object and --pickaxe-all are combined
 - pickaxe: die when -G and --pickaxe-regex are combined
 - pickaxe tests: add missing test for --no-pickaxe-regex being an error
 - pickaxe tests: test for -G, -S and --find-object incompatibility
 - pickaxe tests: add test for "log -S" not being a regex
 - pickaxe tests: add test for diffgrep_consume() internals
 - pickaxe tests: refactor to use test_commit --append --printf
 - grep/pcre2 tests: reword comments referring to kwset
 (this branch uses ab/test-lib-updates.)

 Rewrite the backend for "diff -G/-S" to use pcre2 engine when
 available.


* es/config-hooks (2021-03-10) 36 commits
 . run-command: stop thinking about hooks
 . git-send-email: use 'git hook run' for 'sendemail-validate'
 . bugreport: use hook_exists instead of find_hook
 . receive-pack: convert receive hooks to hook.h
 . post-update: use hook.h library
 . proc-receive: acquire hook list from hook.h
 . receive-pack: convert 'update' hook to hook.h
 . reference-transaction: look for hooks in config
 . transport: convert pre-push hook to use config
 . hook: convert 'post-rewrite' hook to config
 . hooks: convert 'post-checkout' hook to hook library
 . git-p4: use 'git hook' to run hooks
 . receive-pack: convert push-to-checkout hook to hook.h
 . read-cache: convert post-index-change hook to use config
 . rebase: teach pre-rebase to use hook.h
 . gc: use hook library for pre-auto-gc hook
 . merge: use config-based hooks for post-merge hook
 . am: convert applypatch hooks to use config
 . commit: use config-based hooks
 . hooks: allow callers to capture output
 . run-command: allow capturing of collated output
 . hook: provide stdin by string_list or callback
 . run-command: add stdin callback for parallelization
 . hook: allow specifying working directory for hooks
 . hook: allow parallel hook execution
 . run-command: allow stdin for run_processes_parallel
 . hook: support passing stdin to hooks
 . hook: introduce hook_exists()
 . hook: add 'run' subcommand
 . parse-options: parse into strvec
 . hook: implement hookcmd.<name>.skip
 . hook: teach hook.runHookDir
 . hook: include hookdir hook in list
 . hook: add list command
 . hook: scaffolding for git-hook subcommand
 . doc: propose hooks managed by the config

 The "hooks defined in config" topic.

--------------------------------------------------
[Cooking]

* dl/complete-stash (2021-03-24) 3 commits
  (merged to 'next' on 2021-03-24 at ce573a99cc)
 + git-completion.bash: use __gitcomp_builtin() in _git_stash()
 + git-completion.bash: extract from else in _git_stash()
 + git-completion.bash: pass $__git_subcommand_idx from __git_main()
 (this branch is used by dl/complete-stash-updates.)

 The command line completion (in contrib/) for "git stash" has been
 updated.

 Wait until dl/complete-stash-updates matures.


* ba/object-info (2021-04-20) 1 commit
 - object-info: support for retrieving object info

 Over-the-wire protocol learns a new request type to ask for object
 sizes given a list of object names.


* zh/format-ref-array-optim (2021-04-20) 2 commits
 - ref-filter: reuse output buffer
 - ref-filter: get rid of show_ref_array_item

 "git (branch|tag) --format=..." has been micro-optimized.

 Will merge to 'next'?


* vs/completion-with-set-u (2021-04-16) 1 commit
  (merged to 'next' on 2021-04-20 at 179933f961)
 + completion: avoid aliased command lookup error in nounset mode

 Effort to make the command line completion (in contrib/) safe with
 "set -u" continues.

 Will merge to 'master'.


* hn/prep-tests-for-reftable (2021-04-28) 21 commits
 - t1415: set REFFILES for test specific to storage format
 - t4202: mark bogus head hash test with REFFILES
 - t7003: check reflog existence only for REFFILES
 - t7900: mark pack-refs tests as REFFILES
 - t1404: mark tests that muck with .git directly as REFFILES.
 - t2017: mark --orphan/logAllRefUpdates=false test as REFFILES
 - t1414: mark corruption test with REFFILES
 - t1407: require REFFILES for for_each_reflog test
 - test-lib: provide test prereq REFFILES
 - t5304: use "reflog expire --all" to clear the reflog
 - t5304: restyle: trim empty lines, drop ':' before >
 - t7003: use rev-parse rather than FS inspection
 - t5000: inspect HEAD using git-rev-parse
 - t5000: reformat indentation to the latest fashion
 - t1301: fix typo in error message
 - t1413: use tar to save and restore entire .git directory
 - t1401-symbolic-ref: avoid direct filesystem access
 - t5601: read HEAD using rev-parse
 - t9300: check ref existence using test-helper rather than a file system check
 - t/helper/ref-store: initialize oid in resolve-ref
 - t4202: split testcase for invalid HEAD symref and HEAD hash

 Preliminary clean-up of tests before the main reftable changes
 hits the codebase.


* ps/config-env-option-with-separate-value (2021-04-19) 2 commits
 - git: support separate arg for `--config-env`'s value
 - git.txt: fix synopsis of `--config-env` missing the equals sign

 "git --config-env var=val cmd" weren't accepted (only
 --config-env=var=val was).

 Will merge to 'next'.
 possibly with minimum fix-up?
 cf. <YIKcZxEDsG7qsE4G@coredump.intra.peff.net>


* ab/fsck-unexpected-type (2021-04-13) 6 commits
 - fsck: report invalid object type-path combinations
 - fsck: report invalid types recorded in objects
 - object-store.h: move read_loose_object() below 'struct object_info'
 - fsck: don't hard die on invalid object types
 - fsck tests: refactor one test to use a sub-repo
 - cache.h: move object functions to object-store.h

 "git fsck" has been taught to report mismatch between expected and
 actual types of an object better.

 Expecting a reroll.


* 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.)

 Handling of "promisor packs" that allows certain objects to be
 missing and lazily retrievable has been optimized (a bit).

 Will merge to 'master'.


* 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

 "git log" learned "--diff-merges=<style>" option, with an
 associated configuration variable log.diffMerges.

 Will merge to 'master'.


* rs/repack-without-loosening-promised-objects (2021-04-28) 1 commit
 - repack: avoid loosening promisor objects in partial clones
 (this branch uses jk/promisor-optim.)

 "git repack -A -d" in a partial clone unnecessarily loosened
 objects in promisor pack.


* 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 packet_write() fails, we gave an extra error message
 unnecessarily, which has been corrected.

 Will merge to 'master'.


* 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

 "git push --quiet --set-upstream" was not quiet when setting the
 upstream branch configuration, which has been corrected.

 Will merge to 'master'.


* jt/push-negotiation (2021-04-08) 6 commits
 - send-pack: support push negotiation
 - fetch: teach independent negotiation (no packfile)
 - fetch-pack: refactor command and capability write
 - fetch-pack: refactor add_haves()
 - fetch-pack: refactor process_acks()
 - Merge branch 'jt/fetch-pack-request-fix' into jt/push-negotiation

 "git push" learns to discover common ancestor with the receiving
 end over protocol v2.


* ab/doc-lint (2021-04-10) 7 commits
 - docs: fix linting issues due to incorrect relative section order
 - doc lint: lint relative section order
 - doc lint: lint and fix missing "GIT" end sections
 - doc lint: fix bugs in, simplify and improve lint script
 - doc lint: Perl "strict" and "warnings" in lint-gitlink.perl
 - Documentation/Makefile: make doc.dep dependencies a variable again
 - Documentation/Makefile: make $(wildcard howto/*.txt) a var

 Dev support.

 Will merge to 'next'.


* ab/rebase-no-reschedule-failed-exec (2021-04-10) 2 commits
 - rebase: don't override --no-reschedule-failed-exec with config
 - rebase tests: camel-case rebase.rescheduleFailedExec consistently

 "git rebase --[no-]reschedule-failed-exec" did not work well with
 its configuration variable, which has been corrected.

 Will merge to 'next'.


* ah/plugleaks (2021-04-28) 12 commits
 - builtin/rm: avoid leaking pathspec and seen
 - builtin/rebase: release git_format_patch_opt too
 - builtin/for-each-ref: free filter and UNLEAK sorting.
 - mailinfo: also free strbuf lists when clearing mailinfo
 - builtin/checkout: clear pending objects after diffing
 - builtin/check-ignore: clear_pathspec before returning
 - builtin/bugreport: don't leak prefixed filename
 - branch: FREE_AND_NULL instead of NULL'ing real_ref
 - bloom: clear each bloom_key after use
 - ls-files: free max_prefix when done
 - wt-status: fix multiple small leaks
 - revision: free remainder of old commit list in limit_list

 Plug various leans reported by LSAN.

 Will merge to 'next'?


* bc/hash-transition-interop-part-1 (2021-04-27) 13 commits
 - hex: print objects using the hash algorithm member
 - hex: default to the_hash_algo on zero algorithm value
 - builtin/pack-objects: avoid using struct object_id for pack hash
 - commit-graph: don't store file hashes as struct object_id
 - builtin/show-index: set the algorithm for object IDs
 - hash: provide per-algorithm null OIDs
 - hash: set, copy, and use algo field in struct object_id
 - builtin/pack-redundant: avoid casting buffers to struct object_id
 - Use the final_oid_fn to finalize hashing of object IDs
 - hash: add a function to finalize object IDs
 - http-push: set algorithm when reading object ID
 - Always use oidread to read into struct object_id
 - hash: add an algo member to struct object_id

 SHA-256 transition.

 Will merge to 'next'?


* ps/rev-list-object-type-filter (2021-04-19) 8 commits
 - rev-list: allow filtering of provided items
 - pack-bitmap: implement combined filter
 - pack-bitmap: implement object type filter
 - list-objects: implement object type filter
 - list-objects: support filtering by tag and commit
 - list-objects: move tag processing into its own function
 - revision: mark commit parents as NOT_USER_GIVEN
 - uploadpack.txt: document implication of `uploadpackfilter.allow`

 "git rev-list" learns the "--filter=object:type=<type>" option,
 which can be used to exclude objects of the given kind from the
 packfile generated by pack-objects.

 Will merge to 'next'.
 cf. <YIKPwRFbgzKJ1EBg@coredump.intra.peff.net>


* tb/multi-pack-bitmaps (2021-04-10) 23 commits
 - p5326: perf tests for MIDX bitmaps
 - p5310: extract full and partial bitmap tests
 - midx: respect 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'
 - t7700: update to work with MIDX bitmap test knob
 - t5319: don't write MIDX bitmaps in t5319
 - t5310: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP
 - t5326: test multi-pack bitmap behavior
 - t/helper/test-read-midx.c: add --checksum mode
 - t5310: move some tests to lib-bitmap.sh
 - pack-bitmap: write multi-pack bitmaps
 - pack-bitmap: read multi-pack bitmaps
 - pack-bitmap.c: introduce 'bitmap_is_preferred_refname()'
 - pack-bitmap.c: introduce 'nth_bitmap_object_oid()'
 - pack-bitmap.c: introduce 'bitmap_num_objects()'
 - midx: respect 'core.multiPackIndex' when writing
 - midx: clear auxiliary .rev after replacing the MIDX
 - midx: make a number of functions non-static
 - Documentation: describe MIDX-based bitmaps
 - Documentation: build 'technical/bitmap-format' by default
 - pack-bitmap-write.c: free existing bitmaps
 - pack-bitmap-write.c: gracefully fail to write non-closed bitmaps
 - pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps
 - Merge branch 'tb/pack-preferred-tips-to-give-bitmap' into tb/multi-pack-bitmaps

 The reachability bitmap file used to be generated only for a single
 pack, but now we've learned to generate bitmaps for history that
 span across multiple packfiles.

 Waiting for reviews.
 cf. <cover.1617991824.git.me@ttaylorr.com>


* ab/svn-tests-set-e-fix (2021-04-12) 2 commits
 - svn tests: refactor away a "set -e" in test body
 - svn tests: remove legacy re-setup from init-clone test

 Test clean-up.

 Will merge to 'next'.


* ab/test-lib-updates (2021-04-29) 11 commits
 - test-lib: split up and deprecate test_create_repo()
 - test-lib: do not show advice about init.defaultBranch under --verbose
 - test-lib: reformat argument list in test_create_repo()
 - submodule tests: use symbolic-ref --short to discover branch name
 - test-lib functions: add --printf option to test_commit
 - describe tests: convert setup to use test_commit
 - test-lib functions: add an --annotated option to "test_commit"
 - test-lib-functions: document test_commit --no-tag
 - test-lib-functions: reword "test_commit --append" docs
 - test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable
 - test-lib: bring $remove_trash out of retirement
 (this branch is used by ab/describe-tests-fix and ab/pickaxe-pcre2.)

 Test clean-up.

 Waiting for an Ack before merging them to 'next'.


* ao/p4-avoid-decoding (2021-04-12) 2 commits
 - git-p4: do not decode data from perforce by default
 - git-p4: avoid decoding more data from perforce

 "git p4" in Python-2 days used to accept a lot more kinds of data
 from Perforce server as uninterrupted byte sequence, but after
 switching to Python-3, too many things are expected to be in UTF-8,
 which broke traditional use cases.

 Waiting for reviews.


* 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

 Show errno in the trace output in the error codepath that calls
 read_raw_ref method.

 Will merge to 'master'


* ma/t0091-bugreport-fix (2021-04-12) 1 commit
 - t0091-bugreport.sh: actually verify some content of report

 Test fix.

 Expecting a reroll.
 cf. <YHYZTLl90rkWWVOr@google.com>, <87a6q22dei.fsf@evledraar.gmail.com>


* ps/config-global-override (2021-04-27) 4 commits
 - t1300: fix unset of GIT_CONFIG_NOSYSTEM leaking into subsequent tests
  (merged to 'next' on 2021-04-20 at 82578c696d)
 + config: allow overriding of global and system configuration
 + config: unify code paths to get global config paths
 + config: rename `git_etc_config()`

 Replace GIT_CONFIG_NOSYSTEM mechanism to decline from reading the
 system-wide configuration file with GIT_CONFIG_SYSTEM that lets
 users specify from which file to read the system-wide configuration
 (setting it to an empty file would essentially be the same as
 setting NOSYSTEM), and introduce GIT_CONFIG_GLOBAL to override the
 per-user configuration in $HOME/.gitconfig.

 Will merge to 'next'.


* 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.

 Will merge to 'master'.


* mr/bisect-in-c-4 (2021-04-11) 4 commits
 - bisect--helper: retire `--bisect-next-check` subcommand
 - bisect--helper: reimplement `bisect_run` shell function in C
 - bisect--helper: reimplement `bisect_visualize()`shell function in C
 - run-command: make `exists_in_PATH()` non-static

 The codepaths involved in running "git bisect visualize" and "git
 bisect run" has been rewritten in C.

 Expecting a reroll.
 cf. <xmqq35vwh8qk.fsf@gitster.g>, <xmqqy2doftrj.fsf@gitster.g>
 May want to boost the test coverage.


* mt/add-rm-in-sparse-checkout (2021-04-08) 7 commits
 - rm: honor sparse checkout patterns
 - add: warn when asked to update SKIP_WORKTREE entries
 - refresh_index(): add flag to ignore SKIP_WORKTREE entries
 - pathspec: allow to ignore SKIP_WORKTREE entries on index matching
 - add: make --chmod and --renormalize honor sparse checkouts
 - t3705: add tests for `git add` in sparse checkouts
 - add: include magic part of pathspec on --refresh error
 (this branch is used by ds/status-with-sparse-index.)

 "git add" and "git rm" learned not to touch those paths that are
 outside of sparse checkout.

 Will merge to 'next'.


* zh/trailer-cmd (2021-04-17) 2 commits
 - trailer: add new .cmd config option
 - docs: correct description of .command

 The way the command line specified by the trailer.<token>.command
 configuration variable receives the end-user supplied value was
 both error prone and misleading.  An alternative to achieve the
 same goal in a safer and more intuitive way has been added, as
 the trailer.<token>.cmd configuration variable, to replace it.

 Expecting a reroll, after waiting for "commit --trailer" to stabilize.


* 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.)

 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.

 On hold, waiting for the "protections" topic to stablize.


* 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.)

 The checkout machinery has been taught to perform the actual
 write-out of the files in parallel when able.

 Will merge to 'master'.


* 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.)

 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.

 Will merge to 'master'.


* hn/reftable (2021-04-20) 28 commits
 - t1404: annotate test cases with REFFILES
 - t1401,t2011: parameterize HEAD.lock for REFTABLE
 - t1301: document what needs to be done for REFTABLE
 - Add "test-tool dump-reftable" command.
 - git-prompt: prepare for reftable refs backend
 - Reftable support for git-core
 - reftable: add dump utility
 - reftable: implement stack, a mutable database of reftable files.
 - reftable: implement refname validation
 - reftable: add merged table view
 - reftable: add a heap-based priority queue for reftable records
 - reftable: reftable file level tests
 - reftable: read reftable files
 - reftable: generic interface to tables
 - reftable: write reftable files
 - reftable: a generic binary tree implementation
 - reftable: reading/writing blocks
 - Provide zlib's uncompress2 from compat/zlib-compat.c
 - reftable: (de)serialization for the polymorphic record type.
 - reftable: add blocksource, an abstraction for random access reads
 - reftable: utility functions
 - reftable: add error related functionality
 - reftable: add LICENSE
 - init-db: set the_repository->hash_algo early on
 - hash.h: provide constants for the hash IDs
 - refs/debug: trace into reflog expiry too
 - refs: document reflog_expire_fn's flag argument
 - refs: ref_iterator_peel returns boolean, rather than peel_status

 The "reftable" backend for the refs API.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-04-29  9:15 What's cooking in git.git (Apr 2021, #06; Thu, 29) Junio C Hamano
@ 2021-04-30  9:34 ` Ævar Arnfjörð Bjarmason
  2021-05-02  6:47   ` Junio C Hamano
  2021-05-03  2:38   ` Junio C Hamano
  2021-05-02 12:00 ` ZheNing Hu
  1 sibling, 2 replies; 9+ messages in thread
From: Ævar Arnfjörð Bjarmason @ 2021-04-30  9:34 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, brian m. carlson


On Thu, Apr 29 2021, Junio C Hamano wrote:

Updates on my topics & other things I have comments on:
> * 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
>
>  Doc updte.

In case it makes it into release notes: s/updte/update/;

> * dl/complete-stash-updates (2021-04-27) 4 commits
>  - git-completion.bash: consolidate cases in _git_stash()
>  - git-completion.bash: use $__git_cmd_idx in more places
>  - git-completion.bash: rename to $__git_cmd_idx
>  - git-completion.bash: separate some commands onto their own line
>  (this branch uses dl/complete-stash.)
>
>  Further update the command line completion (in contrib/) for "git
>  stash".
>
>  Will merge to 'next'?

I think so, I reviewed this and it looks good to me.

> * ab/pretty-date-format-tests (2021-04-27) 2 commits
>  - pretty tests: give --date/format tests a better description
>  - pretty tests: simplify %aI/%cI date format test
>  (this branch is used by zh/pretty-date-human.)
>
>  Tweak a few tests for "log --format=..." that show timestamps in
>  various formats.
>
>  Will merge to 'next'.

Thanks. Good to know not all my "I read this series and here's some
small patches ..." are a distraction :)

> * ls/subtree (2021-04-28) 30 commits
>  - subtree: be stricter about validating flags
>  - subtree: push: allow specifying a local rev other than HEAD
>  - subtree: allow 'split' flags to be passed to 'push'
>  - subtree: allow --squash to be used with --rejoin
>  - subtree: give the docs a once-over
>  - subtree: have $indent actually affect indentation
>  - subtree: don't let debug and progress output clash
>  - subtree: add comments and sanity checks
>  - subtree: remove duplicate check
>  - subtree: parse revs in individual cmd_ functions
>  - subtree: use "^{commit}" instead of "^0"
>  - subtree: don't fuss with PATH
>  - subtree: use "$*" instead of "$@" as appropriate
>  - subtree: use more explicit variable names for cmdline args
>  - subtree: use git-sh-setup's `say`
>  - subtree: use `git merge-base --is-ancestor`
>  - subtree: drop support for git < 1.7
>  - subtree: more consistent error propagation
>  - subtree: don't have loose code outside of a function
>  - subtree: t7900: add porcelain tests for 'pull' and 'push'
>  - subtree: t7900: add a test for the -h flag
>  - subtree: t7900: rename last_commit_message to last_commit_subject
>  - subtree: t7900: fix 'verify one file change per commit'
>  - subtree: t7900: delete some dead code
>  - subtree: t7900: use 'test' for string equality
>  - subtree: t7900: comment subtree_test_create_repo
>  - subtree: t7900: use consistent formatting
>  - subtree: t7900: use test-lib.sh's test_count
>  - subtree: t7900: update for having the default branch name be 'main'
>  - .gitignore: ignore 'git-subtree' as a build artifact
>
>  "git subtree" updates.
>
>  Will merge to 'next'?
>  Unless somebody familiar with subtree speaks up soon and causes a
>  reroll.

I had some nit-y comments on it, I more skimmed it than did a full revie
on it, but overall it looks good / reasonable to me.

> * zh/pretty-date-human (2021-04-27) 1 commit
>  - pretty: provide human date format
>  (this branch uses ab/pretty-date-format-tests.)
>
>  "git log --format=..." placeholders learned %ah/%ch placeholders to
>  request the --date=human output.
>
>  Will merge to 'next'?

Looks good to me.

> * ab/describe-tests-fix (2021-04-29) 5 commits
>  - describe tests: support -C in "check_describe"
>  - describe tests: fix nested "test_expect_success" call
>  - describe tests: don't rely on err.actual from "check_describe"
>  - describe tests: refactor away from glob matching
>  - describe tests: improve test for --work-tree & --dirty
>  (this branch uses ab/test-lib-updates.)
>
>  Various updates to tests around "git describe"
>
>
> * ab/pickaxe-pcre2 (2021-04-29) 22 commits
>  - xdiff-interface: replace discard_hunk_line() with a flag
>  - xdiff users: use designated initializers for out_line
>  - pickaxe -G: don't special-case create/delete
>  - pickaxe -G: terminate early on matching lines
>  - xdiff-interface: allow early return from xdiff_emit_line_fn
>  - xdiff-interface: prepare for allowing early return
>  - pickaxe -S: slightly optimize contains()
>  - pickaxe: rename variables in has_changes() for brevity
>  - pickaxe -S: support content with NULs under --pickaxe-regex
>  - pickaxe: assert that we must have a needle under -G or -S
>  - pickaxe: refactor function selection in diffcore-pickaxe()
>  - perf: add performance test for pickaxe
>  - pickaxe/style: consolidate declarations and assignments
>  - diff.h: move pickaxe fields together again
>  - pickaxe: die when --find-object and --pickaxe-all are combined
>  - pickaxe: die when -G and --pickaxe-regex are combined
>  - pickaxe tests: add missing test for --no-pickaxe-regex being an error
>  - pickaxe tests: test for -G, -S and --find-object incompatibility
>  - pickaxe tests: add test for "log -S" not being a regex
>  - pickaxe tests: add test for diffgrep_consume() internals
>  - pickaxe tests: refactor to use test_commit --append --printf
>  - grep/pcre2 tests: reword comments referring to kwset
>  (this branch uses ab/test-lib-updates.)
>
>  Rewrite the backend for "diff -G/-S" to use pcre2 engine when
>  available.

Hopefully the ab/test-lib-updates moving forward will un-stall these
(comment on that below...).

> * ps/config-env-option-with-separate-value (2021-04-19) 2 commits
>  - git: support separate arg for `--config-env`'s value
>  - git.txt: fix synopsis of `--config-env` missing the equals sign
>
>  "git --config-env var=val cmd" weren't accepted (only
>  --config-env=var=val was).
>
>  Will merge to 'next'.
>  possibly with minimum fix-up?
>  cf. <YIKcZxEDsG7qsE4G@coredump.intra.peff.net>

I also looked this over, LGTM.

> * ab/fsck-unexpected-type (2021-04-13) 6 commits
>  - fsck: report invalid object type-path combinations
>  - fsck: report invalid types recorded in objects
>  - object-store.h: move read_loose_object() below 'struct object_info'
>  - fsck: don't hard die on invalid object types
>  - fsck tests: refactor one test to use a sub-repo
>  - cache.h: move object functions to object-store.h
>
>  "git fsck" has been taught to report mismatch between expected and
>  actual types of an object better.
>
>  Expecting a reroll.

Have a local version of this partially re-done for a re-roll...

> * ab/doc-lint (2021-04-10) 7 commits
>  - docs: fix linting issues due to incorrect relative section order
>  - doc lint: lint relative section order
>  - doc lint: lint and fix missing "GIT" end sections
>  - doc lint: fix bugs in, simplify and improve lint script
>  - doc lint: Perl "strict" and "warnings" in lint-gitlink.perl
>  - Documentation/Makefile: make doc.dep dependencies a variable again
>  - Documentation/Makefile: make $(wildcard howto/*.txt) a var
>
>  Dev support.
>
>  Will merge to 'next'.

Thanks, I have some other doc improvements waiting on this.

> * ab/rebase-no-reschedule-failed-exec (2021-04-10) 2 commits
>  - rebase: don't override --no-reschedule-failed-exec with config
>  - rebase tests: camel-case rebase.rescheduleFailedExec consistently
>
>  "git rebase --[no-]reschedule-failed-exec" did not work well with
>  its configuration variable, which has been corrected.
>
>  Will merge to 'next'.

Thanks.

> * bc/hash-transition-interop-part-1 (2021-04-27) 13 commits
>  - hex: print objects using the hash algorithm member
>  - hex: default to the_hash_algo on zero algorithm value
>  - builtin/pack-objects: avoid using struct object_id for pack hash
>  - commit-graph: don't store file hashes as struct object_id
>  - builtin/show-index: set the algorithm for object IDs
>  - hash: provide per-algorithm null OIDs
>  - hash: set, copy, and use algo field in struct object_id
>  - builtin/pack-redundant: avoid casting buffers to struct object_id
>  - Use the final_oid_fn to finalize hashing of object IDs
>  - hash: add a function to finalize object IDs
>  - http-push: set algorithm when reading object ID
>  - Always use oidread to read into struct object_id
>  - hash: add an algo member to struct object_id
>
>  SHA-256 transition.
>
>  Will merge to 'next'?

This looks good to me. An earier version had some hash-object.c changes
that conflicted with a series of mine, that's now no longer there. I
still need to get back to seeing what (if anything) I need to do to
follow-up on that alternate way of specifying the hash version via an
argument to "git", or if brian was going to tackle it...


> * ab/svn-tests-set-e-fix (2021-04-12) 2 commits
>  - svn tests: refactor away a "set -e" in test body
>  - svn tests: remove legacy re-setup from init-clone test
>
>  Test clean-up.
>
>  Will merge to 'next'.

Thanks.

> * ab/test-lib-updates (2021-04-29) 11 commits
>  - test-lib: split up and deprecate test_create_repo()
>  - test-lib: do not show advice about init.defaultBranch under --verbose
>  - test-lib: reformat argument list in test_create_repo()
>  - submodule tests: use symbolic-ref --short to discover branch name
>  - test-lib functions: add --printf option to test_commit
>  - describe tests: convert setup to use test_commit
>  - test-lib functions: add an --annotated option to "test_commit"
>  - test-lib-functions: document test_commit --no-tag
>  - test-lib-functions: reword "test_commit --append" docs
>  - test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable
>  - test-lib: bring $remove_trash out of retirement
>  (this branch is used by ab/describe-tests-fix and ab/pickaxe-pcre2.)
>
>  Test clean-up.
>
>  Waiting for an Ack before merging them to 'next'.

Is the ack a reply to
https://lore.kernel.org/git/xmqqo8dx7dv4.fsf@gitster.g/ (or here, I
suppose)?. Sorry about the in-flight hassle.

But yes, I think from the reviews etc. this is ready for "next" at this
point.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-04-30  9:34 ` Ævar Arnfjörð Bjarmason
@ 2021-05-02  6:47   ` Junio C Hamano
  2021-05-06  4:29     ` Junio C Hamano
  2021-05-03  2:38   ` Junio C Hamano
  1 sibling, 1 reply; 9+ messages in thread
From: Junio C Hamano @ 2021-05-02  6:47 UTC (permalink / raw)
  To: Ævar Arnfjörð Bjarmason; +Cc: git, brian m. carlson

Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:

>> * ab/test-lib-updates (2021-04-29) 11 commits
>>  - test-lib: split up and deprecate test_create_repo()
>>  - test-lib: do not show advice about init.defaultBranch under --verbose
>>  - test-lib: reformat argument list in test_create_repo()
>>  - submodule tests: use symbolic-ref --short to discover branch name
>>  - test-lib functions: add --printf option to test_commit
>>  - describe tests: convert setup to use test_commit
>>  - test-lib functions: add an --annotated option to "test_commit"
>>  - test-lib-functions: document test_commit --no-tag
>>  - test-lib-functions: reword "test_commit --append" docs
>>  - test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable
>>  - test-lib: bring $remove_trash out of retirement
>>  (this branch is used by ab/describe-tests-fix and ab/pickaxe-pcre2.)
>>
>>  Test clean-up.
>>
>>  Waiting for an Ack before merging them to 'next'.
>
> Is the ack a reply to
> https://lore.kernel.org/git/xmqqo8dx7dv4.fsf@gitster.g/ (or here, I
> suppose)?. Sorry about the in-flight hassle.

No, what I meant was that v4 had review comments and v5 was done in
response to that, so I wanted to make sure that reviewers are happy
with the delta between v4 and v5 before taking v5 and declaring it
good just by myself.


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-04-29  9:15 What's cooking in git.git (Apr 2021, #06; Thu, 29) Junio C Hamano
  2021-04-30  9:34 ` Ævar Arnfjörð Bjarmason
@ 2021-05-02 12:00 ` ZheNing Hu
  2021-05-03  1:46   ` Junio C Hamano
  1 sibling, 1 reply; 9+ messages in thread
From: ZheNing Hu @ 2021-05-02 12:00 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Git List

Hi, Junio,

> * zh/pretty-date-human (2021-04-27) 1 commit
>  - pretty: provide human date format
>  (this branch uses ab/pretty-date-format-tests.)
>
>  "git log --format=..." placeholders learned %ah/%ch placeholders to
>  request the --date=human output.
>
>  Will merge to 'next'?
>

Here is a small typo error, I forget a small blank, which was pointed
out by Josh
Soref in https://github.com/gitgitgadget/git/pull/939

- '%ch':: committer date, human style(like the `--date=human` option of
+ '%ch':: committer date, human style (like the `--date=human` option of


> --------------------------------------------------
> [Stalled]
>
> * jh/rfc-builtin-fsmonitor (2021-04-08) 23 commits
>  - t7527: test status with untracked-cache and fsmonitor--daemon
>  - p7519: add fsmonitor--daemon
>  - t7527: create test for fsmonitor--daemon
>  - fsmonitor: force update index when fsmonitor token advances
>  - fsmonitor--daemon: use a cookie file to sync with file system
>  - fsmonitor--daemon:: introduce client delay for testing
>  - fsmonitor--daemon: periodically truncate list of modified files
>  - fsmonitor--daemon: implement handle_client callback
>  - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
>  - fsmonitor-fs-listen-macos: add macos header files for FSEvent
>  - fsmonitor-fs-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 daemon command options
>  - fsmonitor-fs-listen-macos: stub in backend for MacOS
>  - fsmonitor-fs-listen-win32: stub in backend for Windows
>  - fsmonitor--daemon: implement client command options
>  - fsmonitor--daemon: add a built-in fsmonitor daemon
>  - fsmonitor: introduce `core.useBuiltinFSMonitor` to call the daemon via IPC
>  - config: FSMonitor is repository-specific
>  - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
>  - Merge branch 'jh/simple-ipc' into jh/rfc-builtin-fsmonitor
>
>  An attempt to write and ship with a watchman equivalent tailored
>  for our use.
>
>
> * ag/merge-strategies-in-c (2021-03-17) 15 commits
>  - sequencer: use the "octopus" merge strategy without forking
>  - sequencer: use the "resolve" strategy without forking
>  - merge: use the "octopus" strategy without forking
>  - merge: use the "resolve" strategy without forking
>  - merge-octopus: rewrite in C
>  - merge-recursive: move better_branch_name() to merge.c
>  - merge-resolve: rewrite in C
>  - merge-one-file: rewrite in C
>  - update-index: move add_cacheinfo() to read-cache.c
>  - merge-index: add a new way to invoke `git-merge-one-file'
>  - merge-index: drop the index
>  - merge-index: libify merge_one_path() and merge_all()
>  - t6060: add tests for removed files
>  - t6060: modify multiple files to expose a possible issue with merge-index
>  - t6407: modernise tests
>
>  The resolve and octopus merge strategy backends have been rewritten
>  in C.
>
>  Expecting a (hopefully final) reroll.
>  cf. <nycvar.QRO.7.76.6.2103241142220.50@tvgsbejvaqbjf.bet>
>
>
> * ab/describe-tests-fix (2021-04-29) 5 commits
>  - describe tests: support -C in "check_describe"
>  - describe tests: fix nested "test_expect_success" call
>  - describe tests: don't rely on err.actual from "check_describe"
>  - describe tests: refactor away from glob matching
>  - describe tests: improve test for --work-tree & --dirty
>  (this branch uses ab/test-lib-updates.)
>
>  Various updates to tests around "git describe"
>
>
> * ab/pickaxe-pcre2 (2021-04-29) 22 commits
>  - xdiff-interface: replace discard_hunk_line() with a flag
>  - xdiff users: use designated initializers for out_line
>  - pickaxe -G: don't special-case create/delete
>  - pickaxe -G: terminate early on matching lines
>  - xdiff-interface: allow early return from xdiff_emit_line_fn
>  - xdiff-interface: prepare for allowing early return
>  - pickaxe -S: slightly optimize contains()
>  - pickaxe: rename variables in has_changes() for brevity
>  - pickaxe -S: support content with NULs under --pickaxe-regex
>  - pickaxe: assert that we must have a needle under -G or -S
>  - pickaxe: refactor function selection in diffcore-pickaxe()
>  - perf: add performance test for pickaxe
>  - pickaxe/style: consolidate declarations and assignments
>  - diff.h: move pickaxe fields together again
>  - pickaxe: die when --find-object and --pickaxe-all are combined
>  - pickaxe: die when -G and --pickaxe-regex are combined
>  - pickaxe tests: add missing test for --no-pickaxe-regex being an error
>  - pickaxe tests: test for -G, -S and --find-object incompatibility
>  - pickaxe tests: add test for "log -S" not being a regex
>  - pickaxe tests: add test for diffgrep_consume() internals
>  - pickaxe tests: refactor to use test_commit --append --printf
>  - grep/pcre2 tests: reword comments referring to kwset
>  (this branch uses ab/test-lib-updates.)
>
>  Rewrite the backend for "diff -G/-S" to use pcre2 engine when
>  available.
>
>
> * es/config-hooks (2021-03-10) 36 commits
>  . run-command: stop thinking about hooks
>  . git-send-email: use 'git hook run' for 'sendemail-validate'
>  . bugreport: use hook_exists instead of find_hook
>  . receive-pack: convert receive hooks to hook.h
>  . post-update: use hook.h library
>  . proc-receive: acquire hook list from hook.h
>  . receive-pack: convert 'update' hook to hook.h
>  . reference-transaction: look for hooks in config
>  . transport: convert pre-push hook to use config
>  . hook: convert 'post-rewrite' hook to config
>  . hooks: convert 'post-checkout' hook to hook library
>  . git-p4: use 'git hook' to run hooks
>  . receive-pack: convert push-to-checkout hook to hook.h
>  . read-cache: convert post-index-change hook to use config
>  . rebase: teach pre-rebase to use hook.h
>  . gc: use hook library for pre-auto-gc hook
>  . merge: use config-based hooks for post-merge hook
>  . am: convert applypatch hooks to use config
>  . commit: use config-based hooks
>  . hooks: allow callers to capture output
>  . run-command: allow capturing of collated output
>  . hook: provide stdin by string_list or callback
>  . run-command: add stdin callback for parallelization
>  . hook: allow specifying working directory for hooks
>  . hook: allow parallel hook execution
>  . run-command: allow stdin for run_processes_parallel
>  . hook: support passing stdin to hooks
>  . hook: introduce hook_exists()
>  . hook: add 'run' subcommand
>  . parse-options: parse into strvec
>  . hook: implement hookcmd.<name>.skip
>  . hook: teach hook.runHookDir
>  . hook: include hookdir hook in list
>  . hook: add list command
>  . hook: scaffolding for git-hook subcommand
>  . doc: propose hooks managed by the config
>
>  The "hooks defined in config" topic.
>
> --------------------------------------------------
> [Cooking]
>
> * dl/complete-stash (2021-03-24) 3 commits
>   (merged to 'next' on 2021-03-24 at ce573a99cc)
>  + git-completion.bash: use __gitcomp_builtin() in _git_stash()
>  + git-completion.bash: extract from else in _git_stash()
>  + git-completion.bash: pass $__git_subcommand_idx from __git_main()
>  (this branch is used by dl/complete-stash-updates.)
>
>  The command line completion (in contrib/) for "git stash" has been
>  updated.
>
>  Wait until dl/complete-stash-updates matures.
>
>
> * ba/object-info (2021-04-20) 1 commit
>  - object-info: support for retrieving object info
>
>  Over-the-wire protocol learns a new request type to ask for object
>  sizes given a list of object names.
>
>
> * zh/format-ref-array-optim (2021-04-20) 2 commits
>  - ref-filter: reuse output buffer
>  - ref-filter: get rid of show_ref_array_item
>
>  "git (branch|tag) --format=..." has been micro-optimized.
>
>  Will merge to 'next'?
>
>
> * vs/completion-with-set-u (2021-04-16) 1 commit
>   (merged to 'next' on 2021-04-20 at 179933f961)
>  + completion: avoid aliased command lookup error in nounset mode
>
>  Effort to make the command line completion (in contrib/) safe with
>  "set -u" continues.
>
>  Will merge to 'master'.
>
>
> * hn/prep-tests-for-reftable (2021-04-28) 21 commits
>  - t1415: set REFFILES for test specific to storage format
>  - t4202: mark bogus head hash test with REFFILES
>  - t7003: check reflog existence only for REFFILES
>  - t7900: mark pack-refs tests as REFFILES
>  - t1404: mark tests that muck with .git directly as REFFILES.
>  - t2017: mark --orphan/logAllRefUpdates=false test as REFFILES
>  - t1414: mark corruption test with REFFILES
>  - t1407: require REFFILES for for_each_reflog test
>  - test-lib: provide test prereq REFFILES
>  - t5304: use "reflog expire --all" to clear the reflog
>  - t5304: restyle: trim empty lines, drop ':' before >
>  - t7003: use rev-parse rather than FS inspection
>  - t5000: inspect HEAD using git-rev-parse
>  - t5000: reformat indentation to the latest fashion
>  - t1301: fix typo in error message
>  - t1413: use tar to save and restore entire .git directory
>  - t1401-symbolic-ref: avoid direct filesystem access
>  - t5601: read HEAD using rev-parse
>  - t9300: check ref existence using test-helper rather than a file system check
>  - t/helper/ref-store: initialize oid in resolve-ref
>  - t4202: split testcase for invalid HEAD symref and HEAD hash
>
>  Preliminary clean-up of tests before the main reftable changes
>  hits the codebase.
>
>
> * ps/config-env-option-with-separate-value (2021-04-19) 2 commits
>  - git: support separate arg for `--config-env`'s value
>  - git.txt: fix synopsis of `--config-env` missing the equals sign
>
>  "git --config-env var=val cmd" weren't accepted (only
>  --config-env=var=val was).
>
>  Will merge to 'next'.
>  possibly with minimum fix-up?
>  cf. <YIKcZxEDsG7qsE4G@coredump.intra.peff.net>
>
>
> * ab/fsck-unexpected-type (2021-04-13) 6 commits
>  - fsck: report invalid object type-path combinations
>  - fsck: report invalid types recorded in objects
>  - object-store.h: move read_loose_object() below 'struct object_info'
>  - fsck: don't hard die on invalid object types
>  - fsck tests: refactor one test to use a sub-repo
>  - cache.h: move object functions to object-store.h
>
>  "git fsck" has been taught to report mismatch between expected and
>  actual types of an object better.
>
>  Expecting a reroll.
>
>
> * 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.)
>
>  Handling of "promisor packs" that allows certain objects to be
>  missing and lazily retrievable has been optimized (a bit).
>
>  Will merge to 'master'.
>
>
> * 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
>
>  "git log" learned "--diff-merges=<style>" option, with an
>  associated configuration variable log.diffMerges.
>
>  Will merge to 'master'.
>
>
> * rs/repack-without-loosening-promised-objects (2021-04-28) 1 commit
>  - repack: avoid loosening promisor objects in partial clones
>  (this branch uses jk/promisor-optim.)
>
>  "git repack -A -d" in a partial clone unnecessarily loosened
>  objects in promisor pack.
>
>
> * 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 packet_write() fails, we gave an extra error message
>  unnecessarily, which has been corrected.
>
>  Will merge to 'master'.
>
>
> * 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
>
>  "git push --quiet --set-upstream" was not quiet when setting the
>  upstream branch configuration, which has been corrected.
>
>  Will merge to 'master'.
>
>
> * jt/push-negotiation (2021-04-08) 6 commits
>  - send-pack: support push negotiation
>  - fetch: teach independent negotiation (no packfile)
>  - fetch-pack: refactor command and capability write
>  - fetch-pack: refactor add_haves()
>  - fetch-pack: refactor process_acks()
>  - Merge branch 'jt/fetch-pack-request-fix' into jt/push-negotiation
>
>  "git push" learns to discover common ancestor with the receiving
>  end over protocol v2.
>
>
> * ab/doc-lint (2021-04-10) 7 commits
>  - docs: fix linting issues due to incorrect relative section order
>  - doc lint: lint relative section order
>  - doc lint: lint and fix missing "GIT" end sections
>  - doc lint: fix bugs in, simplify and improve lint script
>  - doc lint: Perl "strict" and "warnings" in lint-gitlink.perl
>  - Documentation/Makefile: make doc.dep dependencies a variable again
>  - Documentation/Makefile: make $(wildcard howto/*.txt) a var
>
>  Dev support.
>
>  Will merge to 'next'.
>
>
> * ab/rebase-no-reschedule-failed-exec (2021-04-10) 2 commits
>  - rebase: don't override --no-reschedule-failed-exec with config
>  - rebase tests: camel-case rebase.rescheduleFailedExec consistently
>
>  "git rebase --[no-]reschedule-failed-exec" did not work well with
>  its configuration variable, which has been corrected.
>
>  Will merge to 'next'.
>
>
> * ah/plugleaks (2021-04-28) 12 commits
>  - builtin/rm: avoid leaking pathspec and seen
>  - builtin/rebase: release git_format_patch_opt too
>  - builtin/for-each-ref: free filter and UNLEAK sorting.
>  - mailinfo: also free strbuf lists when clearing mailinfo
>  - builtin/checkout: clear pending objects after diffing
>  - builtin/check-ignore: clear_pathspec before returning
>  - builtin/bugreport: don't leak prefixed filename
>  - branch: FREE_AND_NULL instead of NULL'ing real_ref
>  - bloom: clear each bloom_key after use
>  - ls-files: free max_prefix when done
>  - wt-status: fix multiple small leaks
>  - revision: free remainder of old commit list in limit_list
>
>  Plug various leans reported by LSAN.
>
>  Will merge to 'next'?
>
>
> * bc/hash-transition-interop-part-1 (2021-04-27) 13 commits
>  - hex: print objects using the hash algorithm member
>  - hex: default to the_hash_algo on zero algorithm value
>  - builtin/pack-objects: avoid using struct object_id for pack hash
>  - commit-graph: don't store file hashes as struct object_id
>  - builtin/show-index: set the algorithm for object IDs
>  - hash: provide per-algorithm null OIDs
>  - hash: set, copy, and use algo field in struct object_id
>  - builtin/pack-redundant: avoid casting buffers to struct object_id
>  - Use the final_oid_fn to finalize hashing of object IDs
>  - hash: add a function to finalize object IDs
>  - http-push: set algorithm when reading object ID
>  - Always use oidread to read into struct object_id
>  - hash: add an algo member to struct object_id
>
>  SHA-256 transition.
>
>  Will merge to 'next'?
>
>
> * ps/rev-list-object-type-filter (2021-04-19) 8 commits
>  - rev-list: allow filtering of provided items
>  - pack-bitmap: implement combined filter
>  - pack-bitmap: implement object type filter
>  - list-objects: implement object type filter
>  - list-objects: support filtering by tag and commit
>  - list-objects: move tag processing into its own function
>  - revision: mark commit parents as NOT_USER_GIVEN
>  - uploadpack.txt: document implication of `uploadpackfilter.allow`
>
>  "git rev-list" learns the "--filter=object:type=<type>" option,
>  which can be used to exclude objects of the given kind from the
>  packfile generated by pack-objects.
>
>  Will merge to 'next'.
>  cf. <YIKPwRFbgzKJ1EBg@coredump.intra.peff.net>
>
>
> * tb/multi-pack-bitmaps (2021-04-10) 23 commits
>  - p5326: perf tests for MIDX bitmaps
>  - p5310: extract full and partial bitmap tests
>  - midx: respect 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'
>  - t7700: update to work with MIDX bitmap test knob
>  - t5319: don't write MIDX bitmaps in t5319
>  - t5310: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP
>  - t5326: test multi-pack bitmap behavior
>  - t/helper/test-read-midx.c: add --checksum mode
>  - t5310: move some tests to lib-bitmap.sh
>  - pack-bitmap: write multi-pack bitmaps
>  - pack-bitmap: read multi-pack bitmaps
>  - pack-bitmap.c: introduce 'bitmap_is_preferred_refname()'
>  - pack-bitmap.c: introduce 'nth_bitmap_object_oid()'
>  - pack-bitmap.c: introduce 'bitmap_num_objects()'
>  - midx: respect 'core.multiPackIndex' when writing
>  - midx: clear auxiliary .rev after replacing the MIDX
>  - midx: make a number of functions non-static
>  - Documentation: describe MIDX-based bitmaps
>  - Documentation: build 'technical/bitmap-format' by default
>  - pack-bitmap-write.c: free existing bitmaps
>  - pack-bitmap-write.c: gracefully fail to write non-closed bitmaps
>  - pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps
>  - Merge branch 'tb/pack-preferred-tips-to-give-bitmap' into tb/multi-pack-bitmaps
>
>  The reachability bitmap file used to be generated only for a single
>  pack, but now we've learned to generate bitmaps for history that
>  span across multiple packfiles.
>
>  Waiting for reviews.
>  cf. <cover.1617991824.git.me@ttaylorr.com>
>
>
> * ab/svn-tests-set-e-fix (2021-04-12) 2 commits
>  - svn tests: refactor away a "set -e" in test body
>  - svn tests: remove legacy re-setup from init-clone test
>
>  Test clean-up.
>
>  Will merge to 'next'.
>
>
> * ab/test-lib-updates (2021-04-29) 11 commits
>  - test-lib: split up and deprecate test_create_repo()
>  - test-lib: do not show advice about init.defaultBranch under --verbose
>  - test-lib: reformat argument list in test_create_repo()
>  - submodule tests: use symbolic-ref --short to discover branch name
>  - test-lib functions: add --printf option to test_commit
>  - describe tests: convert setup to use test_commit
>  - test-lib functions: add an --annotated option to "test_commit"
>  - test-lib-functions: document test_commit --no-tag
>  - test-lib-functions: reword "test_commit --append" docs
>  - test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable
>  - test-lib: bring $remove_trash out of retirement
>  (this branch is used by ab/describe-tests-fix and ab/pickaxe-pcre2.)
>
>  Test clean-up.
>
>  Waiting for an Ack before merging them to 'next'.
>
>
> * ao/p4-avoid-decoding (2021-04-12) 2 commits
>  - git-p4: do not decode data from perforce by default
>  - git-p4: avoid decoding more data from perforce
>
>  "git p4" in Python-2 days used to accept a lot more kinds of data
>  from Perforce server as uninterrupted byte sequence, but after
>  switching to Python-3, too many things are expected to be in UTF-8,
>  which broke traditional use cases.
>
>  Waiting for reviews.
>
>
> * 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
>
>  Show errno in the trace output in the error codepath that calls
>  read_raw_ref method.
>
>  Will merge to 'master'
>
>
> * ma/t0091-bugreport-fix (2021-04-12) 1 commit
>  - t0091-bugreport.sh: actually verify some content of report
>
>  Test fix.
>
>  Expecting a reroll.
>  cf. <YHYZTLl90rkWWVOr@google.com>, <87a6q22dei.fsf@evledraar.gmail.com>
>
>
> * ps/config-global-override (2021-04-27) 4 commits
>  - t1300: fix unset of GIT_CONFIG_NOSYSTEM leaking into subsequent tests
>   (merged to 'next' on 2021-04-20 at 82578c696d)
>  + config: allow overriding of global and system configuration
>  + config: unify code paths to get global config paths
>  + config: rename `git_etc_config()`
>
>  Replace GIT_CONFIG_NOSYSTEM mechanism to decline from reading the
>  system-wide configuration file with GIT_CONFIG_SYSTEM that lets
>  users specify from which file to read the system-wide configuration
>  (setting it to an empty file would essentially be the same as
>  setting NOSYSTEM), and introduce GIT_CONFIG_GLOBAL to override the
>  per-user configuration in $HOME/.gitconfig.
>
>  Will merge to 'next'.
>
>
> * 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.
>
>  Will merge to 'master'.
>
>
> * mr/bisect-in-c-4 (2021-04-11) 4 commits
>  - bisect--helper: retire `--bisect-next-check` subcommand
>  - bisect--helper: reimplement `bisect_run` shell function in C
>  - bisect--helper: reimplement `bisect_visualize()`shell function in C
>  - run-command: make `exists_in_PATH()` non-static
>
>  The codepaths involved in running "git bisect visualize" and "git
>  bisect run" has been rewritten in C.
>
>  Expecting a reroll.
>  cf. <xmqq35vwh8qk.fsf@gitster.g>, <xmqqy2doftrj.fsf@gitster.g>
>  May want to boost the test coverage.
>
>
> * mt/add-rm-in-sparse-checkout (2021-04-08) 7 commits
>  - rm: honor sparse checkout patterns
>  - add: warn when asked to update SKIP_WORKTREE entries
>  - refresh_index(): add flag to ignore SKIP_WORKTREE entries
>  - pathspec: allow to ignore SKIP_WORKTREE entries on index matching
>  - add: make --chmod and --renormalize honor sparse checkouts
>  - t3705: add tests for `git add` in sparse checkouts
>  - add: include magic part of pathspec on --refresh error
>  (this branch is used by ds/status-with-sparse-index.)
>
>  "git add" and "git rm" learned not to touch those paths that are
>  outside of sparse checkout.
>
>  Will merge to 'next'.
>
>
> * zh/trailer-cmd (2021-04-17) 2 commits
>  - trailer: add new .cmd config option
>  - docs: correct description of .command
>
>  The way the command line specified by the trailer.<token>.command
>  configuration variable receives the end-user supplied value was
>  both error prone and misleading.  An alternative to achieve the
>  same goal in a safer and more intuitive way has been added, as
>  the trailer.<token>.cmd configuration variable, to replace it.
>
>  Expecting a reroll, after waiting for "commit --trailer" to stabilize.
>

I have a little doubt here. Do I need to modify the "Commit-Count"
example in the docs immediately? I thought this should be left to
the next step?

If necessary, I will make changes immediately.

>
> * 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.)
>
>  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.
>
>  On hold, waiting for the "protections" topic to stablize.
>
>
> * 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.)
>
>  The checkout machinery has been taught to perform the actual
>  write-out of the files in parallel when able.
>
>  Will merge to 'master'.
>
>
> * 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.)
>
>  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.
>
>  Will merge to 'master'.
>
>
> * hn/reftable (2021-04-20) 28 commits
>  - t1404: annotate test cases with REFFILES
>  - t1401,t2011: parameterize HEAD.lock for REFTABLE
>  - t1301: document what needs to be done for REFTABLE
>  - Add "test-tool dump-reftable" command.
>  - git-prompt: prepare for reftable refs backend
>  - Reftable support for git-core
>  - reftable: add dump utility
>  - reftable: implement stack, a mutable database of reftable files.
>  - reftable: implement refname validation
>  - reftable: add merged table view
>  - reftable: add a heap-based priority queue for reftable records
>  - reftable: reftable file level tests
>  - reftable: read reftable files
>  - reftable: generic interface to tables
>  - reftable: write reftable files
>  - reftable: a generic binary tree implementation
>  - reftable: reading/writing blocks
>  - Provide zlib's uncompress2 from compat/zlib-compat.c
>  - reftable: (de)serialization for the polymorphic record type.
>  - reftable: add blocksource, an abstraction for random access reads
>  - reftable: utility functions
>  - reftable: add error related functionality
>  - reftable: add LICENSE
>  - init-db: set the_repository->hash_algo early on
>  - hash.h: provide constants for the hash IDs
>  - refs/debug: trace into reflog expiry too
>  - refs: document reflog_expire_fn's flag argument
>  - refs: ref_iterator_peel returns boolean, rather than peel_status
>
>  The "reftable" backend for the refs API.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-05-02 12:00 ` ZheNing Hu
@ 2021-05-03  1:46   ` Junio C Hamano
  2021-05-03 13:35     ` ZheNing Hu
  0 siblings, 1 reply; 9+ messages in thread
From: Junio C Hamano @ 2021-05-03  1:46 UTC (permalink / raw)
  To: ZheNing Hu; +Cc: Git List

ZheNing Hu <adlternative@gmail.com> writes:

>> * zh/pretty-date-human (2021-04-27) 1 commit
>>  - pretty: provide human date format
>>  (this branch uses ab/pretty-date-format-tests.)
>>
>>  "git log --format=..." placeholders learned %ah/%ch placeholders to
>>  request the --date=human output.
>>
>>  Will merge to 'next'?
>>
>
> Here is a small typo error, I forget a small blank, which was pointed
> out by Josh
> Soref in https://github.com/gitgitgadget/git/pull/939
>
> - '%ch':: committer date, human style(like the `--date=human` option of
> + '%ch':: committer date, human style (like the `--date=human` option of

Please update it with an incremental patch as the topic has been
merged to 'next' a few days ago already.

Also plase trim your quotes to exclude description of topics that
you are not commenting on.

>> * zh/trailer-cmd (2021-04-17) 2 commits
>>  - trailer: add new .cmd config option
>>  - docs: correct description of .command
>>
>>  The way the command line specified by the trailer.<token>.command
>>  configuration variable receives the end-user supplied value was
>>  both error prone and misleading.  An alternative to achieve the
>>  same goal in a safer and more intuitive way has been added, as
>>  the trailer.<token>.cmd configuration variable, to replace it.
>>
>>  Expecting a reroll, after waiting for "commit --trailer" to stabilize.
>>
>
> I have a little doubt here. Do I need to modify the "Commit-Count"
> example in the docs immediately? I thought this should be left to
> the next step?
>
> If necessary, I will make changes immediately.

We've done the "after waiting" part already, so I should have
updated the topic summary for this one.

I just re-read the second patch and the count example that leaves an
empty "commit-count:" does look strange.  We probably want to update
it before the topic hits 'next'.  While at it, you might want to add
the "Helped-by: " example we discussed.

The phrase "global script" looks strange---just call it "script"
would be much easier to understand, as things that are in ~/bin do
not sound "global" to everybody (it is effective across
repositories, so is a bit wider than per-repository, but it is of
course not visible to other users).

Thanks.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-04-30  9:34 ` Ævar Arnfjörð Bjarmason
  2021-05-02  6:47   ` Junio C Hamano
@ 2021-05-03  2:38   ` Junio C Hamano
  1 sibling, 0 replies; 9+ messages in thread
From: Junio C Hamano @ 2021-05-03  2:38 UTC (permalink / raw)
  To: Ævar Arnfjörð Bjarmason; +Cc: git, brian m. carlson

Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:

>> * ab/pretty-date-format-tests (2021-04-27) 2 commits
>>  - pretty tests: give --date/format tests a better description
>>  - pretty tests: simplify %aI/%cI date format test
>>  (this branch is used by zh/pretty-date-human.)
>>
>>  Tweak a few tests for "log --format=..." that show timestamps in
>>  various formats.
>>
>>  Will merge to 'next'.
>
> Thanks. Good to know not all my "I read this series and here's some
> small patches ..." are a distraction :)

It largely depends.  This time the other contributor helped by
deciding to work with this topic, but that does not necessarily
happen all the time.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-05-03  1:46   ` Junio C Hamano
@ 2021-05-03 13:35     ` ZheNing Hu
  0 siblings, 0 replies; 9+ messages in thread
From: ZheNing Hu @ 2021-05-03 13:35 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Git List

> > Here is a small typo error, I forget a small blank, which was pointed
> > out by Josh
> > Soref in https://github.com/gitgitgadget/git/pull/939
> >
> > - '%ch':: committer date, human style(like the `--date=human` option of
> > + '%ch':: committer date, human style (like the `--date=human` option of
>
> Please update it with an incremental patch as the topic has been
> merged to 'next' a few days ago already.
>

OK, I will resubmit it.

> > I have a little doubt here. Do I need to modify the "Commit-Count"
> > example in the docs immediately? I thought this should be left to
> > the next step?
> >
> > If necessary, I will make changes immediately.
>
> We've done the "after waiting" part already, so I should have
> updated the topic summary for this one.
>
> I just re-read the second patch and the count example that leaves an
> empty "commit-count:" does look strange.  We probably want to update
> it before the topic hits 'next'.  While at it, you might want to add
> the "Helped-by: " example we discussed.
>
> The phrase "global script" looks strange---just call it "script"
> would be much easier to understand, as things that are in ~/bin do
> not sound "global" to everybody (it is effective across
> repositories, so is a bit wider than per-repository, but it is of
> course not visible to other users).
>
> Thanks.

I know what I should do now.

Thanks.
--
ZheNing Hu

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-05-02  6:47   ` Junio C Hamano
@ 2021-05-06  4:29     ` Junio C Hamano
  2021-05-06 15:36       ` Ævar Arnfjörð Bjarmason
  0 siblings, 1 reply; 9+ messages in thread
From: Junio C Hamano @ 2021-05-06  4:29 UTC (permalink / raw)
  To: Ævar Arnfjörð Bjarmason; +Cc: git, brian m. carlson

Junio C Hamano <gitster@pobox.com> writes:

> Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
>
>>> * ab/test-lib-updates (2021-04-29) 11 commits
>>>  - test-lib: split up and deprecate test_create_repo()
>>>  - test-lib: do not show advice about init.defaultBranch under --verbose
>>>  - test-lib: reformat argument list in test_create_repo()
>>>  - submodule tests: use symbolic-ref --short to discover branch name
>>>  - test-lib functions: add --printf option to test_commit
>>>  - describe tests: convert setup to use test_commit
>>>  - test-lib functions: add an --annotated option to "test_commit"
>>>  - test-lib-functions: document test_commit --no-tag
>>>  - test-lib-functions: reword "test_commit --append" docs
>>>  - test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable
>>>  - test-lib: bring $remove_trash out of retirement
>>>  (this branch is used by ab/describe-tests-fix and ab/pickaxe-pcre2.)
>>>
>>>  Test clean-up.
>>>
>>>  Waiting for an Ack before merging them to 'next'.
>>
>> Is the ack a reply to
>> https://lore.kernel.org/git/xmqqo8dx7dv4.fsf@gitster.g/ (or here, I
>> suppose)?. Sorry about the in-flight hassle.
>
> No, what I meant was that v4 had review comments and v5 was done in
> response to that, so I wanted to make sure that reviewers are happy
> with the delta between v4 and v5 before taking v5 and declaring it
> good just by myself.

... and this hasn't happened yet.  Can you ping them yourself,
please (distributed processing at work ;-)?

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: What's cooking in git.git (Apr 2021, #06; Thu, 29)
  2021-05-06  4:29     ` Junio C Hamano
@ 2021-05-06 15:36       ` Ævar Arnfjörð Bjarmason
  0 siblings, 0 replies; 9+ messages in thread
From: Ævar Arnfjörð Bjarmason @ 2021-05-06 15:36 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, brian m. carlson


On Thu, May 06 2021, Junio C Hamano wrote:

> Junio C Hamano <gitster@pobox.com> writes:
>
>> Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
>>
>>>> * ab/test-lib-updates (2021-04-29) 11 commits
>>>>  - test-lib: split up and deprecate test_create_repo()
>>>>  - test-lib: do not show advice about init.defaultBranch under --verbose
>>>>  - test-lib: reformat argument list in test_create_repo()
>>>>  - submodule tests: use symbolic-ref --short to discover branch name
>>>>  - test-lib functions: add --printf option to test_commit
>>>>  - describe tests: convert setup to use test_commit
>>>>  - test-lib functions: add an --annotated option to "test_commit"
>>>>  - test-lib-functions: document test_commit --no-tag
>>>>  - test-lib-functions: reword "test_commit --append" docs
>>>>  - test-lib tests: remove dead GIT_TEST_FRAMEWORK_SELFTEST variable
>>>>  - test-lib: bring $remove_trash out of retirement
>>>>  (this branch is used by ab/describe-tests-fix and ab/pickaxe-pcre2.)
>>>>
>>>>  Test clean-up.
>>>>
>>>>  Waiting for an Ack before merging them to 'next'.
>>>
>>> Is the ack a reply to
>>> https://lore.kernel.org/git/xmqqo8dx7dv4.fsf@gitster.g/ (or here, I
>>> suppose)?. Sorry about the in-flight hassle.
>>
>> No, what I meant was that v4 had review comments and v5 was done in
>> response to that, so I wanted to make sure that reviewers are happy
>> with the delta between v4 and v5 before taking v5 and declaring it
>> good just by myself.
>
> ... and this hasn't happened yet.  Can you ping them yourself,
> please (distributed processing at work ;-)?

Just did so in https://lore.kernel.org/git/87eeejvpuy.fsf@evledraar.gmail.com/

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-05-06 15:40 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-29  9:15 What's cooking in git.git (Apr 2021, #06; Thu, 29) Junio C Hamano
2021-04-30  9:34 ` Ævar Arnfjörð Bjarmason
2021-05-02  6:47   ` Junio C Hamano
2021-05-06  4:29     ` Junio C Hamano
2021-05-06 15:36       ` Ævar Arnfjörð Bjarmason
2021-05-03  2:38   ` Junio C Hamano
2021-05-02 12:00 ` ZheNing Hu
2021-05-03  1:46   ` Junio C Hamano
2021-05-03 13:35     ` ZheNing Hu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).