Skip to content

fix: bump pelletier/go-toml/v2 to v2.4.3 - #255

Merged
cspath1 merged 1 commit into
mainfrom
cspath/REL-16023-bump-go-toml
Sep 25, 2026
Merged

cspath1 merged 1 commit into
mainfrom
cspath/REL-16023-bump-go-toml

Conversation

@cspath1

@cspath1 cspath1 commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Same finding reported against ld-find-code-refs 2.18.1: XRAY-1033007, github.com/pelletier/go-toml/v2 v2.2.4, fixed in v2.4.3. This repo picks the module up indirectly through spf13/viper as well, so it carried the same stale version.

v2.4.3 carries upstream PR #1092, "bound array and inline table nesting depth to prevent stack-overflow DoS".

The advisory is not in any public database -- OSV returns zero results for this module at every version -- so it is JFrog proprietary research data and neither govulncheck nor Dependabot flags it.

go build, go vet, go test ./... and the pre-commit golangci-lint invocation all pass; govulncheck remains at 0.


Note

Overview
Upgrades the indirect dependency github.com/pelletier/go-toml/v2 from v2.2.4 to v2.4.3 (via spf13/viper), with matching go.sum and vendor updates. There are no first-party code changes in this repository.

The motivation is JFrog XRAY-1033007: malicious TOML with extremely deep nested arrays or inline tables could drive unbounded parser recursion and stack-overflow DoS. v2.4.3 adds a nesting cap (upstream PR #1092; the parser now rejects beyond maxValueNesting instead of overflowing the stack).

This library is only used indirectly for config parsing through Viper; behavior for normal config files should be unchanged.

Reviewed by Cursor Bugbot for commit 8b2600f. Bugbot is set up for automated code reviews on this repo. Configure here.

Same finding Procore reported against ld-find-code-refs 2.18.1:
XRAY-1033007, github.com/pelletier/go-toml/v2 v2.2.4, fixed in v2.4.3.
This repo picks the module up indirectly through spf13/viper as well, so
it carried the same stale version.

v2.4.3 carries upstream PR #1092, "bound array and inline table nesting
depth to prevent stack-overflow DoS".

The advisory is not in any public database -- OSV returns zero results
for this module at every version -- so it is JFrog proprietary research
data and neither govulncheck nor Dependabot flags it.

go build, go vet, go test ./... and the pre-commit golangci-lint
invocation all pass; govulncheck remains at 0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@cspath1
cspath1 requested a review from a team as a code owner September 25, 2026 17:52
@cspath1
cspath1 merged commit e789a72 into main Sep 25, 2026
8 checks passed
@cspath1
cspath1 deleted the cspath/REL-16023-bump-go-toml branch September 25, 2026 18:00
cspath1 added a commit that referenced this pull request Sep 30, 2026
Releases two changes that have been sitting on main:

  #253  retry rate-limited flag requests, and preserve cancellation and
        timeout errors while reading flag responses
  #255  pelletier/go-toml/v2 to v2.4.3 (XRAY-1033007)

Patch rather than minor: #253 is retry and error-propagation behaviour,
which the contributor filed under Fixed, and no inputs or outputs
changed.

Two corrections to repository bookkeeping while here:

The version constant was still 2.3.1. v2.3.2 was tagged directly at the
#254 merge commit without a prepare-release commit, so the constant and
the metadata pins never moved. Both are now at 2.3.3.

The changelog had no 2.3.2 entry for the same reason, even though
v2.3.2 was a real release that Gonfalon pins. Backfilled it from #254.

Also floats the docker/ entry point example on `@v2` to match the two
root Action examples above it, which already used `@v2`. That line no
longer needs rewriting each release, and the "pin to a release that
includes the docker/ entry point" caveat is obsolete now it floats. The
`dockerImage` input keeps an exact tag.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@cspath1 cspath1 mentioned this pull request Sep 30, 2026
cspath1 added a commit that referenced this pull request Sep 30, 2026
Releases two changes that have been sitting on main:

  #253  retry rate-limited flag requests, and preserve cancellation and
        timeout errors while reading flag responses
  #255  pelletier/go-toml/v2 to v2.4.3 (XRAY-1033007)

Patch rather than minor: #253 is retry and error-propagation behaviour,
which the contributor filed under Fixed, and no inputs or outputs
changed.

Two corrections to repository bookkeeping while here:

The version constant was still 2.3.1. v2.3.2 was tagged directly at the
#254 merge commit without a prepare-release commit, so the constant and
the metadata pins never moved. Both are now at 2.3.3.

The changelog had no 2.3.2 entry for the same reason, even though v2.3.2
was a real release that Gonfalon pins. Backfilled it from #254.

Also floats the docker/ entry point example on `@v2` to match the two
root Action examples above it, which already used `@v2`. That line no
longer needs rewriting each release, and the "pin to a release that
includes the docker/ entry point" caveat is obsolete now it floats. The
`dockerImage` input keeps an exact tag.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Overview**
> Prepares the **2.3.3** release by aligning repo metadata with changes
already on `main`, without altering action inputs or outputs in this
diff.
> 
> **`CHANGELOG.md`** adds a **2.3.3** *Fixed* section (rate-limit
retries, preserving cancel/timeout errors on flag reads, `go-toml/v2`
bump for XRAY-1033007) and backfills **2.3.2** (Go 1.26.8 toolchain and
dependency/image pins) after v2.3.2 was tagged without a prepare-release
commit.
> 
> **`internal/version/version.go`** updates the version constant from
`2.3.1` to **`2.3.3`**. **`docker/action.yml`** default and example
`dockerImage` tags move from `2.3.1` to **`2.3.3`**.
> 
> **`README.md`** switches the docker entry-point example from a pinned
`@v2.3.1` to **`@v2`** (matching root action examples) while keeping the
mirrored-image example on tag **`2.3.3`**.
> 
> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit
4fce911. Bugbot is set up for automated
code reviews on this repo. Configure
[here](https://www.cursor.com/dashboard/bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants