docs+rules: teach httputil.Bind/BindEmpty (web v1.6.0); v1.3.4

Builtins README gains Bind/BindEmpty adapter rows + a path/query binding section
(uuid/time via TextUnmarshaler; default: with min not omitempty,min). New info
rule httputil.prefer-bind flags hand-rolled chi.URLParam / r.URL.Query() reads and
points to Bind. Escape-hatch note rescoped to custom responses only.
This commit is contained in:
2026-08-13 23:19:19 -06:00
parent 766adb2989
commit 0f476fd6de
6 changed files with 185 additions and 12 deletions
+20
View File
@@ -6,6 +6,26 @@ This module adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html
---
## [1.3.4] — 2026-08-13
Patch. Teaches the framework's v1.6.0 request-binding adapters (`httputil.Bind` / `BindEmpty`).
### Added
- Wiring builtin documents `Bind` / `BindEmpty`: the adapter table gains both rows, plus a
"Binding path & query parameters" section with `path:` / `query:` / `json:` tag examples, the
`uuid.UUID` / `time.Time` conversion note, and the `default:` + `min` (not `omitempty,min`)
guidance so a defaulted parameter cannot slip past its bound.
- New rule **`httputil.prefer-bind`** (info): flags `chi.URLParam` / `chi.URLParamFromCtx` /
`r.URL.Query()` read by hand inside a handler and points to `Bind` — the escape hatch stays for
genuinely custom responses only.
### Changed
- The httputil "Escape hatch" note now scopes `HandlerFunc` to custom *responses* (streaming,
non-JSON), not parameter reading. `Bind` symbols/signatures are picked up automatically by the
indexer from the v1.6.0 `web` source.
## [1.3.3] — 2026-08-09
Patch. Documents the httputil handler adapters and configurable success status.