1) use :update-paths to handle data in certain (loose) paths differently
accumulate schemas in all relevant routers into vector
we do not know the coercion here (ring/http have special handling of data, e.g. http-methods)
2) run coercion compiler for the model to merge the effective model
schema + malli = should work ok, spec = best effort
3) publish final schemas into compiled route data
CHANGELOG
BREAKING: compile-request-coercers returns a map with :data and :coerce instead of plain :coerce function
BREAKING: Parameter and Response schemas are acculated into vector in route data - to be merged properly into compiled result, fixes #422 - merging multiple schemas together works with Malli and Schema, partially with data-spec but not with spec.
welcome 2-phase schema compilation! Fixes #422.
1) use
:update-paths
to handle data in certain (loose) paths differentlyCHANGELOG
compile-request-coercers
returns a map with:data
and:coerce
instead of plain:coerce
functionMalli
andSchema
, partially withdata-spec
but not withspec
.