Releases: metosin/compojure-api
Releases · metosin/compojure-api
0.19.2
0.19.1
- avoid reflection fixes by Michael Blume
- one can now wrap body & response-models in predicates and get the swagger docs out:
:return (s/maybe User)
:responses {200 (s/maybe User)
400 (s/either Cat Dog)}
- updated deps:
[metosin/ring-swagger "0.19.2"] is available but we use "0.19.1"
0.19.0
- added destructuring for
:headers
, thanks to tchagnon! :path-param
allows any keywords, needed for the partial parameter matching withcontext*
- BREAKING: parameters are collected in (Ring-)Swagger 2.0 format, might break client-side
compojure.api.meta/restructure-param
dispatch functions - for the swagger documentation part. See https://github.com/metosin/ring-swagger/blob/master/test/ring/swagger/swagger2_test.clj & https://github.com/metosin/compojure-api/blob/master/src/compojure/api/meta.clj for examples of the new schemas. context*
to allow setting meta-data to mid-routes. Mid-route meta-data are deep-merged into endpoint swagger-definitions at compile-time. At runtime, code is executed in place.
(context* "/api/:kikka" []
:summary "summary inherited from context"
:path-params [kikka :- s/Str] ; enforced here at runtime
:query-params [kukka :- s/Str] ; enforced here at runtime
(GET* "/:kakka" []
:path-params [kakka :- s/Str] ; enforced here at runtime
(ok {:kikka kikka
:kukka kukka
:kakka kakka})))
- updated deps:
[prismatic/plumbing "0.4.1"] is available but we use "0.3.7"
[potemkin "0.3.12"] is available but we use "0.3.11"
[prismatic/schema "0.4.0"] is available but we use "0.3.7"
[metosin/ring-http-response "0.6.1"] is available but we use "0.6.0"
[metosin/ring-swagger "0.19.0"] is available but we use "0.18.1"
[lein-ring "0.9.3"] is available but we use "0.9.2"
0.18.0
- Support passing options to specific format middlewares (merged into defaults):
(defapi app
{:format {:formats [:json-kw :yaml-kw :edn :transit-json :transit-msgpack]
:params-opts {}
:response-opts {}}
:validation-errors {:error-handler nil
:catch-core-errors? nil}
:exceptions {:exception-handler default-exception-handler}}
...)
- import
compojure.core/wrap-routes
intocompojure.api.sweet
- BREAKING: in
compojure.api.middleware
,ex-info-support
is now parameterizablewrap-exception
- fixes #68
- Update dependencies
[prismatic/plumbing "0.3.7"] is available but we use "0.3.5"
[compojure "1.3.2"] is available but we use "1.3.1"
[prismatic/schema "0.3.7"] is available but we use "0.3.3"
[metosin/ring-swagger "0.18.0"] is available but we use "0.15.0"
[metosin/ring-http-response "0.6.0"] is available but we use "0.5.2"
[metosin/ring-middleware-format "0.6.0"] is available but we use "0.5.0"
0.17.0
- Depend on forked version of
ring-middleware-format
- Transit support should now work
- If you are depending on ring-middleware-format directly, you'll want to either
update your dependency or exclude one from Compojure-api
- Update dependencies:
[cheshire "5.4.0"] is available but we use "5.3.1"
[metosin/ring-swagger-ui "2.0.24"] is available but we use "2.0.17"
[lein-ring "0.9.0"] is available but we use "0.8.13"
0.16.6
0.16.5
0.16.4
- use
[org.tobereplaced/lettercase "1.0.0"]
for camel-casing (see metosin/compojure-api-examples#1 (comment)) - updated deps:
[metosin/ring-swagger "0.14.1"] is available but we use "0.14.0"
0.16.3
- support for
:form-parameters
, thanks to Thomas Whitcomb - update deps:
[prismatic/plumbing "0.3.5"] is available but we use "0.3.3"
[potemkin "0.3.11"] is available but we use "0.3.8"
[compojure "1.2.1"] is available but we use "1.1.9"
[prismatic/schema "0.3.2"] is available but we use "0.2.6"
[metosin/ring-http-response "0.5.1"] is available but we use "0.5.0"
[metosin/ring-swagger "0.14.0"] is available but we use "0.13.0"
[lein-ring "0.8.13"] is available but we use "0.8.11"