{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":385586,"defaultBranch":"master","name":"git","ownerLogin":"gitster","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2009-11-25T19:20:49.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/54884?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1726872579.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"082caf527ea769635e8c46d0cc181c844c50defd","ref":"refs/heads/pw/submodule-process-sigpipe","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"submodule status: propagate SIGPIPE\n\nIt has been reported than running\n\n git submodule status --recurse | grep -q ^+\n\nresults in an unexpected error message\n\n fatal: failed to recurse into submodule $submodule\n\nWhen \"git submodule--helper\" recurses into a submodule it creates a\nchild process. If that process fails then the error message above is\ndisplayed by the parent. In the case above the child is killed by\nSIGPIPE as \"grep -q\" exits as soon as it sees the first match. Fix this\nby propagating SIGPIPE so that it is visible to the process running\ngit. We could propagate other signals but I'm not sure there is much\nvalue in doing that. In the common case of the user pressing Ctrl-C or\nCtrl-\\ then SIGINT or SIGQUIT will be sent to the foreground process\ngroup and so the parent process will receive the same signal as the\nchild.\n\nReported-by: Matt Liberty \nSigned-off-by: Phillip Wood \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"submodule status: propagate SIGPIPE"}},{"before":null,"after":"2eeb29702e8fb0d934a4c2dc9d2a049a613d66e9","ref":"refs/heads/cb/ci-freebsd-13-4","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"ci: update FreeBSD image to 13.4\n\nFreeBSD 13.4 was recently released, and that means the version\nof the image used by this job (13.2) will be out of support soon.\n\nUpdate it before the job starts failing because packages are no\nlonger compatible or the image gets retired by the provider since\nit is now EOL.\n\nSigned-off-by: Carlo Marcelo Arenas Belón \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"ci: update FreeBSD image to 13.4"}},{"before":null,"after":"4030e944021754da6e5c69a24a5a9a8ef77b0689","ref":"refs/heads/wip/test-signal-name","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"test-tool: signal-name option\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"test-tool: signal-name option"}},{"before":"be2c089f60108e5855a460d11162601a899f8345","after":"5a0141bc6eb055e4a6d3362e509dc5d02e3b9ef6","ref":"refs/heads/jch","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'ps/reftable-concurrent-writes' into jch\n\nGive timeout to the locking code to write to reftable.\n\n* ps/reftable-concurrent-writes:\n refs/reftable: reload locked stack when preparing transaction\n reftable/stack: allow locking of outdated stacks\n refs/reftable: introduce \"reftable.lockTimeout\"","shortMessageHtmlLink":"Merge branch 'ps/reftable-concurrent-writes' into jch"}},{"before":"6531f31ef3bead57a3255fa08efa6e7553c5a9a7","after":"94b60adee30619a05296cf5ed6addb0e6d4e25dc","ref":"refs/heads/master","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"push","commitsCount":38,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"The 19th batch\n\nMerge the topics that have been cooking since 2024-09-13 or so in\n'next'.\n\nLet's try a new workflow to update the maintenance track by removing\nthe \"merge ... later to maint\" comments from the draft release notes\non the 'master' track.\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"The 19th batch"}},{"before":"d892dcdcdd656c16370b586a56702de7f4047d07","after":"96924663e5beccee39a6b05a056c6eb90f5c7fd4","ref":"refs/heads/next","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Sync with 'master'","shortMessageHtmlLink":"Sync with 'master'"}},{"before":null,"after":"9d57a5f5878508f907dbcb0d1b49fe987774781f","ref":"refs/heads/cw/fix-reachable-in-repo-with-promisor","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"fetch-pack.c: do not declare local commits as \"have\" in partial repos\n\nIn a partial repository, creating a local commit and then fetching\ncauses the following state to occur:\n\ncommit tree blob\n C3 ---- T3 -- B3 (fetched from remote, in promisor pack)\n |\n C2 ---- T2 -- B2 (created locally, in non-promisor pack)\n |\n C1 ---- T1 -- B1 (fetched from remote, in promisor pack)\n\nDuring garbage collection, parents of promisor objects are marked as\nUNINTERESTING and are subsequently garbage collected. In this case, C2\nwould be deleted and attempts to access that commit would result in \"bad\nobject\" errors (originally reported here[1]).\n\nThis is not a bug in gc since it should be the case that parents of\npromisor objects are also promisor objects (fsck assumes this as\nwell). When promisor objects are fetched, the state of the repository\nshould ensure that the above holds true. Therefore, do not declare local\ncommits as \"have\" in partial repositores so they can be fetched into a\npromisor pack.\n\n[1] https://lore.kernel.org/git/20240802073143.56731-1-hanyang.tony@bytedance.com/\n\nHelped-by: Jonathan Tan \nSigned-off-by: Calvin Wan \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"fetch-pack.c: do not declare local commits as \"have\" in partial repos"}},{"before":"cf50d3d4a42ad947fb09c3c2a5fbf6f50d50bbc6","after":"b52518a6ae6abec6d29a257a26e538d945cc6840","ref":"refs/heads/seen","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'ds/background-maintenance-with-credential' into seen\n\n* ds/background-maintenance-with-credential:\n scalar: configure maintenance during 'reconfigure'\n maintenance: add custom config to background jobs\n credential: add new interactive config option","shortMessageHtmlLink":"Merge branch 'ds/background-maintenance-with-credential' into seen"}},{"before":null,"after":"b9183b0a02c59d86b6d9e4e0da996c8909ed6fa8","ref":"refs/heads/ds/background-maintenance-with-credential","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"scalar: configure maintenance during 'reconfigure'\n\nThe 'scalar reconfigure' command is intended to update registered repos\nwith the latest settings available. However, up to now we were not\nreregistering the repos with background maintenance.\n\nIn particular, this meant that the background maintenance schedule would\nnot be updated if there are improvements between versions.\n\nBe sure to register repos for maintenance during the reconfigure step.\n\nSigned-off-by: Derrick Stolee \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"scalar: configure maintenance during 'reconfigure'"}},{"before":null,"after":"e6fe1c20471cde7ff72c7e1a6929ebf536854a82","ref":"refs/heads/wip/maint-2.46.2","pushedAt":"2024-09-20T22:49:39.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Git 2.46.2\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"Git 2.46.2"}},{"before":null,"after":"0ab53941e160d0848c63b7d4a43e53fe329cd2b4","ref":"refs/heads/jc/breaking-changes-early-adopter-option","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"BreakingChanges: early adopter option\n\nDiscussing the desire to make breaking changes, declaring that\nbreaking changes are made at a certain version boundary, and\nrecording these decisions in this document, are necessary but not\nsufficient. We need to make sure that we can implement, test, and\ndeploy such impactful changes.\n\nFormalize the mechanism based on the `feature.*` configuration\nvariable to allow early adopters to opt into the breaking change in\na version of Git before the planned version for the breaking change.\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"BreakingChanges: early adopter option"}},{"before":null,"after":"20652956420f7bd64339b4566623c293016e86b7","ref":"refs/heads/ak/refs-symref-referent-typofix","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"ref-filter: fix a typo\n\nFix a typo in comments.\n\nSigned-off-by: Andrew Kreimer \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"ref-filter: fix a typo"}},{"before":"f17429dcfe1d4f6558ae9bcfc5bcea2d4799f5b4","after":"2abf1cb1e7700ed437be9ee83d3af5ee906df47c","ref":"refs/heads/ds/pack-name-hash-tweak","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"test-tool: add helper for name-hash values\n\nAdd a new test-tool helper, name-hash, to output the value of the\nname-hash algorithms for the input list of strings, one per line.\n\nSince the name-hash values can be stored in the .bitmap files, it is\nimportant that these hash functions do not change across Git versions.\nAdd a simple test to t5310-pack-bitmaps.sh to provide some testing of\nthe current values. Due to how these functions are implemented, it would\nbe difficult to change them without disturbing these values.\n\nCreate a performance test that uses test_size to demonstrate how\ncollisions occur for these hash algorithms. This test helps inform\nsomeone as to the behavior of the name-hash algorithms for their repo\nbased on the paths at HEAD.\n\nMy copy of the Git repository shows modest statistics around the\ncollisions of the default name-hash algorithm:\n\nTest this tree\n-----------------------------------------------------------------\n5314.1: paths at head 4.5K\n5314.2: number of distinct name-hashes 4.1K\n5314.3: number of distinct full-name-hashes 4.5K\n5314.4: maximum multiplicity of name-hashes 13\n5314.5: maximum multiplicity of fullname-hashes 1\n\nHere, the maximum collision multiplicity is 13, but around 10% of paths\nhave a collision with another path.\n\nIn a more interesting example, the microsoft/fluentui [1] repo had these\nstatistics at time of committing:\n\nTest this tree\n-----------------------------------------------------------------\n5314.1: paths at head 19.6K\n5314.2: number of distinct name-hashes 8.2K\n5314.3: number of distinct full-name-hashes 19.6K\n5314.4: maximum multiplicity of name-hashes 279\n5314.5: maximum multiplicity of fullname-hashes 1\n\n[1] https://github.com/microsoft/fluentui\n\nThat demonstrates that of the nearly twenty thousand path names, they\nare assigned around eight thousand distinct values. 279 paths are\nassigned to a single value, leading the packing algorithm to sort\nobjects from those paths together, by size.\n\nIn this repository, no collisions occur for the full-name-hash\nalgorithm.\n\nIn a more extreme example, an internal monorepo had a much worse\ncollision rate:\n\nTest this tree\n-----------------------------------------------------------------\n5314.1: paths at head 221.6K\n5314.2: number of distinct name-hashes 72.0K\n5314.3: number of distinct full-name-hashes 221.6K\n5314.4: maximum multiplicity of name-hashes 14.4K\n5314.5: maximum multiplicity of fullname-hashes 2\n\nEven in this repository with many more paths at HEAD, the collision rate\nwas low and the maximum number of paths being grouped into a single\nbucket by the full-path-name algorithm was two.\n\nSigned-off-by: Derrick Stolee \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"test-tool: add helper for name-hash values"}},{"before":null,"after":"36d9898061f8f70e5f6825282498b9dbba5452b1","ref":"refs/heads/ps/reftable-concurrent-writes","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"refs/reftable: reload locked stack when preparing transaction\n\nWhen starting a reftable transaction we lock all stacks we are about to\nmodify. While it may happen that the stack is out-of-date at this point\nin time we don't really care: transactional updates encode the expected\nstate of a certain reference, so all that we really want to verify is\nthat the _current_ value matches that expected state.\n\nPass `REFTABLE_STACK_NEW_ADDITION_RELOAD` when locking the stack such\nthat an out-of-date stack will be reloaded after having been locked.\nThis change is safe because all verifications of the expected state\nhappen after this step anyway.\n\nAdd a testcase that verifies that many writers are now able to write to\nthe stack concurrently without failures and with a deterministic end\nresult.\n\nSigned-off-by: Patrick Steinhardt \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"refs/reftable: reload locked stack when preparing transaction"}},{"before":null,"after":"5c5d29e1c4832a4ce754d1b281e621fa4dcb4108","ref":"refs/heads/ps/ci-gitlab-upgrade","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"gitlab-ci: upgrade machine type of Linux runners\n\nWith the recent effort to make the test suite free of memory leaks we\nnow run a lot more of test suites with the leak-sanitizer enabled. While\nwe were originally only executing around 23000 tests, we're now at 30000\ntests. Naturally, this has a significant impact on the runtime of such a\ntest run.\n\nNaturally, this impact can also be felt for our leak-checking CI jobs.\nWhile macOS used to be the slowest-executing job on GitLab CI with ~15\nminutes of runtime, nowadays it is our leak checks which take around 45\nto 55 minutes.\n\nOur Linux runners for GitLab CI are untagged, which means that they\ndefault to the \"small\" machine type with two CPU cores [1]. Upgrade\nthese to the \"medium\" runner, which provide four CPU cores and which\nshould thus provide a noticeable speedup.\n\nIn theory, we could upgrade to an ever larger machine than that. The\nofficial mirror [2] has an Ultimate license, so we could get up to 128\ncores. But anybody running a fork of the Git project without such a\nlicense wouldn't be able to use those beefier machines and thus their\npipelines would fail.\n\n[1]: https://docs.gitlab.com/ee/ci/runners/hosted_runners/linux.html\n[2]: https://gitlab.com/git-scm/git/\n\nSigned-off-by: Patrick Steinhardt \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"gitlab-ci: upgrade machine type of Linux runners"}},{"before":"e2cdf94ade6570ecdb2ee95a8ae5ceec9a3bed8a","after":"be2c089f60108e5855a460d11162601a899f8345","ref":"refs/heads/jch","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'ps/reftable-concurrent-writes' into jch\n\n* ps/reftable-concurrent-writes:\n refs/reftable: reload locked stack when preparing transaction\n reftable/stack: allow locking of outdated stacks\n refs/reftable: introduce \"reftable.lockTimeout\"","shortMessageHtmlLink":"Merge branch 'ps/reftable-concurrent-writes' into jch"}},{"before":"35b7d19b5f45aa4ad8f873af66f3fac56e5cfc56","after":"cf50d3d4a42ad947fb09c3c2a5fbf6f50d50bbc6","ref":"refs/heads/seen","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'jc/strbuf-commented-something' into seen\n\nUpdate two functions whose callers always pass the same global\nvariable to omit the redundant parameter and use the global in the\ncallee themselves.\n\n* jc/strbuf-commented-something:\n strbuf: retire strbuf_commented_lines()\n strbuf: retire strbuf_commented_addf()","shortMessageHtmlLink":"Merge branch 'jc/strbuf-commented-something' into seen"}},{"before":"cf0dbffa2232233e2e6152dc28148e12ec9aa900","after":"d892dcdcdd656c16370b586a56702de7f4047d07","ref":"refs/heads/next","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"push","commitsCount":29,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'jc/cmake-unit-test-updates' into next\n\nCMake adjustments for recent changes around unit tests.\n\n* jc/cmake-unit-test-updates:\n cmake: generalize the handling of the `UNIT_TEST_OBJS` list\n cmake: stop looking for `REFTABLE_TEST_OBJS` in the Makefile\n cmake: rename clar-related variables to avoid confusion","shortMessageHtmlLink":"Merge branch 'jc/cmake-unit-test-updates' into next"}},{"before":null,"after":"e02cc08a88e7d0323391e68937e75c11e3e3cfef","ref":"refs/heads/ak/typofix-2.46-maint","pushedAt":"2024-09-19T23:46:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"upload-pack: fix a typo\n\nFix a typo in comments.\n\nSigned-off-by: Andrew Kreimer \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"upload-pack: fix a typo"}},{"before":"295c5f1c2b0726ff1f9d6880e45687b6ff094a8c","after":"35b7d19b5f45aa4ad8f873af66f3fac56e5cfc56","ref":"refs/heads/seen","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'jc/cmake-unit-test-updates' into seen\n\n* jc/cmake-unit-test-updates:\n cmake: generalize the handling of the `UNIT_TEST_OBJS` list\n cmake: stop looking for `REFTABLE_TEST_OBJS` in the Makefile\n cmake: rename clar-related variables to avoid confusion","shortMessageHtmlLink":"Merge branch 'jc/cmake-unit-test-updates' into seen"}},{"before":"8b619e90eeddf19e53cd07f224267a291609ee89","after":"3fc4eab466a3758ff57d8c823f244e29550a48d2","ref":"refs/heads/ps/apply-leakfix","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"apply: refactor `struct image` to use a `struct strbuf`\n\nThe `struct image` uses a character array to track the pre- or postimage\nof a patch operation. This has multiple downsides:\n\n - It is somewhat hard to track memory ownership. In fact, we have\n several memory leaks in git-apply(1) because we do not (and cannot\n easily) free the buffer in all situations.\n\n - We have to reinvent the wheel and manually implement a lot of\n functionality that would already be provided by `struct strbuf`.\n\n - We have to carefully track whether `update_pre_post_images()` can do\n an in-place update of the postimage or whether it has to allocate a\n new buffer for it.\n\nThis is all rather cumbersome, and especially `update_pre_post_images()`\nis really hard to understand as a consequence even though what it is\ndoing is rather trivial.\n\nRefactor the code to use a `struct strbuf` instead, addressing all of\nthe above. Like this we can easily perform in-place updates in all\nsituations, the logic to perform those updates becomes way simpler and\nthe lifetime of the buffer becomes a ton easier to track.\n\nThis refactoring also plugs some leaking buffers as a side effect.\n\nSigned-off-by: Patrick Steinhardt \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"apply: refactor struct image to use a struct strbuf"}},{"before":"3fb745257b30a643ee78c9a7c52ab107c82e4745","after":"6531f31ef3bead57a3255fa08efa6e7553c5a9a7","ref":"refs/heads/master","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"push","commitsCount":21,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"The eighteenth batch\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"The eighteenth batch"}},{"before":"c2ba5b4d81c3d51ff6a84bb44a5a54295077c1d9","after":"75371bde0ab7581e39b080c0e3e26c718a99ebf0","ref":"refs/heads/sj/ref-contents-check","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"ref: add symlink ref content check for files backend\n\nWe have already introduced \"files_fsck_symref_target\". We should reuse\nthis function to handle the symrefs which use legacy symbolic links. We\nshould not check the trailing garbage for symbolic refs. Add a new\nparameter \"symbolic_link\" to disable some checks which should only be\nexecuted for textual symrefs.\n\nWe firstly use the \"strbuf_add_real_path\" to resolve the symlink and\nget the absolute path \"referent_path\" which the symlink ref points\nto. Then we can get the absolute path \"abs_gitdir\" of the \"gitdir\".\nBy combining \"referent_path\" and \"abs_gitdir\", we can extract the\n\"referent\". Thus, we can reuse \"files_fsck_symref_target\" function to\nseamlessly check the symlink refs.\n\nBecause we consider deprecating writing the symbolic links and for\nreading, we may or may not deprecate. We first need to asses whether\nsymbolic links may still be used. So, add a new fsck message\n\"symlinkRef(INFO)\" to let the user be aware of this information.\n\nMentored-by: Patrick Steinhardt \nMentored-by: Karthik Nayak \nSigned-off-by: shejialuo \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"ref: add symlink ref content check for files backend"}},{"before":null,"after":"8afda42fce60126fe6d3bde86a44d8db63a77c08","ref":"refs/heads/jc/cmake-unit-test-updates","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"cmake: generalize the handling of the `UNIT_TEST_OBJS` list\n\nIn a15d4465a991 (cmake: also build unit tests, 2023-09-25), I\naccommodated the CMake definition. Seeing that a `UNIT_TEST_OBJS` list\nwas introduced that was built by transforming the `UNIT_TEST_PROGRAMS`\nlist and then adding a single, hard-coded file\n(\"t/unit-tests/test-lib.c\"), I decided to hard-code that in the CMake\ndefinition, too.\n\nThe reason why I hard-coded it instead of imitating the\n`parse_makefile_for_sources()` paradigm that was used elsewhere when\nusing the `Makefile` as source of truth for given lists of files: This\nfunction expects _only_ hard-coded values, and that transformed\n`UNIT_TEST_PROGRAMS` list complicated everything.\n\nIn 872721538c26 (cmake: fix build of `t-oidtree`, 2024-07-12), I\naccommodated the CMake definition again, after seeing that the\n`UNIT_TEST_OBJS` was still defined via that transformed list but now\nappending _two_ hard-coded files (\"t/unit-tests/lib-oid.c\" joined the\nfray).\n\nIn 428672a3b16 (Makefile: stop listing test library objects twice,\n2024-09-16), the `Makefile` was changed so that `UNIT_TEST_OBJS` is\nfinally only constructed using hard-coded file names just like the other\n`*_OBJS` variables. I missed that and therefore did not adjust the CMake\ndefinition. Besides, the code was working, so there was no real need to\nadjust it.\n\nWith a4f50bb1e9b (t/unit-tests: introduce reftable library, 2024-09-16),\nhowever, the `UNIT_TEST_OBJS` list became a trio, and the CMake\ndefinition has to be adjusted again. Now that we can use the\n`parse_makefile_for_sources()` function without many complications,\nlet's do that.\n\nSigned-off-by: Johannes Schindelin \nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"cmake: generalize the handling of the UNIT_TEST_OBJS list"}},{"before":null,"after":"b9b9fea072d9f899e7b8b9f8b9310ad47491fbbb","ref":"refs/heads/wip/core-prefer-symlink-refs","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"refs: remove the last remnants of core.preferSymlinkRefs\n\nThis step is for some time after Git 3.0.\n\nNow it is almost N years since we removed the support for the\nvariable at Git 3.0 boundary, it is time to remove the warning about\nthis ancient variable and the behaviour change we went through with\nit.\n\nThis concludes the journey to make sure we no longer create a\nsymbolic link to represent a symref, while still recognising\nexisting ones.\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"refs: remove the last remnants of core.preferSymlinkRefs"}},{"before":"49944df095da4127d3fff1a596036bf816253b9b","after":"cf0dbffa2232233e2e6152dc28148e12ec9aa900","ref":"refs/heads/next","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"push","commitsCount":19,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Sync with 'master'","shortMessageHtmlLink":"Sync with 'master'"}},{"before":"4240f610787ad64c7b3ec774ede41398ae7f7435","after":"e2cdf94ade6570ecdb2ee95a8ae5ceec9a3bed8a","ref":"refs/heads/jch","pushedAt":"2024-09-19T01:47:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'ps/reftable-alloc-failures' into jch\n\nThe reftable library is now prepared to expect that the memory\nallocation function given to it may fail to allocate and to deal\nwith such an error.\n\n* ps/reftable-alloc-failures: (22 commits)\n reftable: handle trivial allocation failures\n reftable/tree: handle allocation failures\n reftable/pq: handle allocation failures when adding entries\n reftable/block: handle allocation failures\n reftable/blocksource: handle allocation failures\n reftable/iter: handle allocation failures when creating indexed table iter\n reftable/stack: handle allocation failures in auto compaction\n reftable/stack: handle allocation failures in `stack_compact_range()`\n reftable/stack: handle allocation failures in `reftable_new_stack()`\n reftable/stack: handle allocation failures on reload\n reftable/reader: handle allocation failures in `reader_init_iter()`\n reftable/reader: handle allocation failures for unindexed reader\n reftable/merged: handle allocation failures in `merged_table_init_iter()`\n reftable/writer: handle allocation failures in `reftable_new_writer()`\n reftable/writer: handle allocation failures in `writer_index_hash()`\n reftable/record: handle allocation failures when decoding records\n reftable/record: handle allocation failures on copy\n reftable/basics: handle allocation failures in `parse_names()`\n reftable/basics: handle allocation failures in `reftable_calloc()`\n reftable: introduce `reftable_strdup()`\n ...","shortMessageHtmlLink":"Merge branch 'ps/reftable-alloc-failures' into jch"}},{"before":"16826958c76f0651284b151cd0694900d13bb961","after":"295c5f1c2b0726ff1f9d6880e45687b6ff094a8c","ref":"refs/heads/seen","pushedAt":"2024-09-17T05:36:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'jc/strbuf-commented-something' into seen\n\nUpdate two functions whose callers always pass the same global\nvariable to omit the redundant parameter and use the global in the\ncallee themselves.\n\n* jc/strbuf-commented-something:\n strbuf: retire strbuf_commented_lines()\n strbuf: retire strbuf_commented_addf()","shortMessageHtmlLink":"Merge branch 'jc/strbuf-commented-something' into seen"}},{"before":"3969d78396e707c5a900dd5e15c365c54bef0283","after":"3fb745257b30a643ee78c9a7c52ab107c82e4745","ref":"refs/heads/master","pushedAt":"2024-09-17T05:36:24.000Z","pushType":"push","commitsCount":14,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"ci updates\n\nThis batch is solely to unbreak the 32-bit CI jobs that can no\nlonger work with Ubuntu xenial image that is too ancient.\n\nSigned-off-by: Junio C Hamano ","shortMessageHtmlLink":"ci updates"}},{"before":"afd4818f6ae7538e8e13af27414d25b9f40a11e5","after":"4240f610787ad64c7b3ec774ede41398ae7f7435","ref":"refs/heads/jch","pushedAt":"2024-09-17T05:36:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"gitster","name":"Junio C Hamano","path":"/gitster","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54884?s=80&v=4"},"commit":{"message":"Merge branch 'ps/reftable-alloc-failures' into jch\n\nThe reftable library is now prepared to expect that the memory\nallocation function given to it may fail to allocate and to deal\nwith such an error.\n\n* ps/reftable-alloc-failures: (22 commits)\n reftable: handle trivial allocation failures\n reftable/tree: handle allocation failures\n reftable/pq: handle allocation failures when adding entries\n reftable/block: handle allocation failures\n reftable/blocksource: handle allocation failures\n reftable/iter: handle allocation failures when creating indexed table iter\n reftable/stack: handle allocation failures in auto compaction\n reftable/stack: handle allocation failures in `stack_compact_range()`\n reftable/stack: handle allocation failures in `reftable_new_stack()`\n reftable/stack: handle allocation failures on reload\n reftable/reader: handle allocation failures in `reader_init_iter()`\n reftable/reader: handle allocation failures for unindexed reader\n reftable/merged: handle allocation failures in `merged_table_init_iter()`\n reftable/writer: handle allocation failures in `reftable_new_writer()`\n reftable/writer: handle allocation failures in `writer_index_hash()`\n reftable/record: handle allocation failures when decoding records\n reftable/record: handle allocation failures on copy\n reftable/basics: handle allocation failures in `parse_names()`\n reftable/basics: handle allocation failures in `reftable_calloc()`\n reftable: introduce `reftable_strdup()`\n ...","shortMessageHtmlLink":"Merge branch 'ps/reftable-alloc-failures' into jch"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQyMjo0OTozOS4wMDAwMDBazwAAAAS8bEtL","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMFQyMjo0OTozOS4wMDAwMDBazwAAAAS8bEtL","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xN1QwNTozNjoyNC4wMDAwMDBazwAAAAS4JAMK"}},"title":"Activity · gitster/git"}