Commit graph

641 commits

Author SHA1 Message Date
Tommi Reiman
3e6c3f589f review comments 2023-05-22 20:23:47 +03:00
Tommi Reiman
9ac713f0e5 doesn't work properly with spec 2023-05-22 09:16:57 +03:00
Tommi Reiman
ce06214014 welcome 2-phase schema compilation
1) use `:update-paths` to handle data in certain (loose) paths differently
  - accumulate schemas in all relevant routers into vector
  - we do not know the coercion here (ring/http have special handling of data, e.g. http-methods)

2) run coercion compiler for the model to merge the effective model
  - schema + malli = should work ok, spec = best effort

3) publish final schemas into compiled route data
2023-05-21 20:32:40 +03:00
Tommi Reiman
3f265888a4 cleanup 2023-05-21 20:16:45 +03:00
Tommi Reiman
550ea6da58 path-update 2023-05-21 20:13:43 +03:00
Tommi Reiman
4d0e40f135 ctrl.* is such test 2023-05-21 18:15:44 +03:00
Tommi Reiman
d45dd151b7 document meta-merge 2023-05-21 18:11:42 +03:00
Tommi Reiman
b3383b0396 0.7.3-alpha4 2023-05-17 18:23:05 +03:00
Joel Kaasinen
b56c15b64c fix: openapi malli parameter descriptions
... should come from the parameter type, not from the parent :map
2023-05-17 08:19:44 +03:00
Juho Teperi
0b6ed62738 Release 0.7.0-alpha3 2023-05-05 12:57:31 +03:00
Juho Teperi
5adc5ffba0 Compile reitit.Trie with Java 1.8 target 2023-05-05 12:56:02 +03:00
Juho Teperi
e1f9cfb286 Fix versions 2023-05-05 11:18:38 +03:00
Juho Teperi
e204d4ff1b Release 0.7.0-alpha2 2023-05-04 15:20:31 +03:00
Juho Teperi
9f6565f097
Merge pull request #604 from metosin/fix-377-fragment-strings
Fix #377, navigate to routes with fragment string in frontend
2023-05-04 15:12:41 +03:00
Juho Teperi
b9f189b3f7 Fix Html5History missing fragment on initial load 2023-05-04 15:05:27 +03:00
Tommi Reiman
f015b6669a fi 2023-05-03 15:41:11 +03:00
Tommi Reiman
3336880b01 0.7.0-alpha1 2023-05-03 10:25:01 +03:00
Joel Kaasinen
33f7b1ccd7 chore: upgrade lein-parent plugin 2023-04-13 09:23:08 +03:00
Juho Teperi
56e6dbe8d8 Fix #377, navigate to routes with fragment string in frontend 2023-03-24 14:42:13 +02:00
Juho Teperi
e2217887e3 Comments about differences to reitit.impl 2023-03-24 13:59:02 +02:00
Juho Teperi
dad8f530a6 Add example and update docs 2023-03-24 11:32:22 +02:00
Juho Teperi
48bbdba8ed Implement navigate and set-query functions 2023-03-24 11:16:09 +02:00
Juho Teperi
e3e93eaffb Add some tests 2023-03-23 15:36:48 +02:00
Juho Teperi
dd724f0d0e Fix #600: Add frontend function to update query-params for current path 2023-03-23 15:13:27 +02:00
Joel Kaasinen
d8e28e153b fix: swagger multipart support
1. For spec we were including some extra stuff in the parameter
specification:

{:description "",
 :in "formData",
 :name "file",
 :properties {"bytes" {:format "byte", :type "string"},
              "content-type" {:type "string"},
              "filename" {:type "string"}},
 :required ["filename" "content-type" "bytes"],
 :type "file"}

2. For malli the :type changed from "file" to "string" because of
openapi changes. Now openapi and swagger both get the right type.

3. Test for swagger multipart support
2023-03-17 14:54:46 +02:00
Joel Kaasinen
b5c9ee274d feat: generate correct openapi for reitit.ring.malli 2023-03-16 09:57:02 +02:00
Joel Kaasinen
acbcec1ed9 feat: openapi3 multipart support for schema 2023-03-15 17:48:03 +02:00
Joel Kaasinen
1c65f533cf feat: openapi3 multipart support for malli 2023-03-15 17:48:03 +02:00
Joel Kaasinen
f322597c04 feat: openapi3 multipart support for spec 2023-03-15 17:48:03 +02:00
Joel Kaasinen
bcd12d9f31 refactor: push openapi/openapi-spec call inside merge
to make reitit.coercion.spec match reitit.coercion.schema
2023-03-15 13:38:34 +02:00
Joel Kaasinen
6f72acdf32 doc: fix example in openapi-feature docstring 2023-03-15 09:24:27 +02:00
Joel Kaasinen
814c8b88e2 refactor: factor out -identity-coercer 2023-03-14 14:39:05 +02:00
Joel Kaasinen
bbaf4b27f7 refactor: remove commented-out code 2023-03-14 14:37:53 +02:00
Tommi Reiman
11f47527f1 add reitit-openapi module, 0.5.18 -> 0.6.0 2023-03-14 12:24:05 +02:00
Joel Kaasinen
3fa50ea0f6 doc: mark openapi support as alpha 2023-03-10 10:17:42 +02:00
Joel Kaasinen
8c87fef7b6 feat: warning when swagger encounters per-content-type coercions 2023-03-10 08:52:45 +02:00
Joel Kaasinen
ae55b6628c doc: update docstring of openapi-feature 2023-03-09 10:21:46 +02:00
Joel Kaasinen
50c1af9a5b feat: route data validation for per-content-type coercions 2023-03-08 14:39:52 +02:00
Joel Kaasinen
9ae3cd0824 fix: reitit.openapi route data validation
:kind set? would've worked, but there's no need to insist a set

also, turn on route data validation in openapi_test.clj
2023-03-08 14:39:52 +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
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
Tommi Reiman
47f1ee0c84 0.6.0 2023-02-21 15:17:00 +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
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
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