BREAKING: 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 api
sapi
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] ...)})
api
s 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 :interceptors
context => 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 is a website building & hosting documentation for Clojure/Script libraries
× close