Skip to content

chore(deps): update module github.com/pelletier/go-toml to v2 - #992

Closed
renovate[bot] wants to merge 2 commits into
mainfrom
renovate/github.com-pelletier-go-toml-2.x
Closed

renovate[bot] wants to merge 2 commits into
mainfrom
renovate/github.com-pelletier-go-toml-2.x

Conversation

@renovate

@renovate renovate Bot commented May 22, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
github.com/pelletier/go-toml v1.9.5v2.3.1 age confidence

Release Notes

pelletier/go-toml (github.com/pelletier/go-toml)

v2.3.1

Compare Source

v2.3.0

Compare Source

This is the first release built largely with the help of AI coding agents. Highlights include the complete removal of the unsafe package. go-toml is now fully safe Go code, with a geomean overhead of only ~1.4% vs v2.2.4 and zero additional allocations on benchmarks. This release also adds omitzero struct tag support, improves UnmarshalText/Unmarshaler handling for tables and array tables, and fixes several bugs including nil pointer marshaling, leap second handling, and datetime unmarshaling panics.

What's Changed

What's new
Fixed bugs
Documentation
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.2.4...v2.3.0

v2.2.4

Compare Source

Highlight

In this release, @​mikattack removed the last dependency of go-toml! 🎉 (#​981)

What's Changed

Documentation
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.2.3...v2.2.4

v2.2.3

Compare Source

What's Changed

What's new
Performance
  • Remove unstable.Parser allocation when creating Decoder by @​mvdan in #​953
Fixed bugs
Documentation
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.2.2...v2.2.3

v2.2.2

Compare Source

What's Changed

Fixed bugs
  • Fix race condition when tracking keys that have already been seen by @​sysulq in #​947

New Contributors

Full Changelog: pelletier/go-toml@v2.2.1...v2.2.2

v2.2.1

Compare Source

What's Changed

Fixed bugs

New Contributors

Full Changelog: pelletier/go-toml@v2.2.0...v2.2.1

v2.2.0

Compare Source

What's Changed

What's new
Fixed bugs
Documentation
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.1.1...v2.2.0

v2.1.1

Compare Source

What's Changed

Fixed bugs

New Contributors

Full Changelog: pelletier/go-toml@v2.1.0...v2.1.1

v2.1.0

Compare Source

This new minor release brings back the commented struct field tag from go-toml v1. It makes it easier to generate default or example configuration files. For instance:

type TLS struct {
	Cipher  string `toml:"cipher"`
	Version string `toml:"version"`
}
type Config struct {
	Host string `toml:"host" comment:"Host IP to connect to."`
	Port int    `toml:"port" comment:"Port of the remote server."`
	Tls  TLS    `toml:"TLS,commented" comment:"Encryption parameters (optional)"`
}
example := Config{
	Host: "127.0.0.1",
	Port: 4242,
	Tls: TLS{
		Cipher:  "AEAD-AES128-GCM-SHA256",
		Version: "TLS 1.3",
	},
}
out, err := toml.Marshal(example)

generates this TOML document:

### Host IP to connect to.
host = '127.0.0.1'

### Port of the remote server.
port = 4242

### Encryption parameters (optional)
### [TLS]

### cipher = 'AEAD-AES128-GCM-SHA256'
### version = 'TLS 1.3'

This feature was often mentioned as a blocker to upgrading from go-toml v1. Hopefully bringing it back in scope will help folks make the transition!

An other noteworthy improvement is on type mismatch errors. They now include the human-readable context, and include the struct field name of the faulty value if applicable.

Before:

toml: cannot store TOML string into a Go int

After:

1| [server]
2| path = "/my/path"
3| port = "bad"
 |        ~~~~~ cannot decode TOML string into struct field toml_test.Server.Port of type int

What's Changed

What's new
Fixed bugs
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.0.9...v2.1.0

v2.0.9

Compare Source

What's Changed

Fixed bugs
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.0.8...v2.0.9

v2.0.8

Compare Source

What's Changed

What's new
Fixed bugs
Documentation

New Contributors

Full Changelog: pelletier/go-toml@v2.0.7...v2.0.8

v2.0.7

Compare Source

What's Changed

Fixed bugs
Documentation

New Contributors

Full Changelog: pelletier/go-toml@v2.0.6...v2.0.7

v2.0.6

Compare Source

What's Changed

What's new
Performance
  • Reduce init time allocation when declaring types used for reflect by @​dolmen in #​821
Other changes

New Contributors

Full Changelog: pelletier/go-toml@v2.0.5...v2.0.6

v2.0.5

Compare Source

What's Changed

Fixed bugs

Full Changelog: pelletier/go-toml@v2.0.4...v2.0.5

v2.0.4

Compare Source

This version has compatibility issues with Go <= 1.17. Though go-toml doesn't officially support Go less than 2 versions old, a new version has been released with a backward-compatible fix: https://github.com/pelletier/go-toml/releases/tag/v2.0.5.

What's Changed

Fixed bugs

New Contributors

Full Changelog: pelletier/go-toml@v2.0.3...v2.0.4

v2.0.3

Compare Source

What's Changed

Fixed bugs
Other changes

Full Changelog: pelletier/go-toml@v2.0.2...v2.0.3

v2.0.2

Compare Source

What's Changed

Fixed bugs
Other changes

Full Changelog: pelletier/go-toml@v2.0.1...v2.0.2

v2.0.1

Compare Source

What's Changed

Fixed bugs
Documentation

New Contributors

Full Changelog: pelletier/go-toml@v2.0.0...v2.0.1

v2.0.0

Compare Source

It is finally here! go-toml v2 is now stable. 🎉

Only just over one year after I started working on it. This version of go-toml has been rebuilt from the ground up. It respects the latest TOML specification. Countless bugs have been fixed. It behaves more like the standard library. And it is much faster. Special attention was given to keeping the public API to a minimum. Continuing the strict policy of backward compatibility, the next breaking change will be in another 5 years!

Thank you to everybody who contributed to this new version, as well as folks willing to try out the intermediate beta versions. Shout out to @​moorereason for reporting many issues during the development process using differential fuzzing, as well as @​bep for running a beta on the popular Hugo project!

There is still some work that could be done to improve the performance of the library (#​758 and #​669 for instance). But I am confident that the library is in a good-enough place at the moment for folks to reap the benefits of the rewrite. The major feature removal is the sort-of-AST that v1 provided. It allowed manipulating an arbitrary document and writing it back out. This was done to cut down the scope of the project, removing a feature that had unclear use-cases. The v2 parser creates some intermediate AST so that if somebody is up to design a Document API the tools should be available to do so. Please reach out if you are interested!

The readme contains a list of differences between v1 and v2 to be aware of when upgrading. Please report any issue you may have with the new version in the bug tracker 🐞, provide feedback, and ask questions in Discussions 💬.
With this release, go-toml v1 will not be receiving any updates. This is required to keep maintenance of the project to a minimum.

Hopefully, this change doesn't break your thing!


Full commit log: pelletier/go-toml@c9a09d8...v2

Thank you contributors: @​pelletier @​oschwald @​moorereason @​xwjdsh @​kkHAIKE @​RiyaJohn @​jidicula @​zostay @​mmorel-35.


Configuration

📅 Schedule: (in timezone Europe/Paris)

  • 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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot requested a review from nekeo as a code owner May 22, 2026 15:19
@renovate

renovate Bot commented May 22, 2026

Copy link
Copy Markdown
Contributor Author

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@nekeo

nekeo commented May 22, 2026

Copy link
Copy Markdown
Contributor

Un module utilises toujours la v1, on est obligé de le garder pour le moment

@nekeo nekeo closed this May 22, 2026
@renovate

renovate Bot commented May 22, 2026

Copy link
Copy Markdown
Contributor Author

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 2.x releases. But if you manually upgrade to 2.x then Renovate will re-enable minor and patch updates automatically.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

@renovate
renovate Bot deleted the renovate/github.com-pelletier-go-toml-2.x branch May 22, 2026 18:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant