Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
b794bf668e
|
|||
|
e8adc266a6
|
1
.gitea/CODEOWNERS
Normal file
1
.gitea/CODEOWNERS
Normal file
@@ -0,0 +1 @@
|
|||||||
|
* @go/CoreDevelopers @go/Agents
|
||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -36,3 +36,4 @@ Thumbs.db
|
|||||||
# VCS files
|
# VCS files
|
||||||
COMMIT.md
|
COMMIT.md
|
||||||
RELEASE.md
|
RELEASE.md
|
||||||
|
PR.md
|
||||||
|
|||||||
26
CHANGELOG.md
26
CHANGELOG.md
@@ -5,6 +5,32 @@ All notable changes to this module will be documented in this file.
|
|||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [1.0.1] - 2026-05-22
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- `errorBody` JSON key corrected from `"platformCode"` to `"platform_code"` to
|
||||||
|
match the OpenAPI spec snake_case convention. All HTTP error responses now
|
||||||
|
emit `"platform_code"` in the JSON body.
|
||||||
|
- Dependency `xerrors` bumped to v1.0.2.
|
||||||
|
|
||||||
|
[1.0.1]: https://code.nochebuena.dev/go/httputil/compare/v1.0.0...v1.0.1
|
||||||
|
|
||||||
|
## [1.0.0] - 2026-05-12
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- Go directive bumped from 1.25 to 1.26
|
||||||
|
- `xerrors` dependency bumped to v1.0.1
|
||||||
|
- `valid` dependency bumped to v1.0.1
|
||||||
|
|
||||||
|
### Stabilization
|
||||||
|
|
||||||
|
- API committed as stable. `Handle`, `HandleNoBody`, `HandleEmpty`, `HandlerFunc`,
|
||||||
|
`JSON`, `NoContent`, and `Error` are unchanged from v0.10.0.
|
||||||
|
|
||||||
|
[1.0.0]: https://code.nochebuena.dev/go/httputil/compare/v0.10.0...v1.0.0
|
||||||
|
|
||||||
## [0.10.0] - 2026-03-25
|
## [0.10.0] - 2026-03-25
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|||||||
6
go.mod
6
go.mod
@@ -1,10 +1,10 @@
|
|||||||
module code.nochebuena.dev/go/httputil
|
module code.nochebuena.dev/go/httputil
|
||||||
|
|
||||||
go 1.25
|
go 1.26
|
||||||
|
|
||||||
require (
|
require (
|
||||||
code.nochebuena.dev/go/valid v0.9.0
|
code.nochebuena.dev/go/valid v1.0.1
|
||||||
code.nochebuena.dev/go/xerrors v0.10.0
|
code.nochebuena.dev/go/xerrors v1.0.2
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
|
|||||||
12
go.sum
12
go.sum
@@ -1,9 +1,9 @@
|
|||||||
code.nochebuena.dev/go/valid v0.9.0 h1:o8/tICIoed2+uwBp+TxXa3FE6KmyirU266O4jEUgFCI=
|
code.nochebuena.dev/go/valid v1.0.1 h1:8O7uW8ufPk8lZ2EvKmTJpIrp9WsNjRg/KqMTxeTATrc=
|
||||||
code.nochebuena.dev/go/valid v0.9.0/go.mod h1:SKpLcqpEsLMaEk7K3Y0kFF7Y3W5PHAQF6+U6wleFAhg=
|
code.nochebuena.dev/go/valid v1.0.1/go.mod h1:tSZiKc/108a1hGUnKe/dCg+TfM9HPcrdhZyW4VgCLjU=
|
||||||
code.nochebuena.dev/go/xerrors v0.9.0 h1:8wrDto7e44ZW1YPOnT6JrxYXTqnvNuKpAO1/5bcT4TE=
|
code.nochebuena.dev/go/xerrors v1.0.1 h1:fgXoabY/ZwxAzaM1sKFf3sbL7ZHWyDxItB/rdbnl0mo=
|
||||||
code.nochebuena.dev/go/xerrors v0.9.0/go.mod h1:mtXo7xscBreCB7w7smlBP5Onv8H1HVohCvF0I/VXbAY=
|
code.nochebuena.dev/go/xerrors v1.0.1/go.mod h1:03MMVfrhaf4XmTMgMrEUFCmuZPGHUCKDitiQvwCuwvY=
|
||||||
code.nochebuena.dev/go/xerrors v0.10.0 h1:/4BCGZ7yZ384IC7t8SWGuAqEH/FmI9WtxiB5RKIoKWc=
|
code.nochebuena.dev/go/xerrors v1.0.2 h1:PHkn9RXJdvz5fm3n1TCLo2qCzBqBfnQj5/4oF0nEWyk=
|
||||||
code.nochebuena.dev/go/xerrors v0.10.0/go.mod h1:mtXo7xscBreCB7w7smlBP5Onv8H1HVohCvF0I/VXbAY=
|
code.nochebuena.dev/go/xerrors v1.0.2/go.mod h1:03MMVfrhaf4XmTMgMrEUFCmuZPGHUCKDitiQvwCuwvY=
|
||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/gabriel-vasile/mimetype v1.4.12 h1:e9hWvmLYvtp846tLHam2o++qitpguFiYCKbn0w9jyqw=
|
github.com/gabriel-vasile/mimetype v1.4.12 h1:e9hWvmLYvtp846tLHam2o++qitpguFiYCKbn0w9jyqw=
|
||||||
|
|||||||
@@ -248,8 +248,8 @@ func TestError_PlatformCode_IncludedWhenSet(t *testing.T) {
|
|||||||
t.Errorf("want 404, got %d", rec.Code)
|
t.Errorf("want 404, got %d", rec.Code)
|
||||||
}
|
}
|
||||||
m := decodeMap(t, rec)
|
m := decodeMap(t, rec)
|
||||||
if m["platformCode"] != "EMPLOYEE_NOT_FOUND" {
|
if m["platform_code"] != "EMPLOYEE_NOT_FOUND" {
|
||||||
t.Errorf("platformCode: want EMPLOYEE_NOT_FOUND, got %v", m["platformCode"])
|
t.Errorf("platform_code: want EMPLOYEE_NOT_FOUND, got %v", m["platform_code"])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -257,8 +257,8 @@ func TestError_PlatformCode_OmittedWhenNotSet(t *testing.T) {
|
|||||||
rec := httptest.NewRecorder()
|
rec := httptest.NewRecorder()
|
||||||
Error(rec, xerrors.New(xerrors.ErrInternal, "unexpected error"))
|
Error(rec, xerrors.New(xerrors.ErrInternal, "unexpected error"))
|
||||||
m := decodeMap(t, rec)
|
m := decodeMap(t, rec)
|
||||||
if _, ok := m["platformCode"]; ok {
|
if _, ok := m["platform_code"]; ok {
|
||||||
t.Errorf("platformCode should be absent for errors without a platform code, got %v", m["platformCode"])
|
t.Errorf("platform_code should be absent for errors without a platform code, got %v", m["platform_code"])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ func errorBody(code, platformCode, message string, fields map[string]any) map[st
|
|||||||
"message": message,
|
"message": message,
|
||||||
}
|
}
|
||||||
if platformCode != "" {
|
if platformCode != "" {
|
||||||
m["platformCode"] = platformCode
|
m["platform_code"] = platformCode
|
||||||
}
|
}
|
||||||
for k, v := range fields {
|
for k, v := range fields {
|
||||||
m[k] = v
|
m[k] = v
|
||||||
|
|||||||
Reference in New Issue
Block a user