Skip to content
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

Bump golang.org/x/text from 0.22.0 to 0.23.0 #1767

Closed

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 6, 2025

Bumps golang.org/x/text from 0.22.0 to 0.23.0.

Commits
  • 566b44f go.mod: update golang.org/x dependencies
  • d5156da collate/build: do not use println in tests
  • 221d88c x/text: fix scientific notation by removing extraneous spaces
  • b18c107 internal/export/unicode: change C comment to mention unassigned code points
  • 835f8ac language: use a more straightforward return value
  • ae68efb internal/export/unicode: add CategoryAliases, Cn, and LC
  • 518d9c0 all: upgrade go directive to at least 1.23.0 [generated]
  • See full diff in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Mar 6, 2025
@johnkerl johnkerl mentioned this pull request Mar 6, 2025
@johnkerl
Copy link
Owner

johnkerl commented Mar 6, 2025

@dependabot rebase

Bumps [golang.org/x/text](https://github.com/golang/text) from 0.22.0 to 0.23.0.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/go_modules/golang.org/x/text-0.23.0 branch from 5a6e0cd to 9621ddb Compare March 6, 2025 13:37
@johnkerl
Copy link
Owner

johnkerl commented Mar 6, 2025

https://github.com/johnkerl/miller/actions/runs/13700263974/job/38312024257?pr=1767

go: golang.org/x/[email protected] requires go >= 1.23.0 (running go 1.21.13; go.mod sets toolchain go1.21.13)

I don't want go accept a PR that makes Miller's minimum Go version 1.23 (latest is 1.24) -- Miller has users on LTS operating systems etc. and I prefer to remain trailing-edge on the Go version.

cc @skitt I seem to recall some level of backward Go-version compatibility but I realize I never acquired a good rule of thumb for how old a Go version to insist on -- can you advise?

@skitt
Copy link
Contributor

skitt commented Mar 6, 2025

cc @skitt I seem to recall some level of backward Go-version compatibility but I realize I never acquired a good rule of thumb for how old a Go version to insist on -- can you advise?

I tend to review dependabot PRs on their merits, same as any other; in this case, the only potentially relevant fix in x/text seems to be this scientific notation fix, and I’m not sure it’s even relevant for Miller. If it isn’t, then there’s no downside to just closing the dependabot PR, problem solved.

As far as the more general question is concerned, Go is backward-compatible, yes, but that means that newer compilers continue building older code without change, which doesn’t help here. The problem with older Go releases is that the Go project only supports the last two releases, and there are regular security fixes — so an older Go compiler (1.22.x or older now) is liable to build binaries with known vulnerabilities. Some projects enforce that by bumping their Go language level even though they don’t use any of the new Go features, just to enforce the use of a supported compiler; I understand the reasoning but it makes life complicated for projects like Miller.

I don’t have a good rule of thumb in this instance. Repology’s Go page shows which distributions have which version of Go, and that shows that a lot of distributions have 1.22 or older (and thus probably a not-so-great security story around Go, but that’s a tough nut to crack). However I tend to think that this is only a blocker for distribution updates of a Miller package: a distribution package can only be built with packages in the distribution, so a Go project requiring a newer toolchain can’t be packaged. People interested in building the latest release of Miller themselves can hopefully figure out how to install the latest toolchain themselves too, although I do recognise that that’s not a great story (in comparison to go install github.com/johnkerl/miller/v6/cmd/mlr@latest; it would be great if just worked, regardless of the version of Go provided by the system).

Note that the Go toolchain itself is solving this problem, for end-users: newer releases know how to download even newer releases when necessary, so once everyone has a new enough release (1.21 or newer, IIRC), this won’t be a concern except for CI and packagers (where downloading a newer toolchain isn’t acceptable).

@johnkerl
Copy link
Owner

johnkerl commented Mar 6, 2025

Thank you @ski!! 🙏

@johnkerl
Copy link
Owner

johnkerl commented Mar 6, 2025

#1765 (comment)

@johnkerl johnkerl closed this Mar 6, 2025
Copy link
Contributor Author

dependabot bot commented on behalf of github Mar 6, 2025

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/go_modules/golang.org/x/text-0.23.0 branch March 6, 2025 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file go Pull requests that update Go code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants