Commit graph

371 commits

Author SHA1 Message Date
Joel Kaasinen
8e099febdd test: validate generated openapi spec 2023-03-06 16:10:48 +02:00
Joel Kaasinen
4c990fb44f feat: openapi default request/response schemas
use a default schema from :request/:response :body for all specified
:content-types
2023-03-06 10:58:03 +02:00
Joel Kaasinen
c3a3ca9f95 feat: change syntax for :request parameter coercion default schema
use :request :body instead of :request :content :default for symmetry
with :response
2023-03-06 10:54:24 +02:00
Joel Kaasinen
7842160656 Merge remote-tracking branch 'origin/master' into openapi 2023-03-03 14:43:23 +02:00
Joel Kaasinen
2d60702769 fix: per-content-type openapi w/ spec 2023-03-03 14:15:31 +02:00
Joel Kaasinen
b149c8c5af test: rework openapi3 tests
- DRY out all-parameter-types-test and per-content-type-test
- Remove redundant assertions
- Run same test for malli/schema/spec
- Clean up commented-out code etc.
2023-03-03 14:15:31 +02:00
Joel Kaasinen
c8d679c6b3 feat: per-content-type request/response coercions
implemented on the reitit-core level so individual coercions don't
need changes

syntax:

{:parameters {:request {:content {"application/edn" [:map ...]}}}
 :responses {200 {:content {"application/edn" [:map ...]}}}}
2023-03-03 14:15:31 +02:00
Joel Kaasinen
8f48cdc96c test: enable openapi spec tests 2023-03-03 14:15:22 +02:00
Ilmo Raunio
310dcd0e99
Merge pull request #581 from metosin/add-support-for-fragment-parameters-2
Add reitit-frontend support for fragment string
2023-02-21 15:05:25 +02:00
Ilmo Raunio
e490f5df05
Merge pull request #584 from metosin/reloading-ring-handler
reloading-ring-handler
2023-02-21 14:42:33 +02:00
Juho Teperi
2494f702d9 Read fragment string without decoding
Users can use Malli decoding to control decoding per schema.
2023-02-16 13:13:48 +02:00
Juho Teperi
83c31e35bc Revert "Revert "Merge pull request #554 from just-sultanov/add-support-for-fragment-parameters""
This reverts commit 4d1b00edfa.
2023-02-16 11:53:27 +02:00
Joel Kaasinen
f03134e215 fix: malli openapi tests
malli.json-schema now outputs `:additionalProperties false`
2023-02-15 16:07:23 +02:00
bplubell
e175dc76c9 Fix incorrect ring-router doc references
It looks like documentation references to `ring-router` are left-overs
from early README examples - I couldn't find any code that ever used the
name. The Ring router named `reitit.ring/router`.

While it didn't take too long for me to realize why my `ring-router` was
not working, I had to look the examples to figure out the name of the
function was just `router` - which was confusing since the section
header stated `reitit-router`.
2023-01-31 15:51:31 -08:00
Tommi Reiman
d1bb44a88f
Merge branch 'master' into reloading-ring-handler 2023-01-22 14:30:06 +02:00
Tommi Reiman
0648296315
Merge branch 'master' into feature/openapi 2023-01-22 14:29:22 +02:00
Tommi Reiman
3fd20f2294 reloading-ring-handler 2023-01-22 14:15:08 +02:00
Tommi Reiman
8e1e7e62ca fix spec tests + format 2023-01-21 10:58:53 +02:00
Tommi Reiman
d1e02fd0a1 Update dependencies 2023-01-21 10:56:42 +02:00
Tommi Reiman
98a4d9b447 :meta-merge-fn -> :meta-merge 2023-01-21 10:56:42 +02:00
Tommi Reiman
3ec5acc7a1
Merge pull request #582 from ilmoraunio/issue-565
Include query-string as part of location header in redirect-trailing-slash-handler
2023-01-21 10:51:20 +02:00
Ilmo Raunio
0870b20a05 Add query-string to redirect-trailing-slash-handler 2023-01-20 00:20:10 +02:00
Juho Teperi
4d1b00edfa Revert "Merge pull request #554 from just-sultanov/add-support-for-fragment-parameters"
This reverts commit c2c267f4d8, reversing
changes made to 8087522b82.
2023-01-18 18:38:47 +02:00
Tommi Reiman
c2c267f4d8
Merge pull request #554 from just-sultanov/add-support-for-fragment-parameters
Add support for fragment parameters in the reitit-frontend module
2023-01-09 17:33:24 +02:00
Tommi Reiman
42e988e518
Merge branch 'master' into support-operationid 2023-01-09 17:27:00 +02:00
Tommi Reiman
26a581298a
Merge pull request #561 from pfeodrippe/meta-merge
add `:meta-merge-fn` option
2023-01-09 16:39:12 +02:00
Toni Väisänen
c69b4cde3a Handle empty seq as empty string in query-string
example:

instead of

```clojure
(query-string {:nil nil
               :vec []
               :seq-empty '()})
;; => "nil=&&"
```

now

```clojure
(query-string {:nil nil
               :vec []
               :seq-empty '()})
;; => "nil=&vec=&seq-empty="
```
2022-10-12 13:24:07 +03:00
Enzzo Cavallo
c576b47634
OpenAPI V3 Support 2022-09-05 03:21:53 -03:00
Paulo Feodrippe
fc73d02e01 add :meta-merge-fn option 2022-08-11 07:55:15 -04:00
Ilshat Sultanov
25a051b003
Add support for fragment parameters in the reitit-frontend module
We have to process the fragment parameters due to the fact that the authorization server returns a callback in the following format:
`https://example.com/oauth/google/callback#access_token=foo&refresh_token=bar&provider_token=baz&token_type=bearer&expires_in=3600`

Links:
- https://www.rfc-editor.org/rfc/rfc6749#section-4.2
- https://www.rfc-editor.org/rfc/rfc6749#section-4.2.2
2022-06-15 23:38:51 +05:00
Tommi Reiman
1ecfd1ae02 CHANGELOG, pass match too 2022-04-05 17:55:09 +03:00
Tommi Reiman
9e4b420fc8 on-coercion-error 2022-04-05 17:33:25 +03:00
Tommi Reiman
650ff3d6b3 . 2022-03-10 15:23:07 +02:00
Tommi Reiman
f9841363c5 faster impl, removes all intermediate steps + cleanup 2022-03-10 14:21:39 +02:00
Tommi Reiman
1e5fb601da fix #538 2022-03-10 13:42:53 +02:00
Tommi Reiman
f3dee769fb format-ns 2022-02-14 16:59:20 +02:00
Tommi Reiman
2aba5610c7 format 2022-02-14 16:58:10 +02:00
Tommi Reiman
d0f7126491 add support for malli-lite 2022-02-14 16:45:14 +02:00
Tommi Reiman
bdcb1eb5b1 clean-ns 2022-02-12 22:35:27 +02:00
Tommi Reiman
5d4c886d35 format 2022-02-12 22:34:26 +02:00
Miikka Koskinen
9160aa0f2b Add a test for /{foo}.html style routes
Just like path `///` would not match `/{foo}/`, `/..html` does not match
`/{foo}.html`.
2021-10-06 20:42:09 +03:00
Tommi Reiman
38f2bd4812
Merge branch 'master' into fix-resource-handler-url-decoding 2021-08-03 13:33:39 +03:00
Tommi Reiman
5486174722
Merge pull request #501 from metosin/malli-fix
Fix malli encoding & update deps
2021-08-03 13:29:53 +03:00
Tommi Reiman
020c424b4e dead code, CHANGELOG 2021-08-03 13:24:29 +03:00
Tommi Reiman
20b7cabed7 Fix Malli encoding,, #498 2021-08-03 08:46:51 +03:00
Dieter Komendera
056c70d269 Enrich request for pedestal/routing-interceptor default-queue
This ensures requests handled by the default queue also have
access to the router per the injected :reitit.core/router key
on the request.
2021-06-24 14:07:23 +02:00
Miikka Koskinen
1297cfd902 Handle URL-encoded paths in file and resource handlers 2021-04-30 14:38:18 +03:00
Miikka Koskinen
1b74373911 Use explicit :refers 2021-04-23 17:15:35 +03:00
Miikka Koskinen
1b583c1cc2 Remove operation-id uniqueness check
Let's leave that for other tools for now.
2021-04-23 17:02:17 +03:00
Miikka Koskinen
5824d9eeef Make the not-found-handler fix backwards compatible
PR #471 aimed to fix issue #464. However, the change was slightly
backwards-incompatible, since it made the file and resource handlers use
the default 404 handler when mounted outside of the router. The previous
behavior was to return nil in that case.

This patch restores the previous behavior and clarifies that `:path`
option can be used only when the file/resource handler is mounted
outside of a router.
2021-02-26 08:14:01 +02:00