{"thread":{"id":"56398","subject":"What's cooking in git.git (Aug 2021, #09; Sun, 29)","startedAt":"2021-08-30T01:19:50Z","lastAt":"2021-09-01T14:55:12Z","messageCount":12,"participants":["Junio C Hamano","Ævar Arnfjörð Bjarmason","Han-Wen Nienhuys","Derrick Stolee","Jonathan Tan","SZEDER Gábor"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"434045","messageId":"xmqq35qr7mq5.fsf@gitster.g","threadId":"56398","inReplyTo":null,"subject":"What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2021-08-30T01:19:46Z","receivedAt":"2021-08-30T01:19:50Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Here are the topics that have been cooking in my tree.  Commits\nprefixed with '+' are in 'next' (being in 'next' is a sign that a\ntopic is stable enough to be used and are candidate to be in a\nfuture release).  Commits prefixed with '-' are only in 'seen',\nwhich means nothing more than that I have found them of interest for\nsome reason (like \"it may have hard-to-resolve conflicts with\nanother topic already in flight\" or \"this may turn out to be\nuseful\").  Do not read too much into a topic being in (or not in)\n'seen'.  The ones marked with '.' do not appear in any of the\nintegration branches, but I am still holding onto them.\n\nThe first batch of topics for the new cycle are now in 'master'.\nThe second batch will primarily be to graduate 'ort' as the\ndefault.\n\nI've been a bit under the weather during the last week and wanted to\nconcentrate on what to push out to 'master', so while I may have\npicked up new topics and replaced existing topics with their new\nversions, I haven't added or updated my summaries on their doneness\nto this document.  Help is appreciated.\n\nThere also may be other patches sent to the list that I haven't\nlooked at, whether they were reviewed by others or not.\n\nCopies of the source code to Git live in many repositories, and the\nfollowing is a list of the ones I push into or their mirrors.  Some\nrepositories have only a subset of branches.\n\nWith maint, master, next, seen, todo:\n\n\tgit://git.kernel.org/pub/scm/git/git.git/\n\tgit://repo.or.cz/alt-git.git/\n\thttps://kernel.googlesource.com/pub/scm/git/git/\n\thttps://github.com/git/git/\n\thttps://gitlab.com/git-vcs/git/\n\nWith all the integration branches and topics broken out:\n\n\thttps://github.com/gitster/git/\n\nEven though the preformatted documentation in HTML and man format\nare not sources, they are published in these repositories for\nconvenience (replace \"htmldocs\" with \"manpages\" for the manual\npages):\n\n\tgit://git.kernel.org/pub/scm/git/git-htmldocs.git/\n\thttps://github.com/gitster/git-htmldocs.git/\n\nRelease tarballs are available at:\n\n\thttps://www.kernel.org/pub/software/scm/git/\n\n--------------------------------------------------\n[Graduated to 'master']\n\n* ab/bundle-doc (2021-08-02) 4 commits\n  (merged to 'next' on 2021-08-23 at af25d34e71)\n + bundle doc: replace \"basis\" with \"prerequsite(s)\"\n + bundle doc: elaborate on rev<->ref restriction\n + bundle doc: elaborate on object prerequisites\n + bundle doc: rewrite the \"DESCRIPTION\" section\n\n Originally merged to 'next' on 2021-08-04\n\n Doc update.\n\n\n* ab/http-drop-old-curl (2021-07-30) 5 commits\n  (merged to 'next' on 2021-08-23 at 70188594a0)\n + http: rename CURLOPT_FILE to CURLOPT_WRITEDATA\n + http: drop support for curl < 7.19.3 and < 7.17.0 (again)\n + http: drop support for curl < 7.19.4\n + http: drop support for curl < 7.16.0\n + http: drop support for curl < 7.11.1\n\n Originally merged to 'next' on 2021-08-02\n\n Support for ancient versions of cURL library has been dropped.\n\n\n* ab/pack-stdin-packs-fix (2021-07-09) 2 commits\n  (merged to 'next' on 2021-08-23 at ec9d0ba95f)\n + pack-objects: fix segfault in --stdin-packs option\n + pack-objects tests: cover blindspots in stdin handling\n\n Originally merged to 'next' on 2021-08-04\n\n Input validation of \"git pack-objects --stdin-packs\" has been\n corrected.\n\n\n* ds/add-with-sparse-index (2021-07-29) 5 commits\n  (merged to 'next' on 2021-08-23 at 179c4747ac)\n + add: remove ensure_full_index() with --renormalize\n + add: ignore outside the sparse-checkout in refresh()\n + pathspec: stop calling ensure_full_index\n + add: allow operating on a sparse-only index\n + t1092: test merge conflicts outside cone\n (this branch is used by ds/sparse-index-ignored-files.)\n\n Originally merged to 'next' on 2021-08-02\n\n \"git add\" can work better with the sparse index.\n\n\n* en/ort-perf-batch-15 (2021-08-03) 9 commits\n  (merged to 'next' on 2021-08-23 at d22a850986)\n + merge-ort: remove compile-time ability to turn off usage of memory pools\n + merge-ort: reuse path strings in pool_alloc_filespec\n + merge-ort: store filepairs and filespecs in our mem_pool\n + diffcore-rename, merge-ort: add wrapper functions for filepair alloc/dealloc\n + merge-ort: switch our strmaps over to using memory pools\n + merge-ort: set up a memory pool\n + merge-ort: add pool_alloc, pool_calloc, and pool_strndup wrappers\n + diffcore-rename: use a mem_pool for exact rename detection's hashmap\n + merge-ort: rename str{map,intmap,set}_func()\n\n Originally merged to 'next' on 2021-08-04\n\n Final batch for \"merge -sort\" optimization.\n\n\n* es/trace2-log-parent-process-name (2021-07-22) 2 commits\n  (merged to 'next' on 2021-08-23 at a93182081d)\n + tr2: log parent process name\n + tr2: make process info collection platform-generic\n\n Originally merged to 'next' on 2021-08-04\n\n trace2 logs learned to show parent process name to see in what\n context Git was invoked.\n\n\n* hn/refs-test-cleanup (2021-08-02) 11 commits\n  (merged to 'next' on 2021-08-23 at 96fe62cbc1)\n + t6001: avoid direct file system access\n + t6500: use \"ls -1\" to snapshot ref database state\n + t7064: use update-ref -d to remove upstream branch\n + t1410: mark test as REFFILES\n + t1405: mark test for 'git pack-refs' as REFFILES\n + t1405: use 'git reflog exists' to check reflog existence\n + t2402: use ref-store test helper to create broken symlink\n + t3320: use git-symbolic-ref rather than filesystem access\n + t6120: use git-update-ref rather than filesystem access\n + t1503: mark symlink test as REFFILES\n + t6050: use git-update-ref rather than filesystem access\n\n Originally merged to 'next' on 2021-08-04\n\n A handful of tests that assumed implementation details of files\n backend for refs have been cleaned up.\n\n\n* jc/bisect-sans-show-branch (2021-07-28) 2 commits\n  (merged to 'next' on 2021-08-23 at 4d01043b2e)\n + bisect: simplify return code from bisect_checkout()\n + bisect: do not run show-branch just to show the current commit\n\n Originally merged to 'next' on 2021-08-02\n\n \"git bisect\" spawned \"git show-branch\" only to pretty-print the\n title of the commit after checking out the next version to be\n tested; this has been rewritten in C.\n\n\n* js/expand-runtime-prefix (2021-07-26) 6 commits\n  (merged to 'next' on 2021-08-23 at cf274b0177)\n + expand_user_path: allow in-flight topics to keep using the old name\n + interpolate_path(): allow specifying paths relative to the runtime prefix\n + Use a better name for the function interpolating paths\n + expand_user_path(): clarify the role of the `real_home` parameter\n + expand_user_path(): remove stale part of the comment\n + tests: exercise the RUNTIME_PREFIX feature\n\n Originally merged to 'next' on 2021-08-04\n\n Pathname expansion (like \"~username/\") learned a way to specify a\n location relative to Git installation (e.g. its $sharedir which is\n $(prefix)/share), with \"%(prefix)\".\n\n\n* jt/push-negotiation-fixes (2021-07-15) 3 commits\n  (merged to 'next' on 2021-08-23 at 6b3dcc1092)\n + fetch: die on invalid --negotiation-tip hash\n + send-pack: fix push nego. when remote has refs\n + send-pack: fix push.negotiate with remote helper\n\n Originally merged to 'next' on 2021-08-09\n\n Bugfix for common ancestor negotiation recently introduced in \"git\n push\" codepath.\n\n\n* ps/fetch-pack-load-refs-optim (2021-08-04) 1 commit\n  (merged to 'next' on 2021-08-23 at 09f9fbdd9f)\n + fetch-pack: speed up loading of refs via commit graph\n\n Originally merged to 'next' on 2021-08-09\n\n Loading of ref tips to prepare for common ancestry negotiation in\n \"git fetch-pack\" has been optimized by taking advantage of the\n commit graph when available.\n\n\n* zh/ref-filter-raw-data (2021-07-26) 6 commits\n  (merged to 'next' on 2021-08-23 at 5c06fb48a5)\n + ref-filter: add %(rest) atom\n + ref-filter: use non-const ref_format in *_atom_parser()\n + ref-filter: --format=%(raw) support --perl\n + ref-filter: add %(raw) atom\n + ref-filter: add obj-type check in grab contents\n + Merge branch 'zh/cat-file-batch-fix' into zh/ref-filter-raw-data\n\n Originally merged to 'next' on 2021-08-04\n\n Prepare the \"ref-filter\" machinery that drives the \"--format\"\n option of \"git for-each-ref\" and its friends to be used in \"git\n cat-file --batch\".\n\n--------------------------------------------------\n[New Topics]\n\n* ab/commit-graph-usage (2021-08-25) 7 commits\n - commit-graph: show \"unexpected subcommand\" error\n - commit-graph: show usage on \"commit-graph [write|verify] garbage\"\n - commit-graph: early exit to \"usage\" on !argc\n - multi-pack-index: refactor \"goto usage\" pattern\n - commit-graph: use parse_options_concat()\n - commit-graph: remove redundant handling of -h\n - commit-graph: define common usage with a macro\n\n\n* ab/ls-remote-packet-trace (2021-08-24) 1 commit\n - ls-remote: set packet_trace_identity(<name>)\n\n Debugging aid fix.\n\n Will merge to 'next'.\n\n\n* ab/rebase-fatal-fatal-fix (2021-08-24) 1 commit\n - rebase: emit one \"fatal\" in \"fatal: fatal: <error>\"\n\n Error message fix.\n\n Will merge to 'next'.\n\n\n* ab/refs-errno-cleanup (2021-08-25) 4 commits\n - refs: make errno output explicit for refs_resolve_ref_unsafe\n - refs: explicitly return failure_errno from parse_loose_ref_contents\n - branch tests: test for errno propagating on failing read\n - refs: add failure_errno to refs_read_raw_ref() signature\n (this branch is used by hn/reftable; uses ab/refs-files-cleanup and hn/refs-errno-cleanup.)\n\n The \"remainder\" of hn/refs-errno-cleanup topic.\n\n\n* ab/retire-advice-config (2021-08-25) 4 commits\n - advice: move advice.graftFileDeprecated squashing to commit.[ch]\n - advice: remove use of global advice_add_embedded_repo\n - advice: remove read uses of most global `advice_` variables\n - advice: add enum variants for missing advice variables\n\n Code clean up to migrate callers from older advice_config[] based\n API to newer advice_if_enabled() and advice_enabled() API.\n\n Want to merge to 'next' but a tree-wide change like this can\n interfere other topics in flight, so I'll need to block some time\n to see how safe it is to proceed before we can do so.\n\n\n* dd/diff-files-unmerged-fix (2021-08-25) 1 commit\n - diff-lib: ignore paths that are outside $cwd if --relative asked\n\n \"git diff --relative\" segfaulted and/or produced incorrect result\n when there are unmerged paths.\n\n Will merge to 'next'.\n\n\n* dd/t6300-wo-gpg-fix (2021-08-25) 2 commits\n - t6300: check for cat-file exit status code\n - t6300: don't run cat-file on non-existent object\n\n Test fix.\n\n Will merge to 'next'.\n\n\n* ga/send-email-sendmail-cmd (2021-08-24) 1 commit\n - t9001: PATH must not use Windows-style paths\n\n Test fix.\n\n Will merge to 'next'.\n\n\n* jb/midx-revindex-fix (2021-08-23) 1 commit\n - multi-pack-index: fix *.rev cleanups with --object-dir\n\n An implementation in \"multi-pack-index write\" that takes object\n directory inconsistently used that and the object store of the\n default repository, causing segfaults and possibly corrupting\n repositories.\n\n On hold.\n cf. <xmqqo89jbf49.fsf@gitster.g>\n\n\n* jk/t5323-no-pack-test-fix (2021-08-25) 1 commit\n - t5323: drop mentions of \"master\"\n\n Test fix.\n\n Will merge to 'next'.\n\n\n* js/maintenance-launchctl-fix (2021-08-24) 2 commits\n - maintenance: skip bootout/bootstrap when plist is registered\n - maintenance: create `launchctl` configuration using a lock file\n\n \"git maintenance\" scheduler fix for macOS.\n\n Will merge to 'next'.\n\n\n* jv/pkt-line-batch (2021-08-26) 2 commits\n - upload-pack: use stdio in send_ref callbacks\n - pkt-line: add packet_fwrite\n\n Reduce number of write(2) system calls while sending the\n ref advertisement.\n\n Expecting a reroll.\n\n\n* me/t5582-cleanup (2021-08-24) 1 commit\n - t5582: remove spurious 'cd \"$D\"' line\n\n Test fix.\n\n Will merge to 'next'.\n\n\n* mh/credential-leakfix (2021-08-25) 1 commit\n - credential: fix leak in credential_apply_config()\n\n Leak fix.\n\n Will merge to 'next'.\n\n\n* mt/quiet-with-delayed-checkout (2021-08-26) 1 commit\n - checkout: make delayed checkout respect --quiet and --no-progress\n\n The delayed checkout code path in \"git checkout\" etc. were chatty\n even when --quiet and/or --no-progress options were given.\n\n Will merge to 'next'.\n\n\n* ps/fetch-omit-formatting-under-quiet (2021-08-25) 1 commit\n - fetch: skip formatting updated refs with `--quiet`\n\n \"git fetch --quiet\" optimization to avoid useless computation of\n info that will never be displayed.\n\n Expecting a reroll.\n cf. <xmqqo89lid59.fsf@gitster.g>\n\n\n* ps/ls-refs-strbuf-optim (2021-08-25) 1 commit\n - ls-refs: reuse buffer when sending refs\n\n Micro-optimization for the wire protocol driver.\n\n Will merge to 'next'.\n\n\n* rs/branch-allow-deleting-dangling (2021-08-27) 1 commit\n - branch: allow deleting dangling branches with --force\n\n \"git branch -D <branch>\" used to refuse to remove a broken branch\n ref that points at a missing commit, which has been corrected.\n\n Will merge to 'next'.\n\n\n* rs/git-mmap-uses-malloc (2021-08-24) 1 commit\n - compat: let git_mmap use malloc(3) directly\n\n mmap() imitation used to call xmalloc() that dies upon malloc()\n failure, which has been corrected to just return an error to the\n caller to be handled.\n\n Will merge to 'next'.\n\n\n* rs/xopen-reports-open-failures (2021-08-25) 2 commits\n - use xopen() to handle fatal open(2) failures\n - xopen: explicitly report creation failures\n\n Error diagnostics improvement.\n\n Will merge to 'next'.\n\n\n* sg/column-nl (2021-08-26) 1 commit\n - column: fix parsing of the '--nl' option\n\n The parser for the \"--nl\" option of \"git column\" has been\n corrected.\n\n Will merge to 'next'.\n\n\n* ab/unbundle-progress (2021-08-27) 5 commits\n - bundle: show progress on \"unbundle\"\n - index-pack: add --progress-title option\n - bundle API: change \"flags\" to be \"extra_index_pack_args\"\n - strvec: add a strvec_pushvec()\n - bundle API: start writing API documentation\n\n\n* jk/log-warn-on-bogus-encoding (2021-08-27) 2 commits\n - docs: use \"character encoding\" to refer to commit-object encoding\n - logmsg_reencode(): warn when iconv() fails\n\n\n* rs/archive-use-object-id (2021-08-27) 1 commit\n - archive: convert queue_directory to struct object_id\n\n\n* rs/show-branch-simplify (2021-08-27) 1 commit\n - show-branch: simplify rev_is_head()\n\n--------------------------------------------------\n[Stalled]\n\n* gh/gitweb-branch-sort (2021-06-10) 1 commit\n - gitweb: use HEAD as secondary sort key in git_get_heads_list()\n\n Tie-break branches that point at the same object in the list of\n branches on GitWeb to show the one pointed at by HEAD early.\n\n Waiting for reviews.\n\n\n* es/superproject-aware-submodules (2021-08-19) 5 commits\n - fixup! introduce submodule.superprojectGitDir record\n - submodule: record superproject gitdir during 'update'\n - submodule: record superproject gitdir during absorbgitdirs\n - introduce submodule.superprojectGitDir record\n - t7400-submodule-basic: modernize inspect() helper\n\n A configuration variable in a submodule points at the location of\n the superproject it is bound to (RFC).\n\n Looking good.\n\n\n* en/zdiff3 (2021-06-15) 2 commits\n - update documentation for new zdiff3 conflictStyle\n - xdiff: implement a zealous diff3, or \"zdiff3\"\n\n \"Zealous diff3\" style of merge conflict presentation has been added.\n\n Expecting a reroll.\n cf. <CABPp-BE7-E03+x38EK-=AE5mwwdST+d50hiiud2eY2Nsf3rM5g@mail.gmail.com>\n\n\n* ao/p4-avoid-decoding (2021-04-12) 2 commits\n - git-p4: do not decode data from perforce by default\n - git-p4: avoid decoding more data from perforce\n\n \"git p4\" in Python-2 days used to accept a lot more kinds of data\n from Perforce server as uninterrupted byte sequence, but after\n switching to Python-3, too many things are expected to be in UTF-8,\n which broke traditional use cases.\n\n Waiting for reviews.\n\n\n* tv/p4-fallback-encoding (2021-04-30) 1 commit\n - git-p4: git-p4.fallbackEncoding to specify non UTF-8 charset\n\n \"git p4\" learns the fallbackEncoding configuration variable to\n safely accept changeset descriptions that aren't written in UTF-8.\n\n Waiting for reviews.\n\n\n* ab/fsck-unexpected-type (2021-07-12) 21 commits\n - fsck: report invalid object type-path combinations\n - fsck: report invalid types recorded in objects\n - object-store.h: move read_loose_object() below 'struct object_info'\n - fsck: don't hard die on invalid object types\n - object-file.c: return -2 on \"header too long\" in unpack_loose_header()\n - object-file.c: return -1, not \"status\" from unpack_loose_header()\n - object-file.c: guard against future bugs in loose_object_info()\n - object-file.c: stop dying in parse_loose_header()\n - object-file.c: split up ternary in parse_loose_header()\n - object-file.c: simplify unpack_loose_short_header()\n - object-file.c: add missing braces to loose_object_info()\n - object-file.c: make parse_loose_header_extended() public\n - object-file.c: don't set \"typep\" when returning non-zero\n - cache.h: move object functions to object-store.h\n - cat-file tests: test for current --allow-unknown-type behavior\n - cat-file tests: add corrupt loose object test\n - rev-list tests: test for behavior with invalid object types\n - cat-file tests: test that --allow-unknown-type isn't on by default\n - cat-file tests: test for missing object with -t and -s\n - fsck tests: add test for fsck-ing an unknown type\n - fsck tests: refactor one test to use a sub-repo\n\n \"git fsck\" has been taught to report mismatch between expected and\n actual types of an object better.\n\n Needs review.\n\n--------------------------------------------------\n[Cooking]\n\n* lh/systemd-timers (2021-08-27) 3 commits\n - maintenance: add support for systemd timers on Linux\n - maintenance: `git maintenance run` learned `--scheduler=<scheduler>`\n - cache.h: Introduce a generic \"xdg_config_home_for(…)\" function\n\n \"git maintenance\" scheduler learned to use systemd timers as a\n possible backend.\n\n\n* ps/fetch-optim (2021-08-24) 8 commits\n - fetch: avoid second connectivity check if we already have all objects\n - fetch: merge fetching and consuming refs\n - fetch: refactor fetch refs to be more extendable\n - fetch-pack: optimize loading of refs via commit graph\n - connected: refactor iterator to return next object ID directly\n - fetch: avoid unpacking headers in object existence check\n - fetch: speed up lookup of want refs via commit-graph\n - Merge branch 'ps/connectivity-optim' into ps/fetch-optim\n (this branch uses ps/connectivity-optim.)\n\n\n* sg/make-fix-ar-invocation (2021-08-19) 1 commit\n  (merged to 'next' on 2021-08-24 at 9a3df9ec56)\n + Makefile: remove archives before manipulating them with 'ar'\n\n Build fix.\n\n Will merge to 'master'.\n\n\n* ti/tcsh-completion-regression-fix (2021-08-18) 1 commit\n  (merged to 'next' on 2021-08-24 at 8fa66cf037)\n + completion: tcsh: Fix regression by drop of wrapper functions\n\n Update to the command line completion (in contrib/) for tcsh.\n\n Will merge to 'master'.\n\n\n* fc/completion-updates (2021-08-18) 4 commits\n  (merged to 'next' on 2021-08-24 at 593cd75c64)\n + completion: bash: add correct suffix in variables\n + completion: bash: fix for multiple dash commands\n + completion: bash: fix for suboptions with value\n + completion: bash: fix prefix detection in branch.*\n\n Command line completion updates.\n\n Will merge to 'master'.\n\n\n* ar/submodule-run-update-procedure (2021-08-24) 1 commit\n - submodule--helper: run update procedures from C\n\n Reimplementation of parts of \"git submodule\" in C continues.\n\n\n* cb/ci-use-upload-artifacts-v1 (2021-08-15) 1 commit\n  (merged to 'next' on 2021-08-24 at afdbb7ee8d)\n + ci: use upload-artifacts v1 for dockerized jobs\n\n Use upload-artifacts v1 (instead of v2) for 32-bit linux, as the\n new version has a blocker bug for that architecture.\n\n Will merge to 'master'.\n\n\n* pw/rebase-skip-final-fix (2021-08-13) 3 commits\n  (merged to 'next' on 2021-08-24 at 73ec41e9dd)\n + rebase --continue: remove .git/MERGE_MSG\n + rebase --apply: restore some tests\n + t3403: fix commit authorship\n\n Checking out all the paths from HEAD during the last conflicted\n step in \"git rebase\" and continuing would cause the step to be\n skipped (which is expected), but leaves MERGE_MSG file behind in\n $GIT_DIR and confuses the next \"git commit\", which has been\n corrected.\n\n Will merge to 'master'.\n\n\n* ab/help-autocorrect-prompt (2021-08-14) 1 commit\n - help.c: help.autocorrect=prompt waits for user action\n\n The logic for auto-correction of misspelt subcommands learned to go\n interactive when the help.autocorrect configuration variable is set\n to true.\n\n\n* pw/rebase-r-fixes (2021-08-23) 4 commits\n  (merged to 'next' on 2021-08-24 at 81c6aff70a)\n + rebase -r: fix merge -c with a merge strategy\n + rebase -r: don't write .git/MERGE_MSG when fast-forwarding\n + rebase -i: add another reword test\n + rebase -r: make 'merge -c' behave like reword\n\n Various bugs in \"git rebase -r\" have been fixed.\n\n Will merge to 'master'.\n\n\n* th/userdiff-more-java (2021-08-11) 1 commit\n  (merged to 'next' on 2021-08-24 at a5617abd3e)\n + userdiff: improve java hunk header regex\n\n The userdiff pattern for \"java\" language has been updated.\n\n Will merge to 'master'.\n\n\n* zh/cherry-pick-advice (2021-08-23) 1 commit\n - cherry-pick: use better advice message\n\n The advice message that \"git cherry-pick\" gives when it asks\n conflicted replay of a commit to be resolved by the end user has\n been updated.\n\n Will merge to 'next'?\n\n\n* es/config-based-hooks (2021-08-19) 7 commits\n - hook: allow out-of-repo 'git hook' invocations\n - hook: include hooks from the config\n - hook: allow running non-native hooks\n - hook: introduce \"git hook list\"\n - hook: allow parallel hook execution\n - hook: run a list of hooks instead\n - Merge branch 'ab/config-based-hooks-base' into es/config-based-hooks\n (this branch uses ab/config-based-hooks-base.)\n\n Revamp the hooks subsystem to allow multiple of them to trigger\n upon the same event and control via the configuration variables.\n\n Will merge to 'next'?\n cf. <87v93wflm0.fsf@evledraar.gmail.com>\n\n\n* mk/clone-recurse-submodules (2021-08-18) 2 commits\n - fixup! clone: set submodule.recurse=true if submodule.stickyRecursiveClone enabled\n - clone: set submodule.recurse=true if submodule.stickyRecursiveClone enabled\n\n After \"git clone --recurse-submodules\", all submodules are cloned\n but they are not by default recursed into by other commands.  With\n submodule.stickyRecursiveClone configuration set, submodule.recurse\n configuration is set to true in a repository created by \"clone\"\n with \"--recurse-submodules\" option.\n\n cf. <4103806f-6d88-2756-8853-7e16e56ad425@gmail.com>\n\n\n* bc/t5607-avoid-broken-test-fail-prereqs (2021-08-11) 1 commit\n  (merged to 'next' on 2021-08-24 at 66c1e510ff)\n + t5607: avoid using prerequisites to select algorithm\n\n The current implementation of GIT_TEST_FAIL_PREREQS is broken in\n that checking for the lack of a prerequisite would not work.  Avoid\n the use of \"if ! test_have_prereq X\" in a test script.\n\n Will merge to 'master'.\n\n\n* jk/commit-edit-fixup-fix (2021-08-15) 1 commit\n  (merged to 'next' on 2021-08-24 at 0c625438c3)\n + commit: restore --edit when combined with --fixup\n\n \"git commit --fixup\" now works with \"--edit\" again, after it was\n broken in v2.32.\n\n Will merge to 'master'.\n\n\n* tl/traverse-non-commits-rename (2021-08-12) 1 commit\n  (merged to 'next' on 2021-08-24 at 55cc85c20a)\n + list-objects.c: rename \"traverse_trees_and_blobs\" to \"traverse_non_commits\"\n\n Meh.\n\n Will merge to 'master'.\n\n\n* cb/ci-freebsd-update (2021-08-12) 1 commit\n  (merged to 'next' on 2021-08-24 at 1ecf63af7d)\n + ci: update freebsd 12 cirrus job\n\n Update FreeBSD CI job\n\n Will merge to 'master'.\n\n\n* cb/builtin-merge-format-string-fix (2021-08-09) 1 commit\n  (merged to 'next' on 2021-08-24 at 6e94c19f1e)\n + builtin/merge: avoid -Wformat-extra-args from ancient Xcode\n\n Code clean-up.\n\n Will merge to 'master'.\n\n\n* ka/want-ref-in-namespace (2021-08-13) 3 commits\n - docs: clarify the interaction of transfer.hideRefs and namespaces\n - upload-pack.c: treat want-ref relative to namespace\n - t5730: introduce fetch command helper\n\n \"git upload-pack\" which runs on the other side of \"git fetch\"\n forgot to take the ref namespaces into account when handling\n want-ref requests.\n\n\n* cb/ci-build-pedantic (2021-08-11) 1 commit\n - ci: run a pedantic build as part of the GitHub workflow\n\n CI update.\n\n Expecting a reroll.\n\n\n* ds/sparse-index-ignored-files (2021-08-10) 9 commits\n - sparse-checkout: clear tracked sparse dirs\n - sparse-index: add SPARSE_INDEX_IGNORE_CONFIG flag\n - attr: be careful about sparse directories\n - sparse-checkout: create helper methods\n - unpack-trees: fix nested sparse-dir search\n - sparse-index: silently return when cache tree fails\n - sparse-index: silently return when not using cone-mode patterns\n - t7519: rewrite sparse index test\n - Merge branch 'ds/add-with-sparse-index' into ds/sparse-index-ignored-files\n\n In cone mode, the sparse-index codepath learned to remove ignored\n files (like build artifacts) outside the sparse cone, allowing the\n entire directory outside the sparse cone to be removed, which is\n especially useful when the sparse patterns change.\n\n\n* jc/userdiff-pattern-hint (2021-08-11) 1 commit\n  (merged to 'next' on 2021-08-24 at f29f51148f)\n + userdiff: comment on the builtin patterns\n\n Remind developers that the userdiff patterns should be kept simple\n and permissive, assuming that the contents they apply are always\n syntactically correct.\n\n Will merge to 'master'.\n\n\n* jk/apply-binary-hunk-parsing-fix (2021-08-10) 1 commit\n  (merged to 'next' on 2021-08-24 at c786cd1e8b)\n + apply: keep buffer/size pair in sync when parsing binary hunks\n\n \"git apply\" miscounted the bytes and failed to read to the end of\n binary hunks.\n\n Will merge to 'master'.\n\n\n* jk/range-diff-fixes (2021-08-10) 3 commits\n  (merged to 'next' on 2021-08-24 at eff05f579e)\n + range-diff: use ssize_t for parsed \"len\" in read_patches()\n + range-diff: handle unterminated lines in read_patches()\n + range-diff: drop useless \"offset\" variable from read_patches()\n\n \"git range-diff\" code clean-up.\n\n Will merge to 'master'.\n\n\n* js/advise-when-skipping-cherry-picked (2021-08-10) 2 commits\n - SQUASH???\n - sequencer: advise if skipping cherry-picked commit\n\n \"git rebase\" by default skips changes that are equivalent to\n commits that are already in the history the branch is rebased onto;\n give messages when this happens to let the users be aware of\n skipped commits, and also teach them how to tell \"rebase\" to keep\n duplicated changes.\n\n\n* jt/grep-wo-submodule-odb-as-alternate (2021-08-13) 8 commits\n - t7814: show lack of alternate ODB-adding\n - submodule-config: pass repo upon blob config read\n - grep: add repository to OID grep sources\n - grep: allocate subrepos on heap\n - grep: read submodule entry with explicit repo\n - grep: typesafe versions of grep_source_init\n - grep: use submodule-ODB-as-alternate lazy-addition\n - submodule: lazily add submodule ODBs as alternates\n\n The code to make \"git grep\" recurse into submodules has been\n updated to migrate away from the \"add submodule's object store as\n an alternate object store\" mechanism (which is suboptimal).\n\n\n* ps/connectivity-optim (2021-08-09) 5 commits\n  (merged to 'next' on 2021-08-24 at 94a7a04ca4)\n + revision: avoid hitting packfiles when commits are in commit-graph\n + commit-graph: split out function to search commit position\n + revision: stop retrieving reference twice\n + connected: do not sort input revisions\n + revision: separate walk and unsorted flags\n (this branch is used by ps/fetch-optim.)\n\n The revision traversal API has been optimized by taking advantage\n of the commit-graph, when available, to determine if a commit is\n reachable from any of the existing refs.\n\n Will merge to 'master'.\n\n\n* ar/submodule-add-more (2021-08-10) 10 commits\n - submodule--helper: rename compute_submodule_clone_url()\n - submodule--helper: remove resolve-relative-url subcommand\n - submodule--helper: remove add-config subcommand\n - submodule--helper: remove add-clone subcommand\n - submodule--helper: convert the bulk of cmd_add() to C\n - dir: libify and export helper functions from clone.c\n - submodule--helper: remove repeated code in sync_submodule()\n - submodule--helper: refactor resolve_relative_url() helper\n - submodule--helper: add options for compute_submodule_clone_url()\n - Merge branch 'ar/submodule-add-config' into ar/submodule-add\n (this branch uses ar/submodule-add-config.)\n\n More parts of \"git submoudle add\" has been rewritten in C.\n\n\n* cb/makefile-apple-clang (2021-08-06) 3 commits\n - build: catch clang that identifies itself as \"$VENDOR clang\"\n - build: clang version may not be followed by extra words\n - build: update detect-compiler for newer Xcode version\n\n Build update.\n\n Will merge to 'next'.\n\n\n* en/merge-strategy-docs (2021-08-05) 10 commits\n  (merged to 'next' on 2021-08-24 at ceb66b1062)\n + Update error message and code comment\n + merge-strategies.txt: add coverage of the `ort` merge strategy\n + git-rebase.txt: correct out-of-date and misleading text about renames\n + merge-strategies.txt: fix simple capitalization error\n + merge-strategies.txt: avoid giving special preference to patience algorithm\n + merge-strategies.txt: do not imply using copy detection is desired\n + merge-strategies.txt: update wording for the resolve strategy\n + Documentation: edit awkward references to `git merge-recursive`\n + directory-rename-detection.txt: small updates due to merge-ort optimizations\n + git-rebase.txt: correct antiquated claims about --rebase-merges\n (this branch is used by en/ort-becomes-the-default.)\n\n Documentation updates.\n\n Will merge to 'master'.\n\n\n* en/ort-becomes-the-default (2021-08-05) 2 commits\n  (merged to 'next' on 2021-08-24 at 92f4e08d83)\n + Update docs for change of default merge backend\n + Change default merge backend from recursive to ort\n (this branch uses en/merge-strategy-docs.)\n\n Use `ort` instead of `recursive` as the default merge strategy.\n\n Will merge to 'master'.\n\n\n* js/log-protocol-version (2021-08-10) 1 commit\n  (merged to 'next' on 2021-08-24 at aeeaee04fb)\n + connect, protocol: log negotiated protocol version\n\n Debugging aid.\n\n Will merge to 'master'.\n\n\n* ab/lib-subtest (2021-08-05) 11 commits\n - test-lib tests: assert 1 exit code, not non-zero\n - test-lib tests: refactor common part of check_sub_test_lib_test*()\n - test-lib tests: avoid subshell for \"test_cmp\" for readability\n - test-lib tests: assert no copy/pasted mock test code\n - test-lib tests: get rid of copy/pasted mock test code\n - test-lib tests: don't provide a description for the sub-tests\n - test-lib tests: stop using a subshell in write_sub_test_lib_test()\n - test-lib tests: split up \"write and run\" into two functions\n - test-lib tests: move \"run_sub_test\" to a new lib-subtest.sh\n - Merge branch 'ps/t0000-output-directory-fix' into ab/lib-subtest\n - Merge branch 'jk/t0000-subtests-fix' into ab/lib-subtest\n\n Updates to the tests in t0000 to test the test framework.\n\n\n* ab/only-single-progress-at-once (2021-07-23) 8 commits\n - progress.c: add & assert a \"global_progress\" variable\n - pack-bitmap-write.c: add a missing stop_progress()\n - progress.c: add temporary variable from progress struct\n - progress.c: stop eagerly fflush(stderr) when not a terminal\n - progress.c: call progress_interval() from progress_test_force_update()\n - progress.c: move signal handler functions lower\n - progress.c tests: test some invalid usage\n - progress.c tests: make start/stop verbs on stdin\n\n Further tweaks on progress API.\n\n\n* ab/progress-users-adjust-counters (2021-08-25) 2 commits\n - entry: show finer-grained counter in \"Filtering content\" progress line\n - commit-graph: fix bogus counter in \"Scanning merged commits\" progress line\n\n The code to show progress indicator in a few codepaths did not\n cover between 0-100%, which has been corrected.\n\n Will merge to 'next'?\n\n\n* ar/submodule-add-config (2021-08-10) 1 commit\n - submodule--helper: introduce add-config subcommand\n (this branch is used by ar/submodule-add-more.)\n\n Large part of \"git submodule add\" gets rewritten in C.\n\n\n* dt/submodule-diff-fixes (2021-08-11) 3 commits\n - diff --submodule=diff: don't print failure message twice\n - diff --submodule=diff: do not fail on ever-initialied deleted submodules\n - t4060: remove unused variable\n\n \"git diff --submodule=diff\" showed failure from run_command() when\n trying to run diff inside a submodule, when the user manually\n removes the submodule directory.\n\n Will merge to 'next'?\n cf. <20210812001332.715876-1-dturner@twosigma.com>\n\n\n* fs/ssh-signing (2021-08-29) 9 commits\n - ssh signing: test that gpg fails for unknown keys\n - ssh signing: tests for logs, tags & push certs\n - ssh signing: duplicate t7510 tests for commits\n - ssh signing: verify signatures using ssh-keygen\n - ssh signing: provide a textual signing_key_id\n - ssh signing: retrieve a default key from ssh-agent\n - ssh signing: add ssh key format and signing code\n - ssh signing: add test prereqs\n - ssh signing: preliminary refactoring and clean-up\n\n Use ssh public crypto for object and push-cert signing.\n\n Comments?\n\n\n* en/pull-conflicting-options (2021-07-22) 8 commits\n  (merged to 'next' on 2021-08-24 at e1e5b2c551)\n + pull: fix handling of multiple heads\n + pull: update docs & code for option compatibility with rebasing\n + pull: abort by default when fast-forwarding is not possible\n + pull: make --rebase and --no-rebase override pull.ff=only\n + pull: since --ff-only overrides, handle it first\n + pull: abort if --ff-only is given and fast-forwarding is impossible\n + t7601: add tests of interactions with multiple merge heads and config\n + t7601: test interaction of merge/rebase/fast-forward flags and options\n\n \"git pull\" had various corner cases that were not well thought out\n around its --rebase backend, e.g. \"git pull --ff-only\" did not stop\n but went ahead and rebased when the history on other side is not a\n descendant of our history.  The series tries to fix them up.\n\n Will merge to 'master'.\n\n\n* cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit\n - fetch: fix segfault on --set-upstream while on a detached HEAD\n\n \"git fetch --set-upstream\" while on detached HEAD segfaulted\n instead of noticing that such an operation did not make sense.\n\n Expecting a reroll.\n cf. <xmqqsg0ri5mq.fsf@gitster.g>\n\n\n* ab/make-tags-cleanup (2021-08-05) 5 commits\n - Makefile: normalize clobbering & xargs for tags targets\n - Makefile: remove \"cscope.out\", not \"cscope*\" in cscope.out target\n - Makefile: don't use \"FORCE\" for tags targets\n - Makefile: add QUIET_GEN to \"cscope\" target\n - Makefile: move \".PHONY: cscope\" near its target\n\n Build clean-up for \"make tags\" and friends.\n\n Expecting a reroll.\n 4/5 may want a minor tweak to the log and the patch text but otherwise looks good.\n\n\n* tb/multi-pack-bitmaps (2021-08-24) 25 commits\n - p5326: perf tests for MIDX bitmaps\n - p5310: extract full and partial bitmap tests\n - midx: respect 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'\n - t7700: update to work with MIDX bitmap test knob\n - t5319: don't write MIDX bitmaps in t5319\n - t5310: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP\n - t0410: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP\n - t5326: test multi-pack bitmap behavior\n - t/helper/test-read-midx.c: add --checksum mode\n - t5310: move some tests to lib-bitmap.sh\n - pack-bitmap: write multi-pack bitmaps\n - pack-bitmap: read multi-pack bitmaps\n - pack-bitmap.c: avoid redundant calls to try_partial_reuse\n - pack-bitmap.c: introduce 'bitmap_is_preferred_refname()'\n - pack-bitmap.c: introduce 'nth_bitmap_object_oid()'\n - pack-bitmap.c: introduce 'bitmap_num_objects()'\n - midx: avoid opening multiple MIDXs when writing\n - midx: close linked MIDXs, avoid leaking memory\n - midx: infer preferred pack when not given one\n - midx: reject empty `--preferred-pack`'s\n - midx: clear auxiliary .rev after replacing the MIDX\n - Documentation: describe MIDX-based bitmaps\n - pack-bitmap-write.c: free existing bitmaps\n - pack-bitmap-write.c: gracefully fail to write non-closed bitmaps\n - pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps\n\n The reachability bitmap file used to be generated only for a single\n pack, but now we've learned to generate bitmaps for history that\n span across multiple packfiles.\n\n Comments?\n\n\n* ab/config-based-hooks-base (2021-08-03) 36 commits\n - hooks: fix a TOCTOU in \"did we run a hook?\" heuristic\n - receive-pack: convert receive hooks to hook.h\n - post-update: use hook.h library\n - receive-pack: convert 'update' hook to hook.h\n - hooks: allow callers to capture output\n - run-command: allow capturing of collated output\n - reference-transaction: use hook.h to run hooks\n - hook tests: use a modern style for \"pre-push\" tests\n - hook tests: test for exact \"pre-push\" hook input\n - transport: convert pre-push hook to hook.h\n - hook: convert 'post-rewrite' hook in sequencer.c to hook.h\n - hook: provide stdin by string_list or callback\n - run-command: add stdin callback for parallelization\n - am: convert 'post-rewrite' hook to hook.h\n - hook: support passing stdin to hooks\n - run-command: allow stdin for run_processes_parallel\n - run-command: remove old run_hook_{le,ve}() hook API\n - receive-pack: convert push-to-checkout hook to hook.h\n - read-cache: convert post-index-change to use hook.h\n - commit: convert {pre-commit,prepare-commit-msg} hook to hook.h\n - git-p4: use 'git hook' to run hooks\n - send-email: use 'git hook run' for 'sendemail-validate'\n - git hook run: add an --ignore-missing flag\n - merge: convert post-merge to use hook.h\n - hooks: convert 'post-checkout' hook to hook library\n - am: convert applypatch to use hook.h\n - rebase: convert pre-rebase to use hook.h\n - gc: use hook library for pre-auto-gc hook\n - hook: add 'run' subcommand\n - hook-list.h: add a generated list of hooks, like config-list.h\n - hook.c users: use \"hook_exists()\" insted of \"find_hook()\"\n - hook.c: add a hook_exists() wrapper and use it in bugreport.c\n - hook.[ch]: move find_hook() to this new library\n - Makefile: remove an out-of-date comment\n - Makefile: stop hardcoding {command,config}-list.h\n - Makefile: mark \"check\" target as .PHONY\n (this branch is used by es/config-based-hooks.)\n\n Restructuring of (a subset of) Emily's config-based-hooks series,\n to demonstrate that a series can be presented as a more logical and\n focused progression.\n\n Waiting for reviews.\n\n\n* ab/serve-cleanup (2021-08-05) 10 commits\n - upload-pack: document and rename --advertise-refs\n - serve.[ch]: remove \"serve_options\", split up --advertise-refs code\n - {upload,receive}-pack tests: add --advertise-refs tests\n - serve.c: move version line to advertise_capabilities()\n - serve: move transfer.advertiseSID check into session_id_advertise()\n - serve.[ch]: don't pass \"struct strvec *keys\" to commands\n - serve: use designated initializers\n - transport: use designated initializers\n - transport: rename \"fetch\" in transport_vtable to \"fetch_refs\"\n - serve: mark has_capability() as static\n\n Code clean-up around \"git serve\".\n\n Expecting a reroll.\n\n\n* ab/test-tool-cache-cleanup (2021-08-24) 4 commits\n - read-cache perf: add a perf test for refresh_index()\n - test-tool: migrate read-cache-again to parse_options()\n - test-tool: migrate read-cache-perf to parse_options()\n - test-tool: split up test-tool read-cache\n\n Test code shuffling.\n\n\n* ab/pack-objects-stdin (2021-07-09) 5 commits\n - pack-objects.c: make use of REV_INFO_STDIN_LINE_PROCESS\n - pack-objects.c: do stdin parsing via revision.c's API\n - revision.[ch]: add a \"handle_stdin_line\" API\n - revision.h: refactor \"disable_stdin\" and \"read_from_stdin\"\n - upload-pack: run is_repository_shallow() before setup_revisions()\n\n Introduce handle_stdin_line callback to revision API and uses it.\n\n Waiting for reviews.\n\n\n* pw/diff-color-moved-fix (2021-08-05) 13 commits\n - diff: drop unused options parameter from cmp_in_block_with_wsd()\n - diff --color-moved: intern strings\n - diff: use designated initializers for emitted_diff_symbol\n - diff --color-moved-ws=allow-indentation-change: improve hash lookups\n - diff --color-moved: stop clearing potential moved blocks\n - diff --color-moved: shrink potential moved blocks as we go\n - diff --color-moved: unify moved block growth functions\n - diff --color-moved: call comparison function directly\n - diff --color-moved-ws=allow-indentation-change: simplify and optimize\n - diff: simplify allow-indentation-change delta calculation\n - diff --color-moved: avoid false short line matches and bad zerba coloring\n - diff --color-moved=zebra: fix alternate coloring\n - diff --color-moved: add perf tests\n\n Originally merged to 'next' on 2021-08-05\n\n Long-overdue correctness and performance update to \"diff\n --color-moved\" feature.\n\n Eject for reroll.\n cf. <8bec1a6d-5052-50c3-4100-e6348289d581@gmail.com>\n\n\n* hn/reftable (2021-08-26) 29 commits\n - SQUASH??? https://github.com/git/git/runs/3439941236?check_suite_focus=true#step:5:700\n - reftable: fixup for new base topic 3/3\n - reftable: fixup for new base topic 2/3\n - reftable: fixup for new base topic 1/3\n - t1404: annotate test cases with REFFILES\n - t1401,t2011: parameterize HEAD.lock for REFFILES\n - t1301: document what needs to be done for reftable\n - Add \"test-tool dump-reftable\" command.\n - git-prompt: prepare for reftable refs backend\n - refs: RFC: Reftable support for git-core\n - reftable: add dump utility\n - reftable: implement stack, a mutable database of reftable files.\n - reftable: implement refname validation\n - reftable: add merged table view\n - reftable: add a heap-based priority queue for reftable records\n - reftable: reftable file level tests\n - reftable: read reftable files\n - reftable: generic interface to tables\n - reftable: write reftable files\n - reftable: a generic binary tree implementation\n - reftable: reading/writing blocks\n - Provide zlib's uncompress2 from compat/zlib-compat.c\n - reftable: (de)serialization for the polymorphic record type.\n - reftable: add blocksource, an abstraction for random access reads\n - reftable: utility functions\n - reftable: add error related functionality\n - reftable: RFC: add LICENSE\n - init-db: set the_repository->hash_algo early on\n - hash.h: provide constants for the hash IDs\n (this branch uses ab/refs-errno-cleanup, ab/refs-files-cleanup and hn/refs-errno-cleanup.)\n\n The \"reftable\" backend for the refs API.\n\n\n* ab/refs-files-cleanup (2021-08-25) 13 commits\n - refs/files: remove unused \"errno != ENOTDIR\" condition\n - refs/files: remove unused \"errno == EISDIR\" code\n - refs/files: remove unused \"oid\" in lock_ref_oid_basic()\n - refs API: remove OID argument to reflog_expire()\n - reflog expire: don't lock reflogs using previously seen OID\n - refs/files: add a comment about refs_reflog_exists() call\n - refs: make repo_dwim_log() accept a NULL oid\n - refs/debug: re-indent argument list for \"prepare\"\n - refs/files: remove unused \"skip\" in lock_raw_ref() too\n - refs/files: remove unused \"extras/skip\" in lock_ref_oid_basic()\n - refs: drop unused \"flags\" parameter to lock_ref_oid_basic()\n - refs/files: remove unused REF_DELETING in lock_ref_oid_basic()\n - refs/packet: add missing BUG() invocations to reflog callbacks\n (this branch is used by ab/refs-errno-cleanup, hn/refs-errno-cleanup and hn/reftable.)\n\n Continued work on top of the hn/refs-errno-cleanup topic.\n\n\n* hn/refs-errno-cleanup (2021-08-25) 4 commits\n - refs: make errno output explicit for read_raw_ref_fn\n - refs/files-backend: stop setting errno from lock_ref_oid_basic\n - refs: remove EINVAL errno output from specification of read_raw_ref_fn\n - refs file backend: move raceproof_create_file() here\n (this branch is used by ab/refs-errno-cleanup and hn/reftable; uses ab/refs-files-cleanup.)\n\n Futz with the way 'errno' is relied on in the refs API to carry the\n failure modes up the callchain.\n\n\n* jh/builtin-fsmonitor (2021-08-26) 36 commits\n - SQUASH??? https://github.com/git/git/runs/3438543601?check_suite_focus=true#step:5:136\n - BANDAID: sparse fixes\n - t7527: test FS event reporing on MacOS WRT case and Unicode\n - fsmonitor: handle shortname for .git\n - t7527: test status with untracked-cache and fsmonitor--daemon\n - fsmonitor: force update index after large responses\n - fsmonitor: enhance existing comments\n - fsmonitor--daemon: use a cookie file to sync with file system\n - fsmonitor--daemon: periodically truncate list of modified files\n - t7527: create test for fsmonitor--daemon\n - t/perf/p7519: add fsmonitor--daemon test cases\n - t/perf: avoid copying builtin fsmonitor files into test repo\n - t/perf/p7519: speed up test using \"test-tool touch\"\n - t/helper/test-touch: add helper to touch a series of files\n - fsmonitor--daemon: implement handle_client callback\n - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS\n - fsmonitor-fs-listen-macos: add macos header files for FSEvent\n - fsmonitor-fs-listen-win32: implement FSMonitor backend on Windows\n - fsmonitor--daemon: create token-based changed path cache\n - fsmonitor--daemon: define token-ids\n - fsmonitor--daemon: add pathname classification\n - fsmonitor: do not try to operate on bare repos\n - fsmonitor--daemon: implement 'start' command\n - fsmonitor--daemon: implement 'run' command\n - fsmonitor-fs-listen-macos: stub in backend for MacOS\n - fsmonitor-fs-listen-win32: stub in backend for Windows\n - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon\n - fsmonitor--daemon: implement 'stop' and 'status' commands\n - fsmonitor--daemon: add a built-in fsmonitor daemon\n - fsmonitor: use IPC to query the builtin FSMonitor daemon\n - fsmonitor: config settings are repository-specific\n - help: include fsmonitor--daemon feature flag in version info\n - fsmonitor-ipc: create client routines for git-fsmonitor--daemon\n - fsmonitor--daemon: update fsmonitor documentation\n - fsmonitor--daemon: man page\n - simple-ipc: preparations for supporting binary messages.\n\n An attempt to write and ship with a watchman equivalent tailored\n for our use.\n\n Expecting a reroll post 2.33 release.\n\n--------------------------------------------------\n[Discarded]\n\n* zh/cherry-pick-help-is-only-for-sequencer (2021-08-03) 2 commits\n . cherry-pick: use better advice message\n . cherry-pick: fix bug when used with GIT_CHERRY_PICK_HELP\n\n Originally merged to 'next' on 2021-08-04\n\n \"git cherry-pick\" loses its state file when a stray\n GIT_CHERRY_PICK_HELP environment is present, which has been\n corrected.\n\n Reverted out of 'next' at 1f62d2e1 on 2021-08-11\n\n\n* jk/refs-files-cleanup-cleanup (2021-08-19) 1 commit\n . refs: drop unused \"flags\" parameter to lock_ref_oid_basic()\n\n Code cleanup.\n\n Obsoleted by updated ab/refs-files-cleanup\n\n\n* ow/clone-bare-origin (2021-08-03) 1 commit\n - clone: Allow combining --bare and --origin\n\n \"git clone\" did not like to take \"--bare\" and \"--origin=X\" at the\n same time; loosen the restriction.\n\n cf. <20210802174944.53745-1-oystwa@gmail.com>\n\n\n* jc/trivial-threeway-binary-merge (2021-07-28) 1 commit\n - ll-merge: teach ll_binary_merge() a trivial three-way merge\n\n The built-in merge driver for binary files learned to resolve\n trivial three-way merges (e.g. apply change, which turns A into B,\n to content A) by itself, which would help \"git apply --3way\" used\n when there is no need to use \"--3way\".\n\n Will discard.\n Replace with a trivial-merge logic in apply.c::try_treeway() or\n apply.c::three_way_merge().\n\n\n* np/blame-ignore-revs-file-may-be-optional (2021-08-09) 1 commit\n - blame: add config `blame.ignoreRevsFileIsOptional`\n\n When the file named by blame.ignoreRevsFile configuration variable\n does not exist, it causes \"git blame\" to die.  Sometimes, it is\n useful if the files named by configuration variables can be made\n optional (it would allow ~/.gitconfig to give a filename, and make\n it effective only in repositories that have a file with that name).\n\n This uses an extra variable that marks that the variable is\n optional.  Yet another alternative is being discussed to define\n syntax for \"optional\" filename values, so that the same mechanism\n can be used for not just blame.ignoreRevsFile but other filenames.\n\n Queued just as a reminder of the theme.\n"},{"id":"434066","messageId":"87tuj7xhqo.fsf@evledraar.gmail.com","threadId":"56398","inReplyTo":"xmqq35qr7mq5.fsf@gitster.g","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2021-08-30T11:00:46Z","receivedAt":"2021-08-30T12:05:32Z","isPatch":false,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"\nOn Sun, Aug 29 2021, Junio C Hamano wrote:\n\n> I've been a bit under the weather during the last week and wanted to\n> concentrate on what to push out to 'master', so while I may have\n> picked up new topics and replaced existing topics with their new\n> versions, I haven't added or updated my summaries on their doneness\n> to this document.  Help is appreciated.\n\nSorry to hear that, hope you're in good health now.\n\nBelow is my usual summary of my topics + topics I've got comments on.\n\nPlease take the below comments in the spirit of helping you along\nwhenever you can get to them, and not as needless prodding to prioritize\nthem in particular over others.\n\nAlso re your <xmqqbl5ml70u.fsf@gitster.g> I'll switch to quoting\nMessage-ID's in that style, and not as\nhttps://lore.kernel.org/git/<msgid> links. FWIW I was doing the latter\nfor the benefit of readers on the sidelines, but will switch.\n\n> [Graduated to 'master']\n> [...]\n> * ab/bundle-doc (2021-08-02) 4 commits\n\nThanks!\n\n> * ab/http-drop-old-curl (2021-07-30) 5 commits\n\nThanks. I've got those changes to introduce a git-curl-compat.h etc. on\ntop ready to go, but haven't submitted them considering the amount of\nthings I've got outstanding, but if you'd like them sooner than later...\n\n> * ab/pack-stdin-packs-fix (2021-07-09) 2 commits\n\nThanks!\n\n> * hn/refs-test-cleanup (2021-08-02) 11 commits\n\nYay, more of reftable moving forward...\n\n> [...]\n> [New Topics]\n>\n> * ab/commit-graph-usage (2021-08-25) 7 commits\n>  - commit-graph: show \"unexpected subcommand\" error\n>  - commit-graph: show usage on \"commit-graph [write|verify] garbage\"\n>  - commit-graph: early exit to \"usage\" on !argc\n>  - multi-pack-index: refactor \"goto usage\" pattern\n>  - commit-graph: use parse_options_concat()\n>  - commit-graph: remove redundant handling of -h\n>  - commit-graph: define common usage with a macro\n\nTaylor, SZEDER: That's at\n<cover-v4-0.7-00000000000-20210823T122854Z-avarab@gmail.com>, you\nreviwed the earlier\n<cover-0.6-00000000000-20210720T113707Z-avarab@gmail.com>, what do you\nthink about this version?\n\n> * ab/ls-remote-packet-trace (2021-08-24) 1 commit\n\nThanks!\n\n> * ab/rebase-fatal-fatal-fix (2021-08-24) 1 commit\n\nThanks!\n\n> * ab/refs-errno-cleanup (2021-08-25) 4 commits\n>  - refs: make errno output explicit for refs_resolve_ref_unsafe\n>  - refs: explicitly return failure_errno from parse_loose_ref_contents\n>  - branch tests: test for errno propagating on failing read\n>  - refs: add failure_errno to refs_read_raw_ref() signature\n>  (this branch is used by hn/reftable; uses ab/refs-files-cleanup and hn/refs-errno-cleanup.)\n>\n>  The \"remainder\" of hn/refs-errno-cleanup topic.\n\nThanks, and thanks for bearing with me on the whole\nab/refs-errno-cleanup & hn/refs-errno-cleanup v.s. hn/reftable ordering\nquestion.\n\n> * ab/retire-advice-config (2021-08-25) 4 commits\n>  - advice: move advice.graftFileDeprecated squashing to commit.[ch]\n>  - advice: remove use of global advice_add_embedded_repo\n>  - advice: remove read uses of most global `advice_` variables\n>  - advice: add enum variants for missing advice variables\n>\n>  Code clean up to migrate callers from older advice_config[] based\n>  API to newer advice_if_enabled() and advice_enabled() API.\n>\n>  Want to merge to 'next' but a tree-wide change like this can\n>  interfere other topics in flight, so I'll need to block some time\n>  to see how safe it is to proceed before we can do so.\n\nAs you've doubtless found out, since this series doesn't change the\nadvice.h API a patch like the outstanding\n<7749a69a38faeceadc7a8735fb3d0edd359c954c.1629842085.git.gitgitgadget@gmail.com>\nby Derrick Stolee doesn't conflict with it, but the scaffolding part in\n<496da0b17476011b4ef4dde31593afc7572246eb.1628623058.git.steadmon@google.com>\nby Josh Steadmon does.\n\nI think in this case the least painful thing overall is to get this\ntopic merged down to \"master\" sooner than later, i.e. before we get more\npatches needing advice.c changes based on top of the current master.\n\nBut alternatively I could re-roll and split up\n<patch-v4-4.4-7f79fb282e5-20210823T103719Z-avarab@gmail.com> and leave\nthe \"static struct\" in place with some dummy variable, purely to make\nresolving any merge conflicts easier for you. We'd then eventually drop\nthat scaffolding later.\n\nOr I could do nothing and you could merge this down at whatever pace\nyou're OK with. Just let me know if I can help make it easier in any\nway.\n\n> * ab/unbundle-progress (2021-08-27) 5 commits\n\nThis has outstanding feedback at\n<cover-v3-0.5-00000000000-20210826T140414Z-avarab@gmail.com> that I need\nto respond to.\n\n> * ab/fsck-unexpected-type (2021-07-12) 21 commits\n>  - fsck: report invalid object type-path combinations\n>  - fsck: report invalid types recorded in objects\n>  - object-store.h: move read_loose_object() below 'struct object_info'\n>  - fsck: don't hard die on invalid object types\n>  - object-file.c: return -2 on \"header too long\" in unpack_loose_header()\n>  - object-file.c: return -1, not \"status\" from unpack_loose_header()\n>  - object-file.c: guard against future bugs in loose_object_info()\n>  - object-file.c: stop dying in parse_loose_header()\n>  - object-file.c: split up ternary in parse_loose_header()\n>  - object-file.c: simplify unpack_loose_short_header()\n>  - object-file.c: add missing braces to loose_object_info()\n>  - object-file.c: make parse_loose_header_extended() public\n>  - object-file.c: don't set \"typep\" when returning non-zero\n>  - cache.h: move object functions to object-store.h\n>  - cat-file tests: test for current --allow-unknown-type behavior\n>  - cat-file tests: add corrupt loose object test\n>  - rev-list tests: test for behavior with invalid object types\n>  - cat-file tests: test that --allow-unknown-type isn't on by default\n>  - cat-file tests: test for missing object with -t and -s\n>  - fsck tests: add test for fsck-ing an unknown type\n>  - fsck tests: refactor one test to use a sub-repo\n>\n>  \"git fsck\" has been taught to report mismatch between expected and\n>  actual types of an object better.\n>\n>  Needs review.\n\n:( @ the no takers in reviewing it. E.g. at\n<87v93wflm0.fsf@evledraar.gmail.com>.\n\n> * zh/cherry-pick-advice (2021-08-23) 1 commit\n>  - cherry-pick: use better advice message\n>\n>  The advice message that \"git cherry-pick\" gives when it asks\n>  conflicted replay of a commit to be resolved by the end user has\n>  been updated.\n>\n>  Will merge to 'next'?\n\nI think so, I looked it over as part of browsing advice()-related\nchanges, looks good to me.\n\n> * es/config-based-hooks (2021-08-19) 7 commits\n>  - hook: allow out-of-repo 'git hook' invocations\n>  - hook: include hooks from the config\n>  - hook: allow running non-native hooks\n>  - hook: introduce \"git hook list\"\n>  - hook: allow parallel hook execution\n>  - hook: run a list of hooks instead\n>  - Merge branch 'ab/config-based-hooks-base' into es/config-based-hooks\n>  (this branch uses ab/config-based-hooks-base.)\n>\n>  Revamp the hooks subsystem to allow multiple of them to trigger\n>  upon the same event and control via the configuration variables.\n>\n>  Will merge to 'next'?\n>  cf. <87v93wflm0.fsf@evledraar.gmail.com>\n\nThis needs a re-roll based on my comments in reply to\n<20210819033450.3382652-1-emilyshaffer@google.com>. It's mostly ready as\nfar as the end-state is concerneb, but e.g. will break \"rebase\" (a\ncommit in the middle doesn't compile), leaks memory etc.\n\nIt needs a re-roll of ab/config-based-hooks-base, which I was waiting on\nsome of Emily's feedback to do. Looks like there's no outstanding things\nthere, so iwll work on that SOON.\n\n> * js/advise-when-skipping-cherry-picked (2021-08-10) 2 commits\n>  - SQUASH???\n>  - sequencer: advise if skipping cherry-picked commit\n>\n>  \"git rebase\" by default skips changes that are equivalent to\n>  commits that are already in the history the branch is rebased onto;\n>  give messages when this happens to let the users be aware of\n>  skipped commits, and also teach them how to tell \"rebase\" to keep\n>  duplicated changes.\n\nThis LGTM with your proposed obviously-correct squash.\n\nRe comment about ab/retire-advice-config above: I could also just fold\nthis into that series if you'd prefer, i.e. it would be one way to deal\nwith the only outstanding merge conflict in advice.c between\nmaster..seen.\n\n> * cb/makefile-apple-clang (2021-08-06) 3 commits\n>  - build: catch clang that identifies itself as \"$VENDOR clang\"\n>  - build: clang version may not be followed by extra words\n>  - build: update detect-compiler for newer Xcode version\n>\n>  Build update.\n>\n>  Will merge to 'next'.\n\nMakes sense. Any reason other than lack of time that you opted not to go\nfor the IMO simpler approach I suggested in\n<87bl6aypke.fsf@evledraar.gmail.com>?\n\n> * ab/lib-subtest (2021-08-05) 11 commits\n>  - test-lib tests: assert 1 exit code, not non-zero\n>  - test-lib tests: refactor common part of check_sub_test_lib_test*()\n>  - test-lib tests: avoid subshell for \"test_cmp\" for readability\n>  - test-lib tests: assert no copy/pasted mock test code\n>  - test-lib tests: get rid of copy/pasted mock test code\n>  - test-lib tests: don't provide a description for the sub-tests\n>  - test-lib tests: stop using a subshell in write_sub_test_lib_test()\n>  - test-lib tests: split up \"write and run\" into two functions\n>  - test-lib tests: move \"run_sub_test\" to a new lib-subtest.sh\n>  - Merge branch 'ps/t0000-output-directory-fix' into ab/lib-subtest\n>  - Merge branch 'jk/t0000-subtests-fix' into ab/lib-subtest\n>\n>  Updates to the tests in t0000 to test the test framework.\n\nI think with my re-roll at\n<cover-v3-0.9-0000000000-20210805T103237Z-avarab@gmail.com> it should be\nOK to declare this good to go sooner than later. I.e. the only trouble I\ncan imagine this causing in\n<patch-v3-6.9-bc79b29f3c-20210805T103237Z-avarab@gmail.com> is now easy\nto revert in isolation.\n\n> * ab/only-single-progress-at-once (2021-07-23) 8 commits\n>  - progress.c: add & assert a \"global_progress\" variable\n>  - pack-bitmap-write.c: add a missing stop_progress()\n>  - progress.c: add temporary variable from progress struct\n>  - progress.c: stop eagerly fflush(stderr) when not a terminal\n>  - progress.c: call progress_interval() from progress_test_force_update()\n>  - progress.c: move signal handler functions lower\n>  - progress.c tests: test some invalid usage\n>  - progress.c tests: make start/stop verbs on stdin\n>\n>  Further tweaks on progress API.\n\n(Summary copied from <87v93wflm0.fsf@evledraar.gmail.com>)\n\nThe changes are rather straightforward, see\n<cover-0.8-0000000000-20210722T125012Z-avarab@gmail.com>; so if anyone's\ninterested in reviewing them.\n\nThere's been no reports of anyone running into the new BUG() assertion\nin 8/8 of it: <patch-8.8-1a14176bee-20210722T125012Z-avarab@gmail.com>\n\n> * ab/progress-users-adjust-counters (2021-08-25) 2 commits\n>  - entry: show finer-grained counter in \"Filtering content\" progress line\n>  - commit-graph: fix bogus counter in \"Scanning merged commits\" progress line\n>\n>  The code to show progress indicator in a few codepaths did not\n>  cover between 0-100%, which has been corrected.\n>\n>  Will merge to 'next'?\n\nYes, should be good to go with my re-roll at\n<cover-v3-0.2-00000000000-20210823T102722Z-avarab@gmail.com>, which\nyou've picked up here.\n\n> * fs/ssh-signing (2021-08-29) 9 commits\n>  - ssh signing: test that gpg fails for unknown keys\n>  - ssh signing: tests for logs, tags & push certs\n>  - ssh signing: duplicate t7510 tests for commits\n>  - ssh signing: verify signatures using ssh-keygen\n>  - ssh signing: provide a textual signing_key_id\n>  - ssh signing: retrieve a default key from ssh-agent\n>  - ssh signing: add ssh key format and signing code\n>  - ssh signing: add test prereqs\n>  - ssh signing: preliminary refactoring and clean-up\n>\n>  Use ssh public crypto for object and push-cert signing.\n>\n>  Comments?\n\nI'm also interested in this one. My reading of\n<9075cdd1-e34d-5dcb-f2b8-69ae4abf587b@gigacodes.de> is that the author\nplans to re-roll it sometimes around mid-September. I personally punted\non reviewing the current version while waiting for that.\n\n> * cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit\n>  - fetch: fix segfault on --set-upstream while on a detached HEAD\n>\n>  \"git fetch --set-upstream\" while on detached HEAD segfaulted\n>  instead of noticing that such an operation did not make sense.\n>\n>  Expecting a reroll.\n>  cf. <xmqqsg0ri5mq.fsf@gitster.g>\n\nI think the author's comment in reply to my\n<patch-v2-1.1-9e846b76959-20210823T125434Z-avarab@gmail.com> can be read\nas them being happy to go with my alternate version, but CC'd them.\n\nI'll re-roll with what I noted in <87bl5nfcof.fsf@evledraar.gmail.com>,\nwhich amounts to a cosmetic change, but is probably easier to read.\n\n> * ab/make-tags-cleanup (2021-08-05) 5 commits\n>  - Makefile: normalize clobbering & xargs for tags targets\n>  - Makefile: remove \"cscope.out\", not \"cscope*\" in cscope.out target\n>  - Makefile: don't use \"FORCE\" for tags targets\n>  - Makefile: add QUIET_GEN to \"cscope\" target\n>  - Makefile: move \".PHONY: cscope\" near its target\n>\n>  Build clean-up for \"make tags\" and friends.\n>\n>  Expecting a reroll.\n>  4/5 may want a minor tweak to the log and the patch text but otherwise looks good.\n\n(Summary copied from <87v93wflm0.fsf@evledraar.gmail.com>)\n\nThis entire comment has been in What's Cooking since v3 of the series,\nbut v4 has been out since August 4th:\n<cover-v4-0.5-00000000000-20210804T225222Z-avarab@gmail.com>\n\n> * ab/config-based-hooks-base (2021-08-03) 36 commits\n> [...]\n>  Restructuring of (a subset of) Emily's config-based-hooks series,\n>  to demonstrate that a series can be presented as a more logical and\n>  focused progression.\n>\n>  Waiting for reviews.\n\nSee above comment for ab/config-based-hooks-base.\n\n> * ab/serve-cleanup (2021-08-05) 10 commits\n>  - upload-pack: document and rename --advertise-refs\n>  - serve.[ch]: remove \"serve_options\", split up --advertise-refs code\n>  - {upload,receive}-pack tests: add --advertise-refs tests\n>  - serve.c: move version line to advertise_capabilities()\n>  - serve: move transfer.advertiseSID check into session_id_advertise()\n>  - serve.[ch]: don't pass \"struct strvec *keys\" to commands\n>  - serve: use designated initializers\n>  - transport: use designated initializers\n>  - transport: rename \"fetch\" in transport_vtable to \"fetch_refs\"\n>  - serve: mark has_capability() as static\n>\n>  Code clean-up around \"git serve\".\n>\n>  Expecting a reroll.\n\n(Summary copied from <87v93wflm0.fsf@evledraar.gmail.com>)\n\nThe \"Expecting a reroll\" here was added in response to (I think) my\ncommentary in <87wnp1mqv2.fsf@evledraar.gmail.com> that I'd re-roll it,\nbut the already picked up v4 is that re-roll:\n<cover-v4-00.10-00000000000-20210805T011823Z-avarab@gmail.com>\n\n> * ab/test-tool-cache-cleanup (2021-08-24) 4 commits\n>  - read-cache perf: add a perf test for refresh_index()\n>  - test-tool: migrate read-cache-again to parse_options()\n>  - test-tool: migrate read-cache-perf to parse_options()\n>  - test-tool: split up test-tool read-cache\n>\n>  Test code shuffling.\n\nI had a \"take it or leave it\" comment at\n<878s0nz5q2.fsf@evledraar.gmail.com>.\n\n> * ab/pack-objects-stdin (2021-07-09) 5 commits\n>  - pack-objects.c: make use of REV_INFO_STDIN_LINE_PROCESS\n>  - pack-objects.c: do stdin parsing via revision.c's API\n>  - revision.[ch]: add a \"handle_stdin_line\" API\n>  - revision.h: refactor \"disable_stdin\" and \"read_from_stdin\"\n>  - upload-pack: run is_repository_shallow() before setup_revisions()\n>\n>  Introduce handle_stdin_line callback to revision API and uses it.\n>\n>  Waiting for reviews.\n\nI had a series waiting to be submitted that depends on this and\nab/bundle-doc, since ab/bundle-doc has landed I think I'll re-roll this\nwith that feature series appended, to see if there's more interest once\nthe end-state I was going for is known...\n\n> * hn/reftable (2021-08-26) 29 commits\n>  - SQUASH??? https://github.com/git/git/runs/3439941236?check_suite_focus=true#step:5:700\n>  - reftable: fixup for new base topic 3/3\n>  - reftable: fixup for new base topic 2/3\n>  - reftable: fixup for new base topic 1/3\n>  - t1404: annotate test cases with REFFILES\n>  - t1401,t2011: parameterize HEAD.lock for REFFILES\n>  - t1301: document what needs to be done for reftable\n>  - Add \"test-tool dump-reftable\" command.\n>  - git-prompt: prepare for reftable refs backend\n>  - refs: RFC: Reftable support for git-core\n>  - reftable: add dump utility\n>  - reftable: implement stack, a mutable database of reftable files.\n>  - reftable: implement refname validation\n>  - reftable: add merged table view\n>  - reftable: add a heap-based priority queue for reftable records\n>  - reftable: reftable file level tests\n>  - reftable: read reftable files\n>  - reftable: generic interface to tables\n>  - reftable: write reftable files\n>  - reftable: a generic binary tree implementation\n>  - reftable: reading/writing blocks\n>  - Provide zlib's uncompress2 from compat/zlib-compat.c\n>  - reftable: (de)serialization for the polymorphic record type.\n>  - reftable: add blocksource, an abstraction for random access reads\n>  - reftable: utility functions\n>  - reftable: add error related functionality\n>  - reftable: RFC: add LICENSE\n>  - init-db: set the_repository->hash_algo early on\n>  - hash.h: provide constants for the hash IDs\n>  (this branch uses ab/refs-errno-cleanup, ab/refs-files-cleanup and hn/refs-errno-cleanup.)\n>\n>  The \"reftable\" backend for the refs API.\n\nHan-Wen: It would be really nice to have this re-rolled sooner than\nlater, my and Junio's \"fixup\" commits at the end are a band-aid, but I\nalready ran into wanting to bisect something between master..seen that\nwas unnecessarily painful due to the series now not compiling without\nthe \"fixup\" commits at the end.\n\n> * ab/refs-files-cleanup (2021-08-25) 13 commits\n> [...]\n> * hn/refs-errno-cleanup (2021-08-25) 4 commits\n> [...]\n>\n>  Futz with the way 'errno' is relied on in the refs API to carry the\n>  failure modes up the callchain.\n\nAs noted in the comment for ab/refs-errno-cleanup above, thanks!\n"},{"id":"434068","messageId":"CAFQ2z_PCUr3D0H-fzfHcFFayzdDJc64=JgVM5_2kuLJn-G9awA@mail.gmail.com","threadId":"56398","inReplyTo":"87tuj7xhqo.fsf@evledraar.gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@google.com","sentAt":"2021-08-30T12:23:20Z","receivedAt":"2021-08-30T12:23:36Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"On Mon, Aug 30, 2021 at 2:03 PM Ævar Arnfjörð Bjarmason\n<avarab@gmail.com> wrote:\n\n> Han-Wen: It would be really nice to have this re-rolled sooner than\n> later, my and Junio's \"fixup\" commits at the end are a band-aid, but I\n> already ran into wanting to bisect something between master..seen that\n> was unnecessarily painful due to the series now not compiling without\n> the \"fixup\" commits at the end.\n\nI am folding in the __FUNCTION__ fix.\n\nHowever, I thought patches should be sent against the master branch\nand not against some intermediate  version of 'seen' ?\n\n-- \nHan-Wen Nienhuys - Google Munich\nI work 80%. Don't expect answers from me on Fridays.\n--\n\nGoogle Germany GmbH, Erika-Mann-Strasse 33, 80636 Munich\n\nRegistergericht und -nummer: Hamburg, HRB 86891\n\nSitz der Gesellschaft: Hamburg\n\nGeschäftsführer: Paul Manicle, Halimah DeLaine Prado\n"},{"id":"434076","messageId":"87o89fxd5l.fsf@evledraar.gmail.com","threadId":"56398","inReplyTo":"CAFQ2z_PCUr3D0H-fzfHcFFayzdDJc64=JgVM5_2kuLJn-G9awA@mail.gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2021-08-30T13:27:03Z","receivedAt":"2021-08-30T13:42:03Z","isPatch":false,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"\nOn Mon, Aug 30 2021, Han-Wen Nienhuys wrote:\n\n> On Mon, Aug 30, 2021 at 2:03 PM Ævar Arnfjörð Bjarmason\n> <avarab@gmail.com> wrote:\n>\n>> Han-Wen: It would be really nice to have this re-rolled sooner than\n>> later, my and Junio's \"fixup\" commits at the end are a band-aid, but I\n>> already ran into wanting to bisect something between master..seen that\n>> was unnecessarily painful due to the series now not compiling without\n>> the \"fixup\" commits at the end.\n>\n> I am folding in the __FUNCTION__ fix.\n>\n> However, I thought patches should be sent against the master branch\n> and not against some intermediate  version of 'seen' ?\n\nNo, per \"Decide what to base your work on\" in\nDocumentation/SubmittingPatches. See the part about \"A new feature\nshould be based on `master` in general[...]\".\n\nIn this case the topic on Junio's side isn't based on \"master\", hence\nthe bisect breakages noted above.\n\nI don't know per the upthread what Junio's intended pace of merging down\nab/refs-files-cleanup and hn/refs-errno-cleanup is, depending on the\nanswer to that perhaps it would be best to wait and re-roll on a new\nmaster.\n\nAlso for any re-roll of hn/refable, see my\n<877dgch4rn.fsf@evledraar.gmail.com> for notes of other breakages in\nit. I also had the impression based on my\n<87h7jqz7k5.fsf@evledraar.gmail.com> and your reply in\n<CAFQ2z_P8vgY0RRT+XSH9K3VDQt39FLqXx6qfeZqaZPkwhq1w+A@mail.gmail.com>\nback in April/May that the intent was to re-roll this topic in a way\nthat would be more split-up as described there.\n\nI don't care much about the exact end-state there, other than:\n\n 1. Trying to land reftable/ in some shape where we're not constantly\n    re-reviewing the \"add upstream library\" part of it.\n\n 2. Not have something like hn/reftable in-tree which per my above is in\n    a demonstrably broken/experimental state, but our docs are in state\n    of noting it like it's just another ref backend. Hence the\n    suggestion of first landing the library with its own tests, getting\n    the integration and GIT_TEST_REFABLE passing, and finally updating\n    docs etc. to advertise the thing to users.\n"},{"id":"434080","messageId":"CAFQ2z_PCubK9GNjwcwoZ0rmpezFsC+inoks462ysjS1L369UeQ@mail.gmail.com","threadId":"56398","inReplyTo":"87o89fxd5l.fsf@evledraar.gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Han-Wen Nienhuys","fromEmail":"hanwen@google.com","sentAt":"2021-08-30T13:58:13Z","receivedAt":"2021-08-30T13:58:29Z","isPatch":false,"sender":{"key":"hanwen@google.com","avatar":"https://avatars.githubusercontent.com/u/31547?v=4"},"body":"On Mon, Aug 30, 2021 at 3:42 PM Ævar Arnfjörð Bjarmason\n<avarab@gmail.com> wrote:\n>\n>\n> On Mon, Aug 30 2021, Han-Wen Nienhuys wrote:\n>\n> > On Mon, Aug 30, 2021 at 2:03 PM Ævar Arnfjörð Bjarmason\n> > <avarab@gmail.com> wrote:\n> >\n> >> Han-Wen: It would be really nice to have this re-rolled sooner than\n> >> later, my and Junio's \"fixup\" commits at the end are a band-aid, but I\n> >> already ran into wanting to bisect something between master..seen that\n> >> was unnecessarily painful due to the series now not compiling without\n> >> the \"fixup\" commits at the end.\n> >\n> > I am folding in the __FUNCTION__ fix.\n> >\n> > However, I thought patches should be sent against the master branch\n> > and not against some intermediate  version of 'seen' ?\n>\n> No, per \"Decide what to base your work on\" in\n> Documentation/SubmittingPatches. See the part about \"A new feature\n> should be based on `master` in general[...]\".\n>\n> In this case the topic on Junio's side isn't based on \"master\", hence\n> the bisect breakages noted above.\n>\n> I don't know per the upthread what Junio's intended pace of merging down\n> ab/refs-files-cleanup and hn/refs-errno-cleanup is, depending on the\n> answer to that perhaps it would be best to wait and re-roll on a new\n> master.\n\nIt's perf season here, so I don't have a lot of time to work on this.\nIt's probably the most efficient use of time to back out the reftable\nseries from seen until the errno refactoring lands in master. I can\nrebase the reftable topic then.\n\n> Also for any re-roll of hn/refable, see my\n> <877dgch4rn.fsf@evledraar.gmail.com> for notes of other breakages in\n> it. I also had the impression based on my\n> <87h7jqz7k5.fsf@evledraar.gmail.com> and your reply in\n> <CAFQ2z_P8vgY0RRT+XSH9K3VDQt39FLqXx6qfeZqaZPkwhq1w+A@mail.gmail.com>\n> back in April/May that the intent was to re-roll this topic in a way\n> that would be more split-up as described there.\n>\n> I don't care much about the exact end-state there, other than:\n>\n>  1. Trying to land reftable/ in some shape where we're not constantly\n>     re-reviewing the \"add upstream library\" part of it.\n\nSure, I can send a separate patch series for adding the library.\n\n-- \nHan-Wen Nienhuys - Google Munich\nI work 80%. Don't expect answers from me on Fridays.\n--\nGoogle Germany GmbH, Erika-Mann-Strasse 33, 80636 Munich\nRegistergericht und -nummer: Hamburg, HRB 86891\nSitz der Gesellschaft: Hamburg\nGeschäftsführer: Paul Manicle, Halimah DeLaine Prado\n"},{"id":"434081","messageId":"593d6312-a190-d73b-5af6-317350b4163f@gmail.com","threadId":"56398","inReplyTo":"xmqq35qr7mq5.fsf@gitster.g","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Derrick Stolee","fromEmail":"stolee@gmail.com","sentAt":"2021-08-30T14:02:09Z","receivedAt":"2021-08-30T14:02:12Z","isPatch":false,"sender":{"key":"stolee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/570044?v=4"},"body":"On 8/29/2021 9:19 PM, Junio C Hamano wrote:\n...\n> I've been a bit under the weather during the last week and wanted to\n> concentrate on what to push out to 'master', so while I may have\n> picked up new topics and replaced existing topics with their new\n> versions, I haven't added or updated my summaries on their doneness\n> to this document.  Help is appreciated.\n\nI hope you feel better!\n\nI haven't seen [1] get picked up yet, but I think it is really\nimportant that it does, as it fixes a segfault in the sparse\nindex when certain hashset resizes occur.\n\n[1] https://lore.kernel.org/git/pull.1017.git.1629136135286.gitgitgadget@gmail.com/\n\nThanks,\n-Stolee\n"},{"id":"434205","messageId":"xmqqtuj6zee2.fsf@gitster.g","threadId":"56398","inReplyTo":"CAFQ2z_PCUr3D0H-fzfHcFFayzdDJc64=JgVM5_2kuLJn-G9awA@mail.gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2021-08-30T23:44:37Z","receivedAt":"2021-08-30T23:44:41Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Han-Wen Nienhuys <hanwen@google.com> writes:\n\n> On Mon, Aug 30, 2021 at 2:03 PM Ævar Arnfjörð Bjarmason\n> <avarab@gmail.com> wrote:\n>\n>> Han-Wen: It would be really nice to have this re-rolled sooner than\n>> later, my and Junio's \"fixup\" commits at the end are a band-aid, but I\n>> already ran into wanting to bisect something between master..seen that\n>> was unnecessarily painful due to the series now not compiling without\n>> the \"fixup\" commits at the end.\n>\n> I am folding in the __FUNCTION__ fix.\n>\n> However, I thought patches should be sent against the master branch\n> and not against some intermediate  version of 'seen' ?\n\nSure, but in this case I think these errno and reftable patches have\nbeen made to build on top of them, forming a single gigantic series.\nHere is what I have for now.\n\n$ git log --first-parent --oneline --decorate master..hn/reftable\n447290b6a4 (hn/reftable) SQUASH??? https://github.com/git/git/run...\nf76d6f0ad8 reftable: fixup for new base topic 3/3\ndd1c4edcf2 reftable: fixup for new base topic 2/3\n3b5bcd75c0 reftable: fixup for new base topic 1/3\n6f5b8c7d12 t1404: annotate test cases with REFFILES\n1de26b03cf t1401,t2011: parameterize HEAD.lock for REFFILES\ned288d74ad t1301: document what needs to be done for reftable\n9e4385c42a Add \"test-tool dump-reftable\" command.\n1792a05f21 git-prompt: prepare for reftable refs backend\n07aab82357 refs: RFC: Reftable support for git-core\na83701eef8 reftable: add dump utility\n385d6c58c5 reftable: implement stack, a mutable database of reftable files.\nb9e7eceb13 reftable: implement refname validation\nb6e5675982 reftable: add merged table view\n38119bdd8d reftable: add a heap-based priority queue for reftable records\nd0c6772ff7 reftable: reftable file level tests\nc6c539dd32 reftable: read reftable files\nf65d21f3b1 reftable: generic interface to tables\n897ad67203 reftable: write reftable files\n015556832e reftable: a generic binary tree implementation\n7c4b155181 reftable: reading/writing blocks\n92c1c3179f Provide zlib's uncompress2 from compat/zlib-compat.c\n784075c5f6 reftable: (de)serialization for the polymorphic record type.\n5440a522c3 reftable: add blocksource, an abstraction for random access reads\ncc2a68a200 reftable: utility functions\n2efae91445 reftable: add error related functionality\naf64fc6ba6 reftable: RFC: add LICENSE\n1ade5fa369 init-db: set the_repository->hash_algo early on\nf39a30dc25 hash.h: provide constants for the hash IDs\n3fde557f7f (ab/refs-errno-cleanup) refs: make errno output explici...\n86c9090d90 refs: explicitly return failure_errno from parse_loose_ref_contents\n30f5e21f7f branch tests: test for errno propagating on failing read\nf3df9ee957 refs: add failure_errno to refs_read_raw_ref() signature\n5b12e16bb1 (hn/refs-errno-cleanup) refs: make errno output explicit for read_raw_ref_fn\n1ae6ed230a refs/files-backend: stop setting errno from lock_ref_oid_basic\n20d422cfd7 refs: remove EINVAL errno output from specification of read_raw_ref_fn\n3fa2e91d17 refs file backend: move raceproof_create_file() here\n48cdcd9ca0 (ab/refs-files-cleanup) refs/files: remove unused \"errno != ENOTDIR\" condition\n245fbba46d refs/files: remove unused \"errno == EISDIR\" code\nff7a2e4dbb refs/files: remove unused \"oid\" in lock_ref_oid_basic()\ncc40b5ce13 refs API: remove OID argument to reflog_expire()\nae35e16cd4 reflog expire: don't lock reflogs using previously seen OID\n7aa7829f75 refs/files: add a comment about refs_reflog_exists() call\n6f45ec88d2 refs: make repo_dwim_log() accept a NULL oid\n81bc122589 refs/debug: re-indent argument list for \"prepare\"\n640d9d55c3 refs/files: remove unused \"skip\" in lock_raw_ref() too\n11e984da07 refs/files: remove unused \"extras/skip\" in lock_ref_oid_basic()\n491ad946b2 refs: drop unused \"flags\" parameter to lock_ref_oid_basic()\n212631ed50 refs/files: remove unused REF_DELETING in lock_ref_oid_basic()\n881aebffcf refs/packet: add missing BUG() invocations to reflog callbacks\n"},{"id":"434209","messageId":"xmqqk0k2zcat.fsf@gitster.g","threadId":"56398","inReplyTo":"593d6312-a190-d73b-5af6-317350b4163f@gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2021-08-31T00:29:46Z","receivedAt":"2021-08-31T00:29:54Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Derrick Stolee <stolee@gmail.com> writes:\n\n> I haven't seen [1] get picked up yet, but I think it is really\n> important that it does, as it fixes a segfault in the sparse\n> index when certain hashset resizes occur.\n\nThanks.\n"},{"id":"434228","messageId":"xmqqeeaaz3i5.fsf@gitster.g","threadId":"56398","inReplyTo":"87tuj7xhqo.fsf@evledraar.gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2021-08-31T03:39:46Z","receivedAt":"2021-08-31T03:39:49Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:\n\n> Also re your <xmqqbl5ml70u.fsf@gitster.g> I'll switch to quoting\n> Message-ID's in that style, and not as\n> https://lore.kernel.org/git/<msgid> links. FWIW I was doing the latter\n> for the benefit of readers on the sidelines, but will switch.\n\nI can deal with either.  What I meant was that often resend of the\npatch outside the context of \"What's cooking\" would be easier to\nfind the patches.\n\n>> * ab/commit-graph-usage (2021-08-25) 7 commits\n>>  - commit-graph: show \"unexpected subcommand\" error\n>>  - commit-graph: show usage on \"commit-graph [write|verify] garbage\"\n>>  - commit-graph: early exit to \"usage\" on !argc\n>>  - multi-pack-index: refactor \"goto usage\" pattern\n>>  - commit-graph: use parse_options_concat()\n>>  - commit-graph: remove redundant handling of -h\n>>  - commit-graph: define common usage with a macro\n>\n> Taylor, SZEDER: That's at\n> <cover-v4-0.7-00000000000-20210823T122854Z-avarab@gmail.com>, you\n> reviwed the earlier\n> <cover-0.6-00000000000-20210720T113707Z-avarab@gmail.com>, what do you\n> think about this version?\n\n>> * ab/unbundle-progress (2021-08-27) 5 commits\n>\n> This has outstanding feedback at\n> <cover-v3-0.5-00000000000-20210826T140414Z-avarab@gmail.com> that I need\n> to respond to.\n\nOK.\n\n>> * zh/cherry-pick-advice (2021-08-23) 1 commit\n>>  - cherry-pick: use better advice message\n>>\n>>  The advice message that \"git cherry-pick\" gives when it asks\n>>  conflicted replay of a commit to be resolved by the end user has\n>>  been updated.\n>>\n>>  Will merge to 'next'?\n>\n> I think so, I looked it over as part of browsing advice()-related\n> changes, looks good to me.\n\nThanks.\n\n>> * es/config-based-hooks (2021-08-19) 7 commits\n>>  - hook: allow out-of-repo 'git hook' invocations\n>>  - hook: include hooks from the config\n>>  - hook: allow running non-native hooks\n>>  - hook: introduce \"git hook list\"\n>>  - hook: allow parallel hook execution\n>>  - hook: run a list of hooks instead\n>>  - Merge branch 'ab/config-based-hooks-base' into es/config-based-hooks\n>>  (this branch uses ab/config-based-hooks-base.)\n>>\n>>  Revamp the hooks subsystem to allow multiple of them to trigger\n>>  upon the same event and control via the configuration variables.\n>>\n>>  Will merge to 'next'?\n>>  cf. <87v93wflm0.fsf@evledraar.gmail.com>\n>\n> This needs a re-roll based on my comments in reply to\n> <20210819033450.3382652-1-emilyshaffer@google.com>. It's mostly ready as\n> far as the end-state is concerneb, but e.g. will break \"rebase\" (a\n> commit in the middle doesn't compile), leaks memory etc.\n>\n> It needs a re-roll of ab/config-based-hooks-base, which I was waiting on\n> some of Emily's feedback to do. Looks like there's no outstanding things\n> there, so iwll work on that SOON.\n\nOK, thanks.  Will mark both as expecting reroll on my end.\n\n\n>> * js/advise-when-skipping-cherry-picked (2021-08-10) 2 commits\n>>  - SQUASH???\n>>  - sequencer: advise if skipping cherry-picked commit\n>>\n>>  \"git rebase\" by default skips changes that are equivalent to\n>>  commits that are already in the history the branch is rebased onto;\n>>  give messages when this happens to let the users be aware of\n>>  skipped commits, and also teach them how to tell \"rebase\" to keep\n>>  duplicated changes.\n>\n> This LGTM with your proposed obviously-correct squash.\n>\n> Re comment about ab/retire-advice-config above: I could also just fold\n> this into that series if you'd prefer, i.e. it would be one way to deal\n> with the only outstanding merge conflict in advice.c between\n> master..seen.\n\nLet's see how far we can go with these two as separate topics; I do\nnot foresee much issues in either topic and can advance them to\n'next' soonish.\n\n>> * cb/makefile-apple-clang (2021-08-06) 3 commits\n>>  - build: catch clang that identifies itself as \"$VENDOR clang\"\n>>  - build: clang version may not be followed by extra words\n>>  - build: update detect-compiler for newer Xcode version\n>>\n>>  Build update.\n>>\n>>  Will merge to 'next'.\n>\n> Makes sense. Any reason other than lack of time that you opted not to go\n> for the IMO simpler approach I suggested in\n> <87bl6aypke.fsf@evledraar.gmail.com>?\n\nI just didn't see the need for this update to be so big to deserve\nsuch a total rewrite.\n\n>> * ab/lib-subtest (2021-08-05) 11 commits\n>>  - test-lib tests: assert 1 exit code, not non-zero\n>>  - test-lib tests: refactor common part of check_sub_test_lib_test*()\n>>  - test-lib tests: avoid subshell for \"test_cmp\" for readability\n>>  - test-lib tests: assert no copy/pasted mock test code\n>>  - test-lib tests: get rid of copy/pasted mock test code\n>>  - test-lib tests: don't provide a description for the sub-tests\n>>  - test-lib tests: stop using a subshell in write_sub_test_lib_test()\n>>  - test-lib tests: split up \"write and run\" into two functions\n>>  - test-lib tests: move \"run_sub_test\" to a new lib-subtest.sh\n>>  - Merge branch 'ps/t0000-output-directory-fix' into ab/lib-subtest\n>>  - Merge branch 'jk/t0000-subtests-fix' into ab/lib-subtest\n>>\n>>  Updates to the tests in t0000 to test the test framework.\n>\n> I think with my re-roll at\n> <cover-v3-0.9-0000000000-20210805T103237Z-avarab@gmail.com> it should be\n> OK to declare this good to go sooner than later. I.e. the only trouble I\n> can imagine this causing in\n> <patch-v3-6.9-bc79b29f3c-20210805T103237Z-avarab@gmail.com> is now easy\n> to revert in isolation.\n\nWhat's queued is v3, I think.  In the list of messages in the thread\non page\n\n  https://lore.kernel.org/git/cover-v3-0.9-0000000000-20210805T103237Z-avarab@gmail.com/\n\nit is still a bit disturbing to see these three versions were sent\nwithout much reaction to the list.\n\n>> * ab/make-tags-cleanup (2021-08-05) 5 commits\n>>  - Makefile: normalize clobbering & xargs for tags targets\n>>  - Makefile: remove \"cscope.out\", not \"cscope*\" in cscope.out target\n>>  - Makefile: don't use \"FORCE\" for tags targets\n>>  - Makefile: add QUIET_GEN to \"cscope\" target\n>>  - Makefile: move \".PHONY: cscope\" near its target\n>>\n>>  Build clean-up for \"make tags\" and friends.\n>>\n>>  Expecting a reroll.\n>>  4/5 may want a minor tweak to the log and the patch text but otherwise looks good.\n>\n> (Summary copied from <87v93wflm0.fsf@evledraar.gmail.com>)\n>\n> This entire comment has been in What's Cooking since v3 of the series,\n> but v4 has been out since August 4th:\n> <cover-v4-0.5-00000000000-20210804T225222Z-avarab@gmail.com>\n\nYou're right.  The topic branch has the v4 but the comment in the\nWhat's cooking report is simply stale.\n\n>> * ab/test-tool-cache-cleanup (2021-08-24) 4 commits\n>>  - read-cache perf: add a perf test for refresh_index()\n>>  - test-tool: migrate read-cache-again to parse_options()\n>>  - test-tool: migrate read-cache-perf to parse_options()\n>>  - test-tool: split up test-tool read-cache\n>>\n>>  Test code shuffling.\n>\n> I had a \"take it or leave it\" comment at\n> <878s0nz5q2.fsf@evledraar.gmail.com>.\n\nThanks, I'd eject it then.  It should be easy to send in updates\nwhen the tree is otherwise more quiescent.\n"},{"id":"434369","messageId":"20210831220208.3924051-1-jonathantanmy@google.com","threadId":"56398","inReplyTo":"xmqq35qr7mq5.fsf@gitster.g","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Jonathan Tan","fromEmail":"jonathantanmy@google.com","sentAt":"2021-08-31T22:02:08Z","receivedAt":"2021-08-31T22:02:20Z","isPatch":false,"sender":{"key":"jonathantanmy@fastmail.com","avatar":null},"body":"> * ka/want-ref-in-namespace (2021-08-13) 3 commits\n>  - docs: clarify the interaction of transfer.hideRefs and namespaces\n>  - upload-pack.c: treat want-ref relative to namespace\n>  - t5730: introduce fetch command helper\n> \n>  \"git upload-pack\" which runs on the other side of \"git fetch\"\n>  forgot to take the ref namespaces into account when handling\n>  want-ref requests.\n\nSorry for not being able to look at this until now, but:\n\nReviewed-by: Jonathan Tan <jonathantanmy@google.com>\n\nThanks for addressing my comment about the failing tests to be written\nin success/failure pairs [1] - I see that that has been done in patch 2.\n\n[1] https://lore.kernel.org/git/20210802210644.3432544-1-jonathantanmy@google.com/\n"},{"id":"434388","messageId":"20210901050406.GB76263@szeder.dev","threadId":"56398","inReplyTo":"87tuj7xhqo.fsf@evledraar.gmail.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"SZEDER Gábor","fromEmail":"szeder.dev@gmail.com","sentAt":"2021-09-01T05:04:06Z","receivedAt":"2021-09-01T05:04:11Z","isPatch":false,"sender":{"key":"szeder.dev@gmail.com","avatar":"https://avatars.githubusercontent.com/u/116324?v=4"},"body":"On Mon, Aug 30, 2021 at 01:00:46PM +0200, Ævar Arnfjörð Bjarmason wrote:\n> \n> On Sun, Aug 29 2021, Junio C Hamano wrote:\n\n> > * ab/only-single-progress-at-once (2021-07-23) 8 commits\n> >  - progress.c: add & assert a \"global_progress\" variable\n> >  - pack-bitmap-write.c: add a missing stop_progress()\n> >  - progress.c: add temporary variable from progress struct\n> >  - progress.c: stop eagerly fflush(stderr) when not a terminal\n> >  - progress.c: call progress_interval() from progress_test_force_update()\n> >  - progress.c: move signal handler functions lower\n> >  - progress.c tests: test some invalid usage\n> >  - progress.c tests: make start/stop verbs on stdin\n> >\n> >  Further tweaks on progress API.\n> \n> (Summary copied from <87v93wflm0.fsf@evledraar.gmail.com>)\n> \n> The changes are rather straightforward, see\n> <cover-0.8-0000000000-20210722T125012Z-avarab@gmail.com>; so if anyone's\n> interested in reviewing them.\n> \n> There's been no reports of anyone running into the new BUG() assertion\n> in 8/8 of it: <patch-8.8-1a14176bee-20210722T125012Z-avarab@gmail.com>\n\nPlease don't advance this to next yet.  I've found some issues with\nit, but not the time to raise them.\n\n"},{"id":"434450","messageId":"xmqqbl5cs5v9.fsf@gitster.g","threadId":"56398","inReplyTo":"20210831220208.3924051-1-jonathantanmy@google.com","subject":"Re: What's cooking in git.git (Aug 2021, #09; Sun, 29)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2021-09-01T14:55:06Z","receivedAt":"2021-09-01T14:55:12Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jonathan Tan <jonathantanmy@google.com> writes:\n\n>> * ka/want-ref-in-namespace (2021-08-13) 3 commits\n>>  - docs: clarify the interaction of transfer.hideRefs and namespaces\n>>  - upload-pack.c: treat want-ref relative to namespace\n>>  - t5730: introduce fetch command helper\n>> \n>>  \"git upload-pack\" which runs on the other side of \"git fetch\"\n>>  forgot to take the ref namespaces into account when handling\n>>  want-ref requests.\n>\n> Sorry for not being able to look at this until now, but:\n>\n> Reviewed-by: Jonathan Tan <jonathantanmy@google.com>\n>\n> Thanks for addressing my comment about the failing tests to be written\n> in success/failure pairs [1] - I see that that has been done in patch 2.\n>\n> [1] https://lore.kernel.org/git/20210802210644.3432544-1-jonathantanmy@google.com/\n\nThanks.  Will \"rebase -i (reword)\" your Reviewed-by in and then\nadvance the topic to 'next'.\n\n"}]}