-
Notifications
You must be signed in to change notification settings - Fork 703
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
plumbing: resolve non-external delta references #485
Conversation
This commit adds test data for go-git/go-git#485
This commit adds test data for go-git/go-git#485 Note: The pack file in this commit has been specificaly crafted to act as a small reproducible example of a packfile we have seen in the wild. See also: go-git/go-git#484
Can you add a test for this? |
I have prepared a test fixture here: go-git/go-git-fixtures#6 I guess that needs to be merged first before I can write a test here. |
Update go-git to experimental unmerged PR with the fix: go-git/go-git#485 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
Update go-git to experimental unmerged PR with the fix: go-git/go-git#485 Signed-off-by: Timofey Kirillov <timofey.kirillov@flant.com>
I just ran into this problem today and can confirm this PR does fix the issue for me as well. |
I too can confirm that this PR solves an issue with current master. Exhibit: git.PlainClone("/tmp/repo", true, &git.CloneOptions{
URL: "https://github.com/influxdata/line-protocol",
NoCheckout: true,
}) |
I am running to the same problem and it looks like this PR solves it! |
We have also run into this problem. Is there a reason for not merging the PR? |
It would be great if there were tests that could reproduce the error this fixes. |
@pjbgf isn't there one here?: go-git/go-git-fixtures#6 |
@pjbgf yes, that is how I think I'll do the tests. But for that to happen, the fixture needs to be merged first: #485 (comment) |
@ZauberNerd I had a look at this today and can confirm that using your test fixture (and one additional test), this behaviour is fixed and tested for regression. Please add another test in Whilst the other PR is not merged you can add this to the
That would allow for the tests to pass, and for a maintainer to quickly test the entire E2E of this PR. Once the other PR is merged, the above will need to be removed and the |
This commit adds test data for go-git/go-git#485 Note: The pack file in this commit has been specificaly crafted to act as a small reproducible example of a packfile we have seen in the wild. See also: go-git/go-git#484
29ec1bc
to
13fab7b
Compare
@pjbgf I have updated the commit and added a test. |
Fixes "reference delta not found" error. Based on go-git/go-git#485 see go-git/go-git#495 (comment) Signed-off-by: Or Shoval <oshoval@redhat.com>
Until go-git/go-git#485 is fixed since it blocks the auto bumper when cloning the KSD repository. https://github.com/kubevirt/cluster-network-addons-operator/actions/runs/3629947036/jobs/6122730934 Signed-off-by: Or Shoval <oshoval@redhat.com> Signed-off-by: Or Shoval <oshoval@redhat.com>
Hi, Thanks for this great PR |
We also have problems without it, so it would be great if it was merged. |
Not to pile on too much, but is there anything blocking merge of this and go-git/go-git-fixtures#6 which it depends on, @mcuadros @pjbgf? Anecdotally, something appears to have shifted on GitLab's side but non-external delta references seem to be cropping up with vastly higher frequency in GitLab-hosted repositories. Our organization has hit them twice in the last week, and it'd be nice to not litter a bunch of replace directives around to take advantage of this fix. 🙂 |
I can't speak on what is blocking the merge, as the changes looks good to me. However, I don't have write access on this repository nor any official saying on the matter. I did merge these changes on a fork I use (back in December) and so far it seems to be working as intended. So you are probably better off forking the project, and cherry-picking it until it gets merged. |
We also have the problems you describe in combination with GitLab.com |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ZauberNerd can you please rebase and check the nits below.
This has now changed, so I should be able to get this merged once it is rebased. |
Gm, any chance this can be advanced please ? |
In a self-contained pack file delta references might point to base objects stored later in the file. In this case we need to replace placeholders for external refs with the actual base object and update the children references. Fixes: go-git#484 Co-authored-by: Markus Wolf <mail@markus-wolf.de>
13fab7b
to
cdd1e55
Compare
The current failure is not related to the change. I will fix that on a follow-up PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ZauberNerd Thank you very much for working on this and following up with the rebase.
Thanks, this is awesome |
@oshoval in the beginning of next month we should have another version cut. |
Hi, it seems no new release yet ? can you please consider one ? |
…5.7.0 (#17) [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/go-git/go-git/v5](https://togithub.com/go-git/go-git) | require | minor | `v5.6.1` -> `v5.7.0` | copilot:all --- ### Release Notes <details> <summary>go-git/go-git</summary> ### [`v5.7.0`](https://togithub.com/go-git/go-git/releases/tag/v5.7.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.6.1...v5.7.0) #### What's Changed - \*: Add support for initializing SHA256 repositories by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#707 - git: add mirror clone option by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#735 - git: Add support to ls-remote with peeled references. Fixes [#​749](https://togithub.com/go-git/go-git/issues/749) by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#750 - git: fix cloning with branch name by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#755 - git: Worktree, add check to see if file already checked in. Fixes [#​718](https://togithub.com/go-git/go-git/issues/718) by [@​cbbm142](https://togithub.com/cbbm142) in [go-git/go-git#719 - git: Worktree, git grep bare repositories by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#728 - git: Add Depth to SubmoduleUpdateOptions by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#754 - git: Testing, Fix tests not cleaning temp folders by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#769 - git: remote, add support for a configurable timeout. by [@​andrewpollock](https://togithub.com/andrewpollock) in [go-git/go-git#753 - git: Allow Initial Branch to be configurable by [@​techknowlogick](https://togithub.com/techknowlogick) in [go-git/go-git#764 - storage: filesystem/dotgit, Improve load packed-refs by [@​fcharlie](https://togithub.com/fcharlie) in [go-git/go-git#743 - storage: filesystem, Populate index before use. Fixes [#​148](https://togithub.com/go-git/go-git/issues/148) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#722 - plumbing: resolve non-external delta references by [@​ZauberNerd](https://togithub.com/ZauberNerd) in [go-git/go-git#485 - plumbing/transport: fix regression in scp-like match by [@​jotadrilo](https://togithub.com/jotadrilo) in [go-git/go-git#715 - plumbing/transport: Add support for custom proxy settings by [@​aryan9600](https://togithub.com/aryan9600) in [go-git/go-git#744 - \*: small fixes across the codebase by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#770 - \*: bump github.com/cloudflare/circl from 1.1.0 to 1.3.3 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#776 - \*: bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#748 - \*: bump Go version to 1.18 on go.mod by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#774 - \*: add Codeql workflow and bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#775 - ci: fix upstream git build for master branch by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#739 #### New Contributors - [@​ZauberNerd](https://togithub.com/ZauberNerd) made their first contribution in [go-git/go-git#485 - [@​jotadrilo](https://togithub.com/jotadrilo) made their first contribution in [go-git/go-git#715 - [@​fcharlie](https://togithub.com/fcharlie) made their first contribution in [go-git/go-git#743 - [@​AriehSchneier](https://togithub.com/AriehSchneier) made their first contribution in [go-git/go-git#755 - [@​cbbm142](https://togithub.com/cbbm142) made their first contribution in [go-git/go-git#719 - [@​aryan9600](https://togithub.com/aryan9600) made their first contribution in [go-git/go-git#744 - [@​matejrisek](https://togithub.com/matejrisek) made their first contribution in [go-git/go-git#754 - [@​andrewpollock](https://togithub.com/andrewpollock) made their first contribution in [go-git/go-git#753 - [@​techknowlogick](https://togithub.com/techknowlogick) made their first contribution in [go-git/go-git#764 **Full Changelog**: go-git/go-git@v5.6.1...v5.7.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/sheldonhull/az-pr). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ1cGRhdGVkSW5WZXIiOiIzNS4xMDIuMTAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [cloud.google.com/go/pubsub](https://togithub.com/googleapis/google-cloud-go) | require | minor | `v1.30.0` -> `v1.31.0` | | [github.com/go-git/go-git/v5](https://togithub.com/go-git/go-git) | require | minor | `v5.6.1` -> `v5.7.0` | | golang.org/x/sync | require | minor | `v0.1.0` -> `v0.2.0` | | [google.golang.org/api](https://togithub.com/googleapis/google-api-go-client) | require | minor | `v0.120.0` -> `v0.124.0` | --- ### Release Notes <details> <summary>go-git/go-git</summary> ### [`v5.7.0`](https://togithub.com/go-git/go-git/releases/tag/v5.7.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.6.1...v5.7.0) #### What's Changed - \*: Add support for initializing SHA256 repositories by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#707 - git: add mirror clone option by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#735 - git: Add support to ls-remote with peeled references. Fixes [#​749](https://togithub.com/go-git/go-git/issues/749) by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#750 - git: fix cloning with branch name by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#755 - git: Worktree, add check to see if file already checked in. Fixes [#​718](https://togithub.com/go-git/go-git/issues/718) by [@​cbbm142](https://togithub.com/cbbm142) in [go-git/go-git#719 - git: Worktree, git grep bare repositories by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#728 - git: Add Depth to SubmoduleUpdateOptions by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#754 - git: Testing, Fix tests not cleaning temp folders by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#769 - git: remote, add support for a configurable timeout. by [@​andrewpollock](https://togithub.com/andrewpollock) in [go-git/go-git#753 - git: Allow Initial Branch to be configurable by [@​techknowlogick](https://togithub.com/techknowlogick) in [go-git/go-git#764 - storage: filesystem/dotgit, Improve load packed-refs by [@​fcharlie](https://togithub.com/fcharlie) in [go-git/go-git#743 - storage: filesystem, Populate index before use. Fixes [#​148](https://togithub.com/go-git/go-git/issues/148) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#722 - plumbing: resolve non-external delta references by [@​ZauberNerd](https://togithub.com/ZauberNerd) in [go-git/go-git#485 - plumbing/transport: fix regression in scp-like match by [@​jotadrilo](https://togithub.com/jotadrilo) in [go-git/go-git#715 - plumbing/transport: Add support for custom proxy settings by [@​aryan9600](https://togithub.com/aryan9600) in [go-git/go-git#744 - \*: small fixes across the codebase by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#770 - \*: bump github.com/cloudflare/circl from 1.1.0 to 1.3.3 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#776 - \*: bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#748 - \*: bump Go version to 1.18 on go.mod by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#774 - \*: add Codeql workflow and bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#775 - ci: fix upstream git build for master branch by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#739 #### New Contributors - [@​ZauberNerd](https://togithub.com/ZauberNerd) made their first contribution in [go-git/go-git#485 - [@​jotadrilo](https://togithub.com/jotadrilo) made their first contribution in [go-git/go-git#715 - [@​fcharlie](https://togithub.com/fcharlie) made their first contribution in [go-git/go-git#743 - [@​AriehSchneier](https://togithub.com/AriehSchneier) made their first contribution in [go-git/go-git#755 - [@​cbbm142](https://togithub.com/cbbm142) made their first contribution in [go-git/go-git#719 - [@​aryan9600](https://togithub.com/aryan9600) made their first contribution in [go-git/go-git#744 - [@​matejrisek](https://togithub.com/matejrisek) made their first contribution in [go-git/go-git#754 - [@​andrewpollock](https://togithub.com/andrewpollock) made their first contribution in [go-git/go-git#753 - [@​techknowlogick](https://togithub.com/techknowlogick) made their first contribution in [go-git/go-git#764 **Full Changelog**: go-git/go-git@v5.6.1...v5.7.0 </details> <details> <summary>googleapis/google-api-go-client</summary> ### [`v0.124.0`](https://togithub.com/googleapis/google-api-go-client/releases/tag/v0.124.0) [Compare Source](https://togithub.com/googleapis/google-api-go-client/compare/v0.123.0...v0.124.0) ##### Features - **all:** Auto-regenerate discovery clients ([#​1988](https://togithub.com/googleapis/google-api-go-client/issues/1988)) ([0b4f4af](https://togithub.com/googleapis/google-api-go-client/commit/0b4f4aff308792890dd6e196e57c5ab581148330)) - **all:** Auto-regenerate discovery clients ([#​1991](https://togithub.com/googleapis/google-api-go-client/issues/1991)) ([73f57fe](https://togithub.com/googleapis/google-api-go-client/commit/73f57fe09cf5213f2e4979d645ba9669389e80ce)) ### [`v0.123.0`](https://togithub.com/googleapis/google-api-go-client/releases/tag/v0.123.0) [Compare Source](https://togithub.com/googleapis/google-api-go-client/compare/v0.122.0...v0.123.0) ##### Features - **all:** Auto-regenerate discovery clients ([#​1974](https://togithub.com/googleapis/google-api-go-client/issues/1974)) ([98b3073](https://togithub.com/googleapis/google-api-go-client/commit/98b3073cf54e98459fb5fbd049328360094fb71d)) - **all:** Auto-regenerate discovery clients ([#​1978](https://togithub.com/googleapis/google-api-go-client/issues/1978)) ([d27f40f](https://togithub.com/googleapis/google-api-go-client/commit/d27f40fac5e279f65a3002bb55082453454e2ad7)) - **all:** Auto-regenerate discovery clients ([#​1982](https://togithub.com/googleapis/google-api-go-client/issues/1982)) ([f31b763](https://togithub.com/googleapis/google-api-go-client/commit/f31b763e2a7354c9d908c61a183c53b0cbe43cb3)) ### [`v0.122.0`](https://togithub.com/googleapis/google-api-go-client/releases/tag/v0.122.0) [Compare Source](https://togithub.com/googleapis/google-api-go-client/compare/v0.121.0...v0.122.0) ##### Features - **all:** Auto-regenerate discovery clients ([#​1973](https://togithub.com/googleapis/google-api-go-client/issues/1973)) ([ab64815](https://togithub.com/googleapis/google-api-go-client/commit/ab64815cd796f5a7930d9bbf53b8c19ec2efca83)) ##### Bug Fixes - Add better support of array of floats ([#​1971](https://togithub.com/googleapis/google-api-go-client/issues/1971)) ([8b0974e](https://togithub.com/googleapis/google-api-go-client/commit/8b0974e59d252ca5a42629e9b77baadd226a4090)) ### [`v0.121.0`](https://togithub.com/googleapis/google-api-go-client/releases/tag/v0.121.0) [Compare Source](https://togithub.com/googleapis/google-api-go-client/compare/v0.120.0...v0.121.0) ##### Features - **all:** Auto-regenerate discovery clients ([#​1961](https://togithub.com/googleapis/google-api-go-client/issues/1961)) ([2068ba5](https://togithub.com/googleapis/google-api-go-client/commit/2068ba54f4826f8b5d28839e94c4bbf661e3da4e)) - **all:** Auto-regenerate discovery clients ([#​1963](https://togithub.com/googleapis/google-api-go-client/issues/1963)) ([c2c2b59](https://togithub.com/googleapis/google-api-go-client/commit/c2c2b593d0755c1e69c5a669c2b1cbb490fb48c6)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 6am on wednesday" in timezone Australia/Sydney, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/google/osv.dev). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS40OC4yIiwidXBkYXRlZEluVmVyIjoiMzUuOTguMSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/BurntSushi/toml](https://togithub.com/BurntSushi/toml) | require | minor | `v1.2.1` -> `v1.3.0` | | [github.com/go-git/go-git/v5](https://togithub.com/go-git/go-git) | require | minor | `v5.6.1` -> `v5.7.0` | | [github.com/spdx/tools-golang](https://togithub.com/spdx/tools-golang) | require | patch | `v0.5.0` -> `v0.5.1` | | [github.com/urfave/cli/v2](https://togithub.com/urfave/cli) | require | patch | `v2.25.3` -> `v2.25.5` | | golang.org/x/exp | require | digest | `dd950f8` -> `2e198f4` | | golang.org/x/tools | require | patch | `v0.9.1` -> `v0.9.3` | --- ### Release Notes <details> <summary>BurntSushi/toml</summary> ### [`v1.3.0`](https://togithub.com/BurntSushi/toml/releases/tag/v1.3.0) [Compare Source](https://togithub.com/BurntSushi/toml/compare/v1.2.1...v1.3.0) New features: - Support upcoming TOML 1.1 While it looks like TOML 1.1 is mostly stable and I don't expect any further major changes, there are *NO* compatibility guarantees as it is *NOT* yet released and *anything can still change*. To use it, set the `BURNTSUSHI_TOML_110` environment variable to any value, which can be done either with `os.SetEnv()` or by the user running a program. A full list is changes is available in the [TOML ChangeLog]; the two most notable ones are that newlines and trailing commas are now allowed in inline tables, and Unicode in bare keys can now be used – this is now a valid document: lëttërs = { ä = "a with diaeresis", è = "e with accent grave", } [TOML ChangeLog]: https://togithub.com/toml-lang/toml/blob/main/CHANGELOG.md - Allow MarshalTOML and MarshalText to be used on the document type itself, instead of only fields ([#​383](https://togithub.com/BurntSushi/toml/issues/383)). Bufixes: - `\` escapes at the end of line weren't processed correctly in multiline strings ([#​372](https://togithub.com/BurntSushi/toml/issues/372)). - Read over UTF-8 BOM ([#​381](https://togithub.com/BurntSushi/toml/issues/381)). - `omitempty` struct tag did not work for pointer values ([#​371](https://togithub.com/BurntSushi/toml/issues/371)). - Fix encoding anonymous structs on 32bit systems ([#​374](https://togithub.com/BurntSushi/toml/issues/374)). </details> <details> <summary>go-git/go-git</summary> ### [`v5.7.0`](https://togithub.com/go-git/go-git/releases/tag/v5.7.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.6.1...v5.7.0) #### What's Changed - \*: Add support for initializing SHA256 repositories by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#707 - git: add mirror clone option by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#735 - git: Add support to ls-remote with peeled references. Fixes [#​749](https://togithub.com/go-git/go-git/issues/749) by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#750 - git: fix cloning with branch name by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#755 - git: Worktree, add check to see if file already checked in. Fixes [#​718](https://togithub.com/go-git/go-git/issues/718) by [@​cbbm142](https://togithub.com/cbbm142) in [go-git/go-git#719 - git: Worktree, git grep bare repositories by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#728 - git: Add Depth to SubmoduleUpdateOptions by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#754 - git: Testing, Fix tests not cleaning temp folders by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#769 - git: remote, add support for a configurable timeout. by [@​andrewpollock](https://togithub.com/andrewpollock) in [go-git/go-git#753 - git: Allow Initial Branch to be configurable by [@​techknowlogick](https://togithub.com/techknowlogick) in [go-git/go-git#764 - storage: filesystem/dotgit, Improve load packed-refs by [@​fcharlie](https://togithub.com/fcharlie) in [go-git/go-git#743 - storage: filesystem, Populate index before use. Fixes [#​148](https://togithub.com/go-git/go-git/issues/148) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#722 - plumbing: resolve non-external delta references by [@​ZauberNerd](https://togithub.com/ZauberNerd) in [go-git/go-git#485 - plumbing/transport: fix regression in scp-like match by [@​jotadrilo](https://togithub.com/jotadrilo) in [go-git/go-git#715 - plumbing/transport: Add support for custom proxy settings by [@​aryan9600](https://togithub.com/aryan9600) in [go-git/go-git#744 - \*: small fixes across the codebase by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#770 - \*: bump github.com/cloudflare/circl from 1.1.0 to 1.3.3 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#776 - \*: bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#748 - \*: bump Go version to 1.18 on go.mod by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#774 - \*: add Codeql workflow and bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#775 - ci: fix upstream git build for master branch by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#739 #### New Contributors - [@​ZauberNerd](https://togithub.com/ZauberNerd) made their first contribution in [go-git/go-git#485 - [@​jotadrilo](https://togithub.com/jotadrilo) made their first contribution in [go-git/go-git#715 - [@​fcharlie](https://togithub.com/fcharlie) made their first contribution in [go-git/go-git#743 - [@​AriehSchneier](https://togithub.com/AriehSchneier) made their first contribution in [go-git/go-git#755 - [@​cbbm142](https://togithub.com/cbbm142) made their first contribution in [go-git/go-git#719 - [@​aryan9600](https://togithub.com/aryan9600) made their first contribution in [go-git/go-git#744 - [@​matejrisek](https://togithub.com/matejrisek) made their first contribution in [go-git/go-git#754 - [@​andrewpollock](https://togithub.com/andrewpollock) made their first contribution in [go-git/go-git#753 - [@​techknowlogick](https://togithub.com/techknowlogick) made their first contribution in [go-git/go-git#764 **Full Changelog**: go-git/go-git@v5.6.1...v5.7.0 </details> <details> <summary>spdx/tools-golang</summary> ### [`v0.5.1`](https://togithub.com/spdx/tools-golang/releases/tag/v0.5.1) [Compare Source](https://togithub.com/spdx/tools-golang/compare/v0.5.0...v0.5.1) #### What's Changed - Add ability to specify JSON output options by [@​DmitriyLewen](https://togithub.com/DmitriyLewen) in [spdx/tools-golang#213 - Fix some optional params: `copyrightText`, `licenseListVersion`, `packageVerificationCode` by [@​lumjjb](https://togithub.com/lumjjb) in [spdx/tools-golang#215 - Properly output and read the `filesAnalyzed` field in JSON/YAML by [@​kzantow](https://togithub.com/kzantow) in [spdx/tools-golang#210 - Ensure no duplicates in relationships when shortcut fields are used. by [@​lumjjb](https://togithub.com/lumjjb) in [spdx/tools-golang#218 #### New Contributors - [@​testwill](https://togithub.com/testwill) made their first contribution in [spdx/tools-golang#212 - [@​DmitriyLewen](https://togithub.com/DmitriyLewen) made their first contribution in [spdx/tools-golang#213 **Full Changelog**: spdx/tools-golang@v0.5.0...v0.5.1 </details> <details> <summary>urfave/cli</summary> ### [`v2.25.5`](https://togithub.com/urfave/cli/releases/tag/v2.25.5) [Compare Source](https://togithub.com/urfave/cli/compare/v2.25.4...v2.25.5) #### What's Changed - Fix:(issue\_1737) Set bool count by taking care of num of aliases by [@​dearchap](https://togithub.com/dearchap) in [urfave/cli#1740 **Full Changelog**: urfave/cli@v2.25.4...v2.25.5 ### [`v2.25.4`](https://togithub.com/urfave/cli/releases/tag/v2.25.4) [Compare Source](https://togithub.com/urfave/cli/compare/v2.25.3...v2.25.4) #### What's Changed - Bug/fix issue 1703 by [@​jojje](https://togithub.com/jojje) in [urfave/cli#1728 - Fix:(issue\_1734) Show categories for subcommands by [@​dearchap](https://togithub.com/dearchap) in [urfave/cli#1735 - Fix:(issue\_1610). Keep RunAsSubcommand behaviour as before by [@​dearchap](https://togithub.com/dearchap) in [urfave/cli#1736 - Fix:(issue\_1731) Add fix for checking if aliases are set by [@​dearchap](https://togithub.com/dearchap) in [urfave/cli#1732 - Fix func name referenced in doc comment by [@​meatballhat](https://togithub.com/meatballhat) in [urfave/cli#1738 #### New Contributors - [@​jojje](https://togithub.com/jojje) made their first contribution in [urfave/cli#1728 **Full Changelog**: urfave/cli@v2.25.3...v2.25.4 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 6am on monday" in timezone Australia/Sydney, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/google/osv-scanner). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS40OC4yIiwidXBkYXRlZEluVmVyIjoiMzUuMTAyLjEwIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) | require | minor | `v5.4.2` -> `v5.8.1` | --- ### ⚠ Dependency Lookup Warnings ⚠ Warnings were logged while processing this repo. Please check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>go-git/go-git (github.com/go-git/go-git/v5)</summary> ### [`v5.8.1`](https://github.com/go-git/go-git/releases/tag/v5.8.1) [Compare Source](go-git/go-git@v5.8.0...v5.8.1) #### What's Changed - \*: Bump dependencies by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#815 **Full Changelog**: go-git/go-git@v5.8.0...v5.8.1 ### [`v5.8.0`](https://github.com/go-git/go-git/releases/tag/v5.8.0) [Compare Source](go-git/go-git@v5.7.0...v5.8.0) #### What's Changed - git: Fix fetching after shallow clone. Fixes [#​305](go-git/go-git#305) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#778 - git: enable fetch with unqualified references by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#762 - git: don't add to want if exists, shallow and depth 1 by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#763 - git: Clone HEAD should not force master. Fixes [#​363](go-git/go-git#363) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#758 - git: fix the issue with submodules having the SCP style URL fail due to the wrong URL parsing by [@​matejrisek](https://github.com/matejrisek) in go-git/go-git#756 - git: add a clone option to allow for shallow cloning of submodules by [@​matejrisek](https://github.com/matejrisek) in go-git/go-git#765 - worktree: minor speedup for `doAddDirectory` by [@​ThinkChaos](https://github.com/ThinkChaos) in go-git/go-git#702 - \_examples: Remove wrong comment by [@​pascal-hofmann](https://github.com/pascal-hofmann) in go-git/go-git#357 - \*: Handle paths starting with tilde by [@​ricci2511](https://github.com/ricci2511) in go-git/go-git#808 - \*: Handle paths starting with ~Username by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#809 - storage: filesystem/dotgit, add support for tmp_objdir prefix by [@​L11R](https://github.com/L11R) in go-git/go-git#812 - plumbing: gitignore, replace user dir in path by [@​Jleagle](https://github.com/Jleagle) in go-git/go-git#772 - plumbing: gitignore, fix incorrect parsing. Fixes [#​500](go-git/go-git#500) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#781 - plumbing: http, Fix empty repos on Git v2.41+ by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#802 - plumbing: packp, A request is not empty if it contains shallows. Fixes [#​328](go-git/go-git#328) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#792 - plumbing: blame, Complete rewrite. Fixes [#​603](go-git/go-git#603) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#789 - plumbing: gitignore, Allow gitconfig to contain a gitignore relative to any user home. Fixes [#​578](go-git/go-git#578) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#785 #### New Contributors - [@​Jleagle](https://github.com/Jleagle) made their first contribution in go-git/go-git#772 - [@​pascal-hofmann](https://github.com/pascal-hofmann) made their first contribution in go-git/go-git#357 - [@​ricci2511](https://github.com/ricci2511) made their first contribution in go-git/go-git#808 - [@​L11R](https://github.com/L11R) made their first contribution in go-git/go-git#812 **Full Changelog**: go-git/go-git@v5.7.0...v5.7.1 ### [`v5.7.0`](https://github.com/go-git/go-git/releases/tag/v5.7.0) [Compare Source](go-git/go-git@v5.6.1...v5.7.0) #### What's Changed - \*: Add support for initializing SHA256 repositories by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#707 - git: add mirror clone option by [@​aymanbagabas](https://github.com/aymanbagabas) in go-git/go-git#735 - git: Add support to ls-remote with peeled references. Fixes [#​749](go-git/go-git#749) by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#750 - git: fix cloning with branch name by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#755 - git: Worktree, add check to see if file already checked in. Fixes [#​718](go-git/go-git#718) by [@​cbbm142](https://github.com/cbbm142) in go-git/go-git#719 - git: Worktree, git grep bare repositories by [@​aymanbagabas](https://github.com/aymanbagabas) in go-git/go-git#728 - git: Add Depth to SubmoduleUpdateOptions by [@​matejrisek](https://github.com/matejrisek) in go-git/go-git#754 - git: Testing, Fix tests not cleaning temp folders by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#769 - git: remote, add support for a configurable timeout. by [@​andrewpollock](https://github.com/andrewpollock) in go-git/go-git#753 - git: Allow Initial Branch to be configurable by [@​techknowlogick](https://github.com/techknowlogick) in go-git/go-git#764 - storage: filesystem/dotgit, Improve load packed-refs by [@​fcharlie](https://github.com/fcharlie) in go-git/go-git#743 - storage: filesystem, Populate index before use. Fixes [#​148](go-git/go-git#148) by [@​AriehSchneier](https://github.com/AriehSchneier) in go-git/go-git#722 - plumbing: resolve non-external delta references by [@​ZauberNerd](https://github.com/ZauberNerd) in go-git/go-git#485 - plumbing/transport: fix regression in scp-like match by [@​jotadrilo](https://github.com/jotadrilo) in go-git/go-git#715 - plumbing/transport: Add support for custom proxy settings by [@​aryan9600](https://github.com/aryan9600) in go-git/go-git#744 - \*: small fixes across the codebase by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#770 - \*: bump github.com/cloudflare/circl from 1.1.0 to 1.3.3 by [@​dependabot](https://github.com/dependabot) in go-git/go-git#776 - \*: bump dependencies by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#748 - \*: bump Go version to 1.18 on go.mod by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#774 - \*: add Codeql workflow and bump dependencies by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#775 - ci: fix upstream git build for master branch by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#739 #### New Contributors - [@​ZauberNerd](https://github.com/ZauberNerd) made their first contribution in go-git/go-git#485 - [@​jotadrilo](https://github.com/jotadrilo) made their first contribution in go-git/go-git#715 - [@​fcharlie](https://github.com/fcharlie) made their first contribution in go-git/go-git#743 - [@​AriehSchneier](https://github.com/AriehSchneier) made their first contribution in go-git/go-git#755 - [@​cbbm142](https://github.com/cbbm142) made their first contribution in go-git/go-git#719 - [@​aryan9600](https://github.com/aryan9600) made their first contribution in go-git/go-git#744 - [@​matejrisek](https://github.com/matejrisek) made their first contribution in go-git/go-git#754 - [@​andrewpollock](https://github.com/andrewpollock) made their first contribution in go-git/go-git#753 - [@​techknowlogick](https://github.com/techknowlogick) made their first contribution in go-git/go-git#764 **Full Changelog**: go-git/go-git@v5.6.1...v5.7.0 ### [`v5.6.1`](https://github.com/go-git/go-git/releases/tag/v5.6.1) [Compare Source](go-git/go-git@v5.6.0...v5.6.1) #### What's Changed - plumbing/transport: don't use the `firstErrLine` when it is empty by [@​ThinkChaos](https://github.com/ThinkChaos) in go-git/go-git#682 - plumbing/transport: ssh, unable to pass a custom HostKeyCallback func by [@​aymanbagabas](https://github.com/aymanbagabas) in go-git/go-git#655 - storage/filesystem: dotgit: fix a filesystem race in Refs/walkReferencesTree by [@​MichaelMure](https://github.com/MichaelMure) in go-git/go-git#659 - \*: bump golang.org/x/net from 0.2.0 to 0.7.0 by [@​dependabot](https://github.com/dependabot) in go-git/go-git#684 - \*: bump dependencies by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#697 - \*: fix panic for empty revisions by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#696 - ci: bump GitHub actions, enable go test race detection and stop using developer's GPG keys during test execution by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#701 **Full Changelog**: go-git/go-git@v5.6.0...v5.6.1 ### [`v5.6.0`](https://github.com/go-git/go-git/releases/tag/v5.6.0) [Compare Source](go-git/go-git@v5.5.2...v5.6.0) #### What's Changed - Worktree, check for empty parent dirs during Reset (Fixes [#​670](go-git/go-git#670)) by [@​mbohy](https://github.com/mbohy) in go-git/go-git#671 - \*: remove need to build with CGO by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#688 - plumbing: support SSH/X509 signed tags by [@​hiddeco](https://github.com/hiddeco) in go-git/go-git#690 **Full Changelog**: go-git/go-git@v5.5.2...v5.6.0 ### [`v5.5.2`](https://github.com/go-git/go-git/releases/tag/v5.5.2) [Compare Source](go-git/go-git@v5.5.1...v5.5.2) #### What's Changed - \*: update go-billy v5.4.0, removes data races. Fixes [#​629](go-git/go-git#629) by [@​mcuadros](https://github.com/mcuadros) in go-git/go-git#653 - Worktree: Add, fix add removed files. Fixes [#​223](go-git/go-git#223) by [@​tfujiwar](https://github.com/tfujiwar) in go-git/go-git#652 **Full Changelog**: go-git/go-git@v5.5.1...v5.5.2 ### [`v5.5.1`](https://github.com/go-git/go-git/releases/tag/v5.5.1) [Compare Source](go-git/go-git@v5.5.0...v5.5.1) #### What's Changed - \*: fix error when building with `CGO_ENABLED=0` by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#625 - plumbing: transport/ssh: fix panic on Windows 10 with paegent as ssh-agent by [@​doxsch](https://github.com/doxsch) in go-git/go-git#617 - CommitOptions: AllowEmptyCommits, return an error instead of creating empty commits by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#623 **Full Changelog**: go-git/go-git@v5.5.0...v5.5.1 ### [`v5.5.0`](https://github.com/go-git/go-git/releases/tag/v5.5.0) [Compare Source](go-git/go-git@v5.4.2...v5.5.0) #### What's Changed - \*: add collision resistent SHA1 implementation by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#618 - \*: replace go-homedir with os.UserHomeDir by [@​mvdan](https://github.com/mvdan) in go-git/go-git#535 - Remote: add RemoteURL to {Fetch,Pull,Push}Options by [@​noerw](https://github.com/noerw) in go-git/go-git#375 - Remote: Push, add support to push commits per hashes by [@​tjamet](https://github.com/tjamet) in go-git/go-git#325 - Remote: Push, add ForceWithLease Push Option by [@​john-cai](https://github.com/john-cai) in go-git/go-git#404 - Remote: PushOptions add push-options by [@​S-Bohn](https://github.com/S-Bohn) in go-git/go-git#399 - Remote: Push, add atomic to push options by [@​john-cai](https://github.com/john-cai) in go-git/go-git#406 - Remote: add FollowTags option for pushes by [@​john-cai](https://github.com/john-cai) in go-git/go-git#385 - Worktree: use syscall.Timespec.Unix by [@​tklauser](https://github.com/tklauser) in go-git/go-git#437 - Worktree: Checkout, simplified sparse checkout by [@​john-cai](https://github.com/john-cai) in go-git/go-git#410 - Repository: don't crash accessing invalid pathinfo by [@​muesli](https://github.com/muesli) in go-git/go-git#443 - storage: filesystem, switch from os.SEEK_\* to io.Seek\* by [@​abhinav](https://github.com/abhinav) in go-git/go-git#421 - config: add branch description support by [@​ninedraft](https://github.com/ninedraft) in go-git/go-git#409 - revision: fix endless looping in revision parser by [@​michenriksen](https://github.com/michenriksen) in go-git/go-git#475 - pumbling: optimise zlib reader and consolidate sync.Pools by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#608 - pumbling: parse optimisations by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#602 - plumbing: object, rename calculation uses too much memory by [@​jfontan](https://github.com/jfontan) in go-git/go-git#503 - plumbing: protocol/pakp and server, include the contents of `GO_GIT_USER_AGENT_EXTRA`. Fixes [#​529](go-git/go-git#529) by [@​stewing](https://github.com/stewing) in go-git/go-git#531 - plumbing: protocol/pakp, avoid duplicate encoding when overriding a Capability value. by [@​tylerchr](https://github.com/tylerchr) in go-git/go-git#521 - plumbing: protocol/pakp, update agent by [@​caarlos0](https://github.com/caarlos0) in go-git/go-git#453 - plumbing: protocol/pakp: Actions should have type Action by [@​abhinav](https://github.com/abhinav) in go-git/go-git#420 - plumbing: protocol/pakp: allow unsupported `multi_ack` capability by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#613 - plumbing: transport/ssh, auto-populate HostKeyAlgorithms. Fixes [#​411](go-git/go-git#411) by [@​evanelias](https://github.com/evanelias) in go-git/go-git#548 - pumbling: format/packfile, resolve external reference delta by [@​ga-paul-t](https://github.com/ga-paul-t) in go-git/go-git#392 - plumbing: format/packfile, prevent large objects from being read into memory completely by [@​zeripath](https://github.com/zeripath) in go-git/go-git#330 - plumbing: format/index, support v3 index by [@​john-cai](https://github.com/john-cai) in go-git/go-git#407 - plumbing: format/gitignore, Read .git/info/exclude file too. by [@​enisdenjo](https://github.com/enisdenjo) in go-git/go-git#402 - plumbing: format/gitattributes, Avoid index out of range by [@​To1ne](https://github.com/To1ne) in go-git/go-git#598 - plumbing: format/config, Branch name with hash can be cloned. Fixes [#​309](go-git/go-git#309) by [@​dowy](https://github.com/dowy) in go-git/go-git#354 - go.mod: update github.com/xanzy/ssh-agent to v0.3.1 by [@​tklauser](https://github.com/tklauser) in go-git/go-git#403 - go.mod: update dependencies to remove supply chain CVEs by [@​pjbgf](https://github.com/pjbgf) in go-git/go-git#620 - examples: added "tag find if head is tagged" by [@​snebel29](https://github.com/snebel29) in go-git/go-git#374 - examples: remote fix typo by [@​nep-0](https://github.com/nep-0) in go-git/go-git#408 **Full Changelog**: go-git/go-git@v5.4.2...v5.5.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi43OS4xIiwidXBkYXRlZEluVmVyIjoiMzYuNzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Reviewed-on: https://gitea.com/gitea/tea/pulls/578 Co-authored-by: Renovate Bot <renovate-bot@gitea.com> Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
…rity] (#1148) [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [github.com/go-git/go-git/v5](https://togithub.com/go-git/go-git) | `v5.5.2` -> `v5.11.0` | [![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgo-git%2fgo-git%2fv5/v5.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fgo-git%2fgo-git%2fv5/v5.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fgo-git%2fgo-git%2fv5/v5.5.2/v5.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgo-git%2fgo-git%2fv5/v5.5.2/v5.11.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | ### GitHub Vulnerability Alerts #### [CVE-2023-49568](https://togithub.com/go-git/go-git/security/advisories/GHSA-mw99-9chc-xw7r) ### Impact A denial of service (DoS) vulnerability was discovered in go-git versions prior to `v5.11`. This vulnerability allows an attacker to perform denial of service attacks by providing specially crafted responses from a Git server which triggers resource exhaustion in `go-git` clients. Applications using only the in-memory filesystem supported by `go-git` are not affected by this vulnerability. This is a `go-git` implementation issue and does not affect the upstream `git` cli. ### Patches Users running versions of `go-git` from `v4` and above are recommended to upgrade to `v5.11` in order to mitigate this vulnerability. ### Workarounds In cases where a bump to the latest version of `go-git` is not possible, we recommend limiting its use to only trust-worthy Git servers. ## Credit Thanks to Ionut Lalu for responsibly disclosing this vulnerability to us. ### References - [GHSA-mw99-9chc-xw7r](https://togithub.com/go-git/go-git/security/advisories/GHSA-mw99-9chc-xw7r) #### [CVE-2023-49569](https://togithub.com/go-git/go-git/security/advisories/GHSA-449p-3h89-pw88) ### Impact A path traversal vulnerability was discovered in go-git versions prior to `v5.11`. This vulnerability allows an attacker to create and amend files across the filesystem. In the worse case scenario, remote code execution could be achieved. Applications are only affected if they are using the [ChrootOS](https://pkg.go.dev/github.com/go-git/go-billy/v5/osfs#ChrootOS), which is the default when using "Plain" versions of Open and Clone funcs (e.g. PlainClone). Applications using [BoundOS](https://pkg.go.dev/github.com/go-git/go-billy/v5/osfs#BoundOS) or in-memory filesystems are not affected by this issue. This is a `go-git` implementation issue and does not affect the upstream `git` cli. ### Patches Users running versions of `go-git` from `v4` and above are recommended to upgrade to `v5.11` in order to mitigate this vulnerability. ### Workarounds In cases where a bump to the latest version of `go-git` is not possible in a timely manner, we recommend limiting its use to only trust-worthy Git servers. ## Credit Thanks to Ionut Lalu for responsibly disclosing this vulnerability to us. --- ### Release Notes <details> <summary>go-git/go-git (github.com/go-git/go-git/v5)</summary> ### [`v5.11.0`](https://togithub.com/go-git/go-git/releases/tag/v5.11.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.10.1...v5.11.0) #### What's Changed - git: validate reference names ([#​929](https://togithub.com/go-git/go-git/issues/929)) by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#950 - git: stop iterating at oldest shallow when pulling. Fixes [#​305](https://togithub.com/go-git/go-git/issues/305) by [@​dhoizner](https://togithub.com/dhoizner) in [go-git/go-git#939 - plumbing: object, enable renames in getFileStatsFromFilePatches by [@​djmoch](https://togithub.com/djmoch) in [go-git/go-git#941 - storage: filesystem, Add option to set a specific FS for alternates by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#953 - Align worktree validation with upstream and remove build warnings by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#958 #### New Contributors - [@​dhoizner](https://togithub.com/dhoizner) made their first contribution in [go-git/go-git#939 - [@​djmoch](https://togithub.com/djmoch) made their first contribution in [go-git/go-git#941 **Full Changelog**: go-git/go-git@v5.10.1...v5.11.0 ### [`v5.10.1`](https://togithub.com/go-git/go-git/releases/tag/v5.10.1) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.10.0...v5.10.1) #### What's Changed - Worktree, ignore ModeSocket files by [@​steiler](https://togithub.com/steiler) in [go-git/go-git#930 - git: add tracer package by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#916 - remote: Flip clause for fast-forward only check by [@​adityasaky](https://togithub.com/adityasaky) in [go-git/go-git#875 - plumbing: transport/ssh, Fix nil pointer dereference caused when an unreachable proxy server is set. Fixes [#​900](https://togithub.com/go-git/go-git/issues/900) by [@​anandf](https://togithub.com/anandf) in [go-git/go-git#901 - plumbing: uppload-server-info, implement upload-server-info by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#896 - plumbing: optimise memory consumption for filesystem storage by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#799 - plumbing: format/packfile, Refactor patch delta by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#908 - plumbing: fix empty uploadpack request error by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#932 - plumbing: transport/git, Improve tests error message by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#752 - plumbing: format/pktline, Respect pktline error-line errors by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#936 - utils: remove ioutil.Pipe and use std library io.Pipe by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#922 - utils: move trace to utils by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#931 - cli: separate go module for cli by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#914 - build: bump github.com/google/go-cmp from 0.5.9 to 0.6.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#887 - build: bump actions/setup-go from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#891 - build: bump github.com/skeema/knownhosts from 1.2.0 to 1.2.1 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#888 - build: bump actions/checkout from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#890 - build: bump golang.org/x/sys from 0.13.0 to 0.14.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#907 - build: bump golang.org/x/text from 0.13.0 to 0.14.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#906 - build: bump golang.org/x/crypto from 0.14.0 to 0.15.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#917 - build: bump golang.org/x/net from 0.17.0 to 0.18.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#918 #### New Contributors - [@​anandf](https://togithub.com/anandf) made their first contribution in [go-git/go-git#901 - [@​steiler](https://togithub.com/steiler) made their first contribution in [go-git/go-git#930 **Full Changelog**: go-git/go-git@v5.10.0...v5.10.1 ### [`v5.10.0`](https://togithub.com/go-git/go-git/releases/tag/v5.10.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.9.0...v5.10.0) #### What's Changed - PlainInitOptions.Bare and allow using InitOptions with PlainInitWithOptions by [@​ThinkChaos](https://togithub.com/ThinkChaos) in [go-git/go-git#782 - Worktree, apply ProxyOption on Pull by [@​nodivbyzero](https://togithub.com/nodivbyzero) in [go-git/go-git#840 - Repository: add clone --shared feature by [@​enverbisevac](https://togithub.com/enverbisevac) in [go-git/go-git#860 - build: Add github workflow to check commit message format by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#867 - Improve handling of remote errors by [@​makkes](https://togithub.com/makkes) in [go-git/go-git#866 - build(deps): bump golang.org/x/net from 0.15.0 to 0.17.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#873 - plumbing: commitgraph, Add generation v2 support by [@​zeripath](https://togithub.com/zeripath) in [go-git/go-git#869 - plumbing: protocol/packp, Add validation for decodeLine by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#868 - plumbing: parse the encoding header of the commit object by [@​liwenqiu](https://togithub.com/liwenqiu) in [go-git/go-git#761 - plumbing: commitgraph, allow SHA256 commit-graphs by [@​zeripath](https://togithub.com/zeripath) in [go-git/go-git#853 - plumbing: commitgraph, Allow reading commit-graph chains by [@​zeripath](https://togithub.com/zeripath) in [go-git/go-git#854 - plumbing/object: Support mergetag in merge commits by [@​adityasaky](https://togithub.com/adityasaky) in [go-git/go-git#847 #### New Contributors - [@​nodivbyzero](https://togithub.com/nodivbyzero) made their first contribution in [go-git/go-git#840 - [@​adityasaky](https://togithub.com/adityasaky) made their first contribution in [go-git/go-git#847 - [@​hezhizhen](https://togithub.com/hezhizhen) made their first contribution in [go-git/go-git#836 - [@​0x34d](https://togithub.com/0x34d) made their first contribution in [go-git/go-git#855 - [@​liwenqiu](https://togithub.com/liwenqiu) made their first contribution in [go-git/go-git#761 - [@​enverbisevac](https://togithub.com/enverbisevac) made their first contribution in [go-git/go-git#860 - [@​makkes](https://togithub.com/makkes) made their first contribution in [go-git/go-git#866 **Full Changelog**: go-git/go-git@v5.9.0...v5.10.0 ### [`v5.9.0`](https://togithub.com/go-git/go-git/releases/tag/v5.9.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.8.1...v5.9.0) #### What's Changed - git: worktree: add Amend option to CommitOptions by [@​john-cai](https://togithub.com/john-cai) in [go-git/go-git#438 - git: worktree, reset ignored files that are part of the worktree: Fixes [#​819](https://togithub.com/go-git/go-git/issues/819) by [@​daolis](https://togithub.com/daolis) in [go-git/go-git#821 - plumbing: Do not swallow http message coming from VCS providers by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#835 - plumbing: transport, handle IPv6 while parsing endpoint. Fixes [#​740](https://togithub.com/go-git/go-git/issues/740) by [@​ninedraft](https://togithub.com/ninedraft) in [go-git/go-git#820 - \*: update goproxy dependency to fix CVE-2023-37788 vulnerability by [@​svghadi](https://togithub.com/svghadi) in [go-git/go-git#832 - \*: bump dependencies and Go to 1.19 by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#837 #### New Contributors - [@​svghadi](https://togithub.com/svghadi) made their first contribution in [go-git/go-git#832 - [@​daolis](https://togithub.com/daolis) made their first contribution in [go-git/go-git#821 **Full Changelog**: go-git/go-git@v5.8.1...v5.9.0 ### [`v5.8.1`](https://togithub.com/go-git/go-git/releases/tag/v5.8.1) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.8.0...v5.8.1) #### What's Changed - \*: Bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#815 **Full Changelog**: go-git/go-git@v5.8.0...v5.8.1 ### [`v5.8.0`](https://togithub.com/go-git/go-git/releases/tag/v5.8.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.7.0...v5.8.0) #### What's Changed - git: Fix fetching after shallow clone. Fixes [#​305](https://togithub.com/go-git/go-git/issues/305) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#778 - git: enable fetch with unqualified references by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#762 - git: don't add to want if exists, shallow and depth 1 by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#763 - git: Clone HEAD should not force master. Fixes [#​363](https://togithub.com/go-git/go-git/issues/363) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#758 - git: fix the issue with submodules having the SCP style URL fail due to the wrong URL parsing by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#756 - git: add a clone option to allow for shallow cloning of submodules by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#765 - worktree: minor speedup for `doAddDirectory` by [@​ThinkChaos](https://togithub.com/ThinkChaos) in [go-git/go-git#702 - \_examples: Remove wrong comment by [@​pascal-hofmann](https://togithub.com/pascal-hofmann) in [go-git/go-git#357 - \*: Handle paths starting with tilde by [@​ricci2511](https://togithub.com/ricci2511) in [go-git/go-git#808 - \*: Handle paths starting with ~Username by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#809 - storage: filesystem/dotgit, add support for tmp_objdir prefix by [@​L11R](https://togithub.com/L11R) in [go-git/go-git#812 - plumbing: gitignore, replace user dir in path by [@​Jleagle](https://togithub.com/Jleagle) in [go-git/go-git#772 - plumbing: gitignore, fix incorrect parsing. Fixes [#​500](https://togithub.com/go-git/go-git/issues/500) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#781 - plumbing: http, Fix empty repos on Git v2.41+ by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#802 - plumbing: packp, A request is not empty if it contains shallows. Fixes [#​328](https://togithub.com/go-git/go-git/issues/328) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#792 - plumbing: blame, Complete rewrite. Fixes [#​603](https://togithub.com/go-git/go-git/issues/603) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#789 - plumbing: gitignore, Allow gitconfig to contain a gitignore relative to any user home. Fixes [#​578](https://togithub.com/go-git/go-git/issues/578) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#785 #### New Contributors - [@​Jleagle](https://togithub.com/Jleagle) made their first contribution in [go-git/go-git#772 - [@​pascal-hofmann](https://togithub.com/pascal-hofmann) made their first contribution in [go-git/go-git#357 - [@​ricci2511](https://togithub.com/ricci2511) made their first contribution in [go-git/go-git#808 - [@​L11R](https://togithub.com/L11R) made their first contribution in [go-git/go-git#812 **Full Changelog**: go-git/go-git@v5.7.0...v5.7.1 ### [`v5.7.0`](https://togithub.com/go-git/go-git/releases/tag/v5.7.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.6.1...v5.7.0) #### What's Changed - \*: Add support for initializing SHA256 repositories by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#707 - git: add mirror clone option by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#735 - git: Add support to ls-remote with peeled references. Fixes [#​749](https://togithub.com/go-git/go-git/issues/749) by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#750 - git: fix cloning with branch name by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#755 - git: Worktree, add check to see if file already checked in. Fixes [#​718](https://togithub.com/go-git/go-git/issues/718) by [@​cbbm142](https://togithub.com/cbbm142) in [go-git/go-git#719 - git: Worktree, git grep bare repositories by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#728 - git: Add Depth to SubmoduleUpdateOptions by [@​matejrisek](https://togithub.com/matejrisek) in [go-git/go-git#754 - git: Testing, Fix tests not cleaning temp folders by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#769 - git: remote, add support for a configurable timeout. by [@​andrewpollock](https://togithub.com/andrewpollock) in [go-git/go-git#753 - git: Allow Initial Branch to be configurable by [@​techknowlogick](https://togithub.com/techknowlogick) in [go-git/go-git#764 - storage: filesystem/dotgit, Improve load packed-refs by [@​fcharlie](https://togithub.com/fcharlie) in [go-git/go-git#743 - storage: filesystem, Populate index before use. Fixes [#​148](https://togithub.com/go-git/go-git/issues/148) by [@​AriehSchneier](https://togithub.com/AriehSchneier) in [go-git/go-git#722 - plumbing: resolve non-external delta references by [@​ZauberNerd](https://togithub.com/ZauberNerd) in [go-git/go-git#485 - plumbing/transport: fix regression in scp-like match by [@​jotadrilo](https://togithub.com/jotadrilo) in [go-git/go-git#715 - plumbing/transport: Add support for custom proxy settings by [@​aryan9600](https://togithub.com/aryan9600) in [go-git/go-git#744 - \*: small fixes across the codebase by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#770 - \*: bump github.com/cloudflare/circl from 1.1.0 to 1.3.3 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#776 - \*: bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#748 - \*: bump Go version to 1.18 on go.mod by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#774 - \*: add Codeql workflow and bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#775 - ci: fix upstream git build for master branch by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#739 #### New Contributors - [@​ZauberNerd](https://togithub.com/ZauberNerd) made their first contribution in [go-git/go-git#485 - [@​jotadrilo](https://togithub.com/jotadrilo) made their first contribution in [go-git/go-git#715 - [@​fcharlie](https://togithub.com/fcharlie) made their first contribution in [go-git/go-git#743 - [@​AriehSchneier](https://togithub.com/AriehSchneier) made their first contribution in [go-git/go-git#755 - [@​cbbm142](https://togithub.com/cbbm142) made their first contribution in [go-git/go-git#719 - [@​aryan9600](https://togithub.com/aryan9600) made their first contribution in [go-git/go-git#744 - [@​matejrisek](https://togithub.com/matejrisek) made their first contribution in [go-git/go-git#754 - [@​andrewpollock](https://togithub.com/andrewpollock) made their first contribution in [go-git/go-git#753 - [@​techknowlogick](https://togithub.com/techknowlogick) made their first contribution in [go-git/go-git#764 **Full Changelog**: go-git/go-git@v5.6.1...v5.7.0 ### [`v5.6.1`](https://togithub.com/go-git/go-git/releases/tag/v5.6.1) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.6.0...v5.6.1) #### What's Changed - plumbing/transport: don't use the `firstErrLine` when it is empty by [@​ThinkChaos](https://togithub.com/ThinkChaos) in [go-git/go-git#682 - plumbing/transport: ssh, unable to pass a custom HostKeyCallback func by [@​aymanbagabas](https://togithub.com/aymanbagabas) in [go-git/go-git#655 - storage/filesystem: dotgit: fix a filesystem race in Refs/walkReferencesTree by [@​MichaelMure](https://togithub.com/MichaelMure) in [go-git/go-git#659 - \*: bump golang.org/x/net from 0.2.0 to 0.7.0 by [@​dependabot](https://togithub.com/dependabot) in [go-git/go-git#684 - \*: bump dependencies by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#697 - \*: fix panic for empty revisions by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#696 - ci: bump GitHub actions, enable go test race detection and stop using developer's GPG keys during test execution by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#701 **Full Changelog**: go-git/go-git@v5.6.0...v5.6.1 ### [`v5.6.0`](https://togithub.com/go-git/go-git/releases/tag/v5.6.0) [Compare Source](https://togithub.com/go-git/go-git/compare/v5.5.2...v5.6.0) #### What's Changed - Worktree, check for empty parent dirs during Reset (Fixes [#​670](https://togithub.com/go-git/go-git/issues/670)) by [@​mbohy](https://togithub.com/mbohy) in [go-git/go-git#671 - \*: remove need to build with CGO by [@​pjbgf](https://togithub.com/pjbgf) in [go-git/go-git#688 - plumbing: support SSH/X509 signed tags by [@​hiddeco](https://togithub.com/hiddeco) in [go-git/go-git#690 **Full Changelog**: go-git/go-git@v5.5.2...v5.6.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/mergestat/mergestat). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEyNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
In a self-contained pack file delta references might point to base
objects stored later in the file.
In this case we need to replace placeholders for external refs with the
actual base object and update the children references.
Fixes: #484