Unsupported YAML package #1555

Open
opened 2025-12-28 17:16:50 +00:00 by sami · 2 comments
Owner

Originally created by @roman-khimov on GitHub (Sep 17, 2025).

I'm always frustrated when we're using unsupported dependencies. gopkg.in/yaml.v3 is exactly that, see https://github.com/go-yaml/yaml which is archived now. Consider 7106c858f2 as well, this change (while proper for yaml.v3) requires all package users to have a dependency on gopkg.in/yaml.v3 as well (compare that to UmarshalJSON() using standard types).

Describe the solution you'd like

Replace it with something maintained and something that has a better API.

Describe alternatives you've considered

Things work as is, but it can be a problem long-term.

Additional context

https://github.com/nspcc-dev/neo-go/pull/4010#discussion_r2354781898
7106c858f2

Originally created by @roman-khimov on GitHub (Sep 17, 2025). ## Is your feature request related to a problem? Please describe. I'm always frustrated when we're using unsupported dependencies. `gopkg.in/yaml.v3` is exactly that, see https://github.com/go-yaml/yaml which is archived now. Consider 7106c858f2821ee75885fb72e8907f77ff1571a0 as well, this change (while proper for yaml.v3) requires all package users to have a dependency on `gopkg.in/yaml.v3` as well (compare that to `UmarshalJSON()` using standard types). ## Describe the solution you'd like Replace it with something maintained and something that has a better API. ## Describe alternatives you've considered Things work as is, but it can be a problem long-term. ## Additional context https://github.com/nspcc-dev/neo-go/pull/4010#discussion_r2354781898 7106c858f2821ee75885fb72e8907f77ff1571a0
Author
Owner

@roman-khimov commented on GitHub (Sep 22, 2025):

There is https://pkg.go.dev/go.yaml.in/yaml/v4 which is a supported fork, but it has the same interface problems. Looks like the only real alternative is https://github.com/goccy/go-yaml (which is used by etcd).

@roman-khimov commented on GitHub (Sep 22, 2025): There is https://pkg.go.dev/go.yaml.in/yaml/v4 which is a supported fork, but it has the same interface problems. Looks like the only real alternative is https://github.com/goccy/go-yaml (which is used by etcd).
Author
Owner

@roman-khimov commented on GitHub (Sep 22, 2025):

Related: https://github.com/yaml/go-yaml/issues/56, btw.

@roman-khimov commented on GitHub (Sep 22, 2025): Related: https://github.com/yaml/go-yaml/issues/56, btw.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nspcc-dev/neo-go#1555
No description provided.