ring-middleware-format, for real this time.kekkonen.upload/responseBREAKING: Drops Java 1.6 Compatability (due to Muuntaja)
BREAKING: use Muuntaja instead of ring-middleware-format, #255 for format negotiation, encoding and decoding.
[:mw :format] has been deprecated (fails at api creation time), use :formats instead. It consumes either a
Muuntaja instance, Muuntaja options map or ::kekkonen.middleware/defaults (for defaults). See how to configure Muuntaja how to use.Updated deps:
[clj-http "2.3.0"] is available but we use "2.2.0"
[metosin/muuntaja "0.3.1"] is available but we use "0.3.0"
[metosin/ring-http-response "0.9.0"] is available but we use "0.8.1"
[metosin/ring-swagger "0.24.0"] is available but we use "0.23.0"
[metosin/ring-swagger-ui "2.2.10"] is available but we use "2.2.8"
[prismatic/plumbing "0.5.4"] is available but we use "0.5.3"
[prismatic/schema "1.1.6"] is available but we use "1.1.3"
[ring-middleware-format "0.7.2"] is available but we use "0.7.0"
[ring/ring-defaults "0.3.0"] is available but we use "0.2.1"
[ring-middleware-format "0.7.0"]
[frankiesardo/linked "1.2.9"] is available but we use "1.2.8"
[metosin/ring-swagger "0.22.14"] is available but we use "0.22.10"
[metosin/ring-swagger-ui "2.2.8"] is available but we use "2.2.2-0"
[metosin/ring-http-response "0.8.1"] is available but we use "0.8.0"
Ring-coercion is applied also for :default, fixes #45
updated dependencies:
[prismatic/schema "1.1.3"] is available but we use "1.1.2"
[metosin/ring-swagger "0.22.10"] is available but we use "0.22.9"
[metosin/ring-swagger-ui "2.2.2-0"] is available but we use "2.1.4-0"
[frankiesardo/linked "1.2.8"] is available but we use "1.2.6"
kekkonen.upload/response for easy returning of file-respones (uploads still Alpha)
updated dependencies:
[metosin/ring-http-response "0.8.0"] is available but we use "0.7.0"
[ring/ring-defaults "0.2.1"]
kekkonen.upload/multipart-params interceptor, uses ring.middleware.multipart-params/multipart-params-request (same options)kekkonen.upload/TempFileUpload & kekkonen.upload/ByteArrayUpload as swagger-aware types:kekkonen.ring/consumes & :kekkonen.ring/produces - meta-data, just for docs now(defnk upload
"upload a file to the server"
{:interceptors [[upload/multipart-params]]
:type ::ring/handler
::ring/method :put
::ring/consumes ["multipart/form-data"]}
[[:request [:multipart-params file :- upload/TempFileUpload]]]
(ok (dissoc file :tempfile)))
(def app
(api
{:swagger {:ui "/api-docs"
:spec "/swagger.json"}
:api {:handlers {:http #'upload}}}))
:data) instead of deep-merging. For speed.kekkonen.core/simple-coercion, renamed multi-coercion to coercion.:name, :enter, :leave and :error
:input and :output schemas.:execution-id, :stage, :interceptor, :exception-type and :exception.
kekkonen.core/request & kekkonen.core/response exception handeled gracefully with the apisapi doesn't force schema validation by default:ns-meta, :all-meta, :handler-input & :user-input:interceptors from the Dispatcher, as they are now precompiled into handlersnil, allowing conditional interceptors(k/handler
{:name "fixture!"
:interceptors [[require-role :admin] (if-not env/dev-mode? log-it)]
:handle (fn [ctx] ...)})
apis don't bind swagger-spec & swagger-ui, use :spec & :ui options{:swagger {:info {:title "Kekkonen"}}
:swagger-ui {:jsonEdit true}})
{:swagger
{:spec "/swagger.json"
:ui "/api-docs"
:options {:ui {:jsonEdit true}
:spec {:ignore-missing-mappings? false}}
:data {:info {:title "Kekkonen"}}}}
:handle instead of :function:handle key for the dispatch(k/handler
{:name "hello"
:handle (constantly "hello")})
[prismatic/schema "1.1.2"] is available but we use "1.1.0"
[prismatic/plumbing "0.5.3"] is available but we use "0.5.2"
[metosin/ring-http-response "0.7.0"] is available but we use "0.6.5"
[metosin/ring-swagger "0.22.9"] is available but we use "0.22.6"
[clj-http "2.2.0"] available but we use "2.1.0"
:transformers-key is replaced with :interceptorscontext => context (just like the old transformers) or maps
with keys :enter and :leave. Will be later merged to use the Pedestal defined
interceptors.:meta instead of :user.:meta keys are checked at dispatcher creation time.:interceptors meta-key registered.
(cqrs-api
{:swagger {:info {:title "Kekkonen"}}
:core {:handlers {:api {:math 'math
:system [#'ping #'pong]}}
:transformers [log-commands]
:user {::roles require-roles}}
:ring {:transformers [api-key-authenticator]}})
(cqrs-api
{:swagger {:info {:title "Kekkonen"}}
:core {:handlers {:api {:math 'math
:system [#'ping #'pong]}}
:interceptors [log-commands]
:meta {::roles require-roles}}
:ring {:interceptors [api-key-authenticator]}})
[prismatic/schema "1.1.0"] is available but we use "1.0.4"
[metosin/ring-swagger "0.22.6"] is available but we use "0.22.1"
[metosin/ring-swagger-ui "2.1.4-0"] is available but we use "2.1.3-4"
[clj-http "2.1.0"] is available but we use "2.0.0"
[prismatic/schema "1.0.4"] is available but we use "1.0.3"
[metosin/ring-swagger "0.22.1"] is available but we use "0.22.0"
[metosin/ring-swagger-ui "2.1.3-4"] is available but we use "2.1.3-2"
Can you improve this documentation? These fine people already did:
Tommi Reiman, Miikka Koskinen & Juho TeperiEdit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |