Release 0.9.1

This commit is contained in:
Juho Teperi 2025-05-27 14:04:31 +03:00
parent aad054ef39
commit 210f20e714
51 changed files with 87 additions and 87 deletions

View file

@ -12,9 +12,9 @@ We use [Break Versioning][breakver]. The version numbers follow a `<major>.<mino
[breakver]: https://github.com/ptaoussanis/encore/blob/master/BREAK-VERSIONING.md
## UNRELEASED
## 0.9.1 (2025-05-27)
* FIX: response coercion threw an exception for unlisted HTTP status codes if there was no `:default`. Broken in 0.9.0. [#742](https://github.com/metosin/reitit/issues/742)
* **FIX**: response coercion threw an exception for unlisted HTTP status codes if there was no `:default`. Broken in 0.9.0. [#742](https://github.com/metosin/reitit/issues/742)
## 0.9.0 (2025-05-23)

View file

@ -66,7 +66,7 @@ modules will continue to be released under `metosin` for compatibility purposes.
All main modules bundled:
```clj
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
```
Optionally, the parts can be required separately.

View file

@ -41,7 +41,7 @@ There is [#reitit](https://clojurians.slack.com/messages/reitit/) in [Clojurians
All bundled:
```clj
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
```
Optionally, the parts can be required separately.

View file

@ -22,7 +22,7 @@ The default exception formatting uses `reitit.exception/exception`. It produces
## Pretty Errors
```clj
[metosin/reitit-dev "0.9.0"]
[metosin/reitit-dev "0.9.1"]
```
For human-readable and developer-friendly exception messages, there is `reitit.dev.pretty/exception` (in the `reitit-dev` module). It is inspired by the lovely errors messages of [ELM](https://elm-lang.org/blog/compiler-errors-for-humans) and [ETA](https://twitter.com/jyothsnasrin/status/1037703436043603968) and uses [fipp](https://github.com/brandonbloom/fipp), [expound](https://github.com/bhb/expound) and [spell-spec](https://github.com/bhauman/spell-spec) for most of heavy lifting.

View file

@ -1,7 +1,7 @@
# Default Interceptors
```clj
[metosin/reitit-interceptors "0.9.0"]
[metosin/reitit-interceptors "0.9.1"]
```
Just like the [ring default middleware](../ring/default_middleware.md), but for interceptors.

View file

@ -5,7 +5,7 @@ Reitit has also support for [interceptors](http://pedestal.io/reference/intercep
## Reitit-http
```clj
[metosin/reitit-http "0.9.0"]
[metosin/reitit-http "0.9.1"]
```
A module for http-routing using interceptors instead of middleware. Builds on top of the [`reitit-ring`](../ring/ring.md) module having all the same features.

View file

@ -3,7 +3,7 @@
[Pedestal](http://pedestal.io/) is a backend web framework for Clojure. `reitit-pedestal` provides an alternative routing engine for Pedestal.
```clj
[metosin/reitit-pedestal "0.9.0"]
[metosin/reitit-pedestal "0.9.1"]
```
Why should one use reitit instead of the Pedestal [default routing](http://pedestal.io/reference/routing-quick-reference)?
@ -26,8 +26,8 @@ A minimalistic example on how to to swap the default-router with a reitit router
```clj
; [io.pedestal/pedestal.service "0.5.5"]
; [io.pedestal/pedestal.jetty "0.5.5"]
; [metosin/reitit-pedestal "0.9.0"]
; [metosin/reitit "0.9.0"]
; [metosin/reitit-pedestal "0.9.1"]
; [metosin/reitit "0.9.1"]
(require '[io.pedestal.http :as server])
(require '[reitit.pedestal :as pedestal])

View file

@ -1,7 +1,7 @@
# Sieppari
```clj
[metosin/reitit-sieppari "0.9.0"]
[metosin/reitit-sieppari "0.9.1"]
```
[Sieppari](https://github.com/metosin/sieppari) is a new and fast interceptor implementation for Clojure, with pluggable async supporting [core.async](https://github.com/clojure/core.async), [Manifold](https://github.com/ztellman/manifold) and [Promesa](http://funcool.github.io/promesa/latest).

View file

@ -65,7 +65,7 @@ There is an extra option in http-router (actually, in the underlying interceptor
### Printing Context Diffs
```clj
[metosin/reitit-interceptors "0.9.0"]
[metosin/reitit-interceptors "0.9.1"]
```
Using `reitit.http.interceptors.dev/print-context-diffs` transformation, the context diffs between each interceptor are printed out to the console. To use it, add the following router option:

View file

@ -1,7 +1,7 @@
# Default Middleware
```clj
[metosin/reitit-middleware "0.9.0"]
[metosin/reitit-middleware "0.9.1"]
```
Any Ring middleware can be used with `reitit-ring`, but using data-driven middleware is preferred as they are easier to manage and in many cases yield better performance. `reitit-middleware` contains a set of common ring middleware, lifted into data-driven middleware.

View file

@ -1,7 +1,7 @@
# Exception Handling with Ring
```clj
[metosin/reitit-middleware "0.9.0"]
[metosin/reitit-middleware "0.9.1"]
```
Exceptions thrown in router creation can be [handled with custom exception handler](../basics/error_messages.md). By default, exceptions thrown at runtime from a handler or a middleware are not caught by the `reitit.ring/ring-handler`. A good practice is to have a top-level exception handler to log and format errors for clients.

View file

@ -5,7 +5,7 @@
Read more about the [Ring Concepts](https://github.com/ring-clojure/ring/wiki/Concepts).
```clj
[metosin/reitit-ring "0.9.0"]
[metosin/reitit-ring "0.9.1"]
```
## `reitit.ring/router`

View file

@ -1,7 +1,7 @@
# Swagger Support
```
[metosin/reitit-swagger "0.9.0"]
[metosin/reitit-swagger "0.9.1"]
```
Reitit supports [Swagger2](https://swagger.io/) documentation, thanks to [schema-tools](https://github.com/metosin/schema-tools) and [spec-tools](https://github.com/metosin/spec-tools). Documentation is extracted from route definitions, coercion `:parameters` and `:responses` and from a set of new documentation keys.
@ -47,7 +47,7 @@ If you need to post-process the generated spec, just wrap the handler with a cus
[Swagger-ui](https://github.com/swagger-api/swagger-ui) is a user interface to visualize and interact with the Swagger specification. To make things easy, there is a pre-integrated version of the swagger-ui as a separate module.
```
[metosin/reitit-swagger-ui "0.9.0"]
[metosin/reitit-swagger-ui "0.9.1"]
```
`reitit.swagger-ui/create-swagger-ui-handler` can be used to create a ring-handler to serve the swagger-ui. It accepts the following options:

View file

@ -59,7 +59,7 @@ There is an extra option in the Ring router (actually, in the underlying middlew
### Printing Request Diffs
```clj
[metosin/reitit-middleware "0.9.0"]
[metosin/reitit-middleware "0.9.1"]
```
Using `reitit.ring.middleware.dev/print-request-diffs` transformation, the request diffs between each middleware are printed out to the console. To use it, add the following router option:

View file

@ -2,6 +2,6 @@
:description "Reitit Buddy Auth App"
:dependencies [[org.clojure/clojure "1.11.2"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[buddy "2.0.0"]]
:repl-options {:init-ns example.server})

View file

@ -10,9 +10,9 @@
[ring "1.12.1"]
[hiccup "1.0.5"]
[org.clojure/clojurescript "1.11.132"]
[metosin/reitit "0.9.0"]
[metosin/reitit-schema "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/reitit-schema "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[cljsjs/react "17.0.2-0"]
[cljsjs/react-dom "17.0.2-0"]
;; Just for pretty printting the match

View file

@ -10,9 +10,9 @@
[ring "1.12.1"]
[hiccup "1.0.5"]
[org.clojure/clojurescript "1.11.132"]
[metosin/reitit "0.9.0"]
[metosin/reitit-schema "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/reitit-schema "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[cljsjs/react "17.0.2-0"]
[cljsjs/react-dom "17.0.2-0"]
;; Just for pretty printting the match

View file

@ -10,9 +10,9 @@
[ring "1.12.1"]
[hiccup "1.0.5"]
[org.clojure/clojurescript "1.10.520"]
[metosin/reitit "0.9.0"]
[metosin/reitit-spec "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/reitit-spec "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[cljsjs/react "17.0.2-0"]
[cljsjs/react-dom "17.0.2-0"]
;; Just for pretty printting the match

View file

@ -10,9 +10,9 @@
[ring "1.12.1"]
[hiccup "1.0.5"]
[org.clojure/clojurescript "1.11.132"]
[metosin/reitit "0.9.0"]
[metosin/reitit-malli "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/reitit-malli "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[cljsjs/react "17.0.2-0"]
[cljsjs/react-dom "17.0.2-0"]
;; Just for pretty printting the match

View file

@ -10,9 +10,9 @@
[ring "1.12.1"]
[hiccup "1.0.5"]
[org.clojure/clojurescript "1.11.132"]
[metosin/reitit "0.9.0"]
[metosin/reitit-spec "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/reitit-spec "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[cljsjs/react "17.0.2-0"]
[cljsjs/react-dom "17.0.2-0"]
;; Just for pretty printting the match

View file

@ -1,7 +1,7 @@
(defproject frontend-re-frame "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.11.2"]
[org.clojure/clojurescript "1.11.132"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[reagent "1.2.0"]
[re-frame "0.10.6"]
[cljsjs/react "17.0.2-0"]

View file

@ -10,9 +10,9 @@
[ring "1.12.1"]
[hiccup "1.0.5"]
[org.clojure/clojurescript "1.11.132"]
[metosin/reitit "0.9.0"]
[metosin/reitit-spec "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/reitit-spec "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[cljsjs/react "17.0.2-0"]
[cljsjs/react-dom "17.0.2-0"]
;; Just for pretty printting the match

View file

@ -3,6 +3,6 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[ring/ring-jetty-adapter "1.12.1"]
[aleph "0.7.1"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/ring-swagger-ui "5.9.0"]]
:repl-options {:init-ns example.server})

View file

@ -5,5 +5,5 @@
[funcool/promesa "11.0.678"]
[manifold "0.4.2"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]]
[metosin/reitit "0.9.1"]]
:repl-options {:init-ns example.server})

View file

@ -2,4 +2,4 @@
:description "Reitit coercion with vanilla ring"
:dependencies [[org.clojure/clojure "1.11.2"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]])
[metosin/reitit "0.9.1"]])

View file

@ -3,7 +3,7 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[metosin/jsonista "0.3.8"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/ring-swagger-ui "5.9.0"]]
:repl-options {:init-ns example.server}
:profiles {:dev {:dependencies [[ring/ring-mock "0.4.0"]]}})

View file

@ -3,7 +3,7 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[io.pedestal/pedestal.service "0.6.3"]
[io.pedestal/pedestal.jetty "0.6.3"]
[metosin/reitit-malli "0.9.0"]
[metosin/reitit-pedestal "0.9.0"]
[metosin/reitit "0.9.0"]]
[metosin/reitit-malli "0.9.1"]
[metosin/reitit-pedestal "0.9.1"]
[metosin/reitit "0.9.1"]]
:repl-options {:init-ns server})

View file

@ -3,6 +3,6 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[io.pedestal/pedestal.service "0.6.3"]
[io.pedestal/pedestal.jetty "0.6.3"]
[metosin/reitit-pedestal "0.9.0"]
[metosin/reitit "0.9.0"]]
[metosin/reitit-pedestal "0.9.1"]
[metosin/reitit "0.9.1"]]
:repl-options {:init-ns example.server})

View file

@ -3,6 +3,6 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[io.pedestal/pedestal.service "0.6.3"]
[io.pedestal/pedestal.jetty "0.6.3"]
[metosin/reitit-pedestal "0.9.0"]
[metosin/reitit "0.9.0"]]
[metosin/reitit-pedestal "0.9.1"]
[metosin/reitit "0.9.1"]]
:repl-options {:init-ns example.server})

View file

@ -2,5 +2,5 @@
:description "Reitit Ring App"
:dependencies [[org.clojure/clojure "1.11.2"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]]
[metosin/reitit "0.9.1"]]
:repl-options {:init-ns example.server})

View file

@ -2,7 +2,7 @@
:description "Reitit Ring App with Integrant"
:dependencies [[org.clojure/clojure "1.11.2"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[integrant "0.8.1"]]
:main example.server
:repl-options {:init-ns user}

View file

@ -3,6 +3,6 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[metosin/jsonista "0.3.8"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]]
[metosin/reitit "0.9.1"]]
:repl-options {:init-ns example.server}
:profiles {:dev {:dependencies [[ring/ring-mock "0.4.0"]]}})

View file

@ -3,7 +3,7 @@
:dependencies [[org.clojure/clojure "1.11.2"]
[metosin/jsonista "0.3.8"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/ring-swagger-ui "5.9.0"]]
:repl-options {:init-ns example.server}
:profiles {:dev {:dependencies [[ring/ring-mock "0.4.0"]]}})

View file

@ -2,7 +2,7 @@
:description "Reitit Ring App with Swagger"
:dependencies [[org.clojure/clojure "1.11.2"]
[ring/ring-jetty-adapter "1.12.1"]
[metosin/reitit "0.9.0"]
[metosin/reitit "0.9.1"]
[metosin/ring-swagger-ui "5.9.0"]]
:repl-options {:init-ns example.server}
:profiles {:dev {:dependencies [[ring/ring-mock "0.4.0"]]}})

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-core "0.9.0"
(defproject metosin/reitit-core "0.9.1"
:description "Snappy data-driven router for Clojure(Script)"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-dev "0.9.0"
(defproject metosin/reitit-dev "0.9.1"
:description "Snappy data-driven router for Clojure(Script)"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-frontend "0.9.0"
(defproject metosin/reitit-frontend "0.9.1"
:description "Reitit: Clojurescript frontend routing core"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-http "0.9.0"
(defproject metosin/reitit-http "0.9.1"
:description "Reitit: HTTP routing with interceptors"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-interceptors "0.9.0"
(defproject metosin/reitit-interceptors "0.9.1"
:description "Reitit, common interceptors bundled"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-malli "0.9.0"
(defproject metosin/reitit-malli "0.9.1"
:description "Reitit: Malli coercion"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-middleware "0.9.0"
(defproject metosin/reitit-middleware "0.9.1"
:description "Reitit, common middleware bundled"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject fi.metosin/reitit-openapi "0.9.0"
(defproject fi.metosin/reitit-openapi "0.9.1"
:description "Reitit: OpenAPI-support"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-pedestal "0.9.0"
(defproject metosin/reitit-pedestal "0.9.1"
:description "Reitit + Pedestal Integration"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-ring "0.9.0"
(defproject metosin/reitit-ring "0.9.1"
:description "Reitit: Ring routing"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-schema "0.9.0"
(defproject metosin/reitit-schema "0.9.1"
:description "Reitit: Plumatic Schema coercion"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-sieppari "0.9.0"
(defproject metosin/reitit-sieppari "0.9.1"
:description "Reitit: Sieppari Interceptors"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-spec "0.9.0"
(defproject metosin/reitit-spec "0.9.1"
:description "Reitit: clojure.spec coercion"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-swagger-ui "0.9.0"
(defproject metosin/reitit-swagger-ui "0.9.1"
:description "Reitit: Swagger-ui support"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-swagger "0.9.0"
(defproject metosin/reitit-swagger "0.9.1"
:description "Reitit: Swagger-support"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit "0.9.0"
(defproject metosin/reitit "0.9.1"
:description "Snappy data-driven router for Clojure(Script)"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"

View file

@ -1,4 +1,4 @@
(defproject metosin/reitit-parent "0.9.0"
(defproject metosin/reitit-parent "0.9.1"
:description "Snappy data-driven router for Clojure(Script)"
:url "https://github.com/metosin/reitit"
:license {:name "Eclipse Public License"
@ -18,22 +18,22 @@
;; TODO: need to verify that the code actually worked with Java1.8, see #242
;; Ring 1.13.1 drops support for Java 1.8 so lets target 11
:javac-options ["-Xlint:unchecked" "-target" "11" "-source" "11"]
:managed-dependencies [[metosin/reitit "0.9.0"]
[metosin/reitit-core "0.9.0"]
[metosin/reitit-dev "0.9.0"]
[metosin/reitit-spec "0.9.0"]
[metosin/reitit-malli "0.9.0"]
[metosin/reitit-schema "0.9.0"]
[metosin/reitit-ring "0.9.0"]
[metosin/reitit-middleware "0.9.0"]
[metosin/reitit-http "0.9.0"]
[metosin/reitit-interceptors "0.9.0"]
[metosin/reitit-swagger "0.9.0"]
[fi.metosin/reitit-openapi "0.9.0"]
[metosin/reitit-swagger-ui "0.9.0"]
[metosin/reitit-frontend "0.9.0"]
[metosin/reitit-sieppari "0.9.0"]
[metosin/reitit-pedestal "0.9.0"]
:managed-dependencies [[metosin/reitit "0.9.1"]
[metosin/reitit-core "0.9.1"]
[metosin/reitit-dev "0.9.1"]
[metosin/reitit-spec "0.9.1"]
[metosin/reitit-malli "0.9.1"]
[metosin/reitit-schema "0.9.1"]
[metosin/reitit-ring "0.9.1"]
[metosin/reitit-middleware "0.9.1"]
[metosin/reitit-http "0.9.1"]
[metosin/reitit-interceptors "0.9.1"]
[metosin/reitit-swagger "0.9.1"]
[fi.metosin/reitit-openapi "0.9.1"]
[metosin/reitit-swagger-ui "0.9.1"]
[metosin/reitit-frontend "0.9.1"]
[metosin/reitit-sieppari "0.9.1"]
[metosin/reitit-pedestal "0.9.1"]
[metosin/ring-swagger-ui "5.20.0"]
[metosin/spec-tools "0.10.7"]
[metosin/schema-tools "0.13.1"]