- Module github.com/eslider/go-config with env/yaml/json/ini packages - internal: source, keymap, merge, structconv, bytesutil - cmd/envc: convert, get, merge - docs/asr ASR-0001..0008, README/CHANGELOG/AGENTS refresh - golangci-lint v2 config; tests + fixtures Co-authored-by: Cursor <cursoragent@cursor.com>
682 B
682 B
ASR-0002: Clean break from go-env v0.1.0
Context
go-env v0.1.0 exposed package-level helpers (Unmarshal, UnmarshalPrefix, AsMap, …). The new design is Codec-centric with multiple sources per format.
Decision
- No compatibility shims in
go-configre-exporting the old API. - v0.1.0 remains tagged on git history as
github.com/eslider/go-env@v0.1.0for archival consumers. - Migration path is documented in
CHANGELOG.mdand the README.
Consequences
- Single-call-site migrations must switch to
env.New(env.WithCurrentEnvironment(), …).Unmarshal(&cfg).
Status
Accepted — 2026-05-02.
References
- CHANGELOG
[0.2.0] - ASR-0001