Commit graph

33 commits

Author SHA1 Message Date
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
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
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
1c65f533cf feat: openapi3 multipart support for malli 2023-03-15 17:48:03 +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
Tommi Reiman
0648296315
Merge branch 'master' into feature/openapi 2023-01-22 14:29:22 +02:00
Tommi Reiman
8e1e7e62ca fix spec tests + format 2023-01-21 10:58:53 +02:00
Ben Sless
bc4443a935 Remove schema and errors from default malli coercion error keys 2022-12-06 21:20:48 +02:00
Enzzo Cavallo
c576b47634
OpenAPI V3 Support 2022-09-05 03:21:53 -03: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
Tommi Reiman
20b7cabed7 Fix Malli encoding,, #498 2021-08-03 08:46:51 +03:00
Tommi Reiman
fbff819909 update deps 2020-09-26 12:11:14 +03:00
Ryan Schmukler
962ffc6fb5
fix: coercion.malli use m/type
Renames `m/name` to `m/type` per the breaking change introduced in malli
4880734d554511f16fee9c1d28a9d340c8b632c1.
2020-06-11 10:20:50 -04:00
Tommi Reiman
e649ed22b9 New options for malli coercion 2020-05-26 08:09:35 +03:00
Tommi Reiman
ea5ec93793 faster malli coercion 2020-05-25 21:54:55 +03:00
Tommi Reiman
39aafc9029 Fix malli + swagger 2020-05-16 14:08:16 +03:00
Olim Saidov
a7a0b0e287
Merge branch 'master' into patch-1 2020-02-05 14:46:32 +05:00
Olim Saidov
927d1c1bbb Pass malli options to compile fn 2020-02-05 14:33:36 +05:00
Olim Saidov
f17b47b0db Pass malli options to extract-parameter fn 2020-02-05 14:04:24 +05:00
Tommi Reiman
b651fac0b0 Use latest malli fixing visitors 2020-01-08 21:50:04 +02:00
Tommi Reiman
9b024db897 Response coercion is decode + validate + encode 2020-01-07 07:03:57 +02:00
Tommi Reiman
91a2945578 Add support for default values 2019-12-30 22:58:05 +02:00
Tommi Reiman
fa0c00c5b2 Update dep 2019-12-28 09:40:09 +02:00
Tommi Reiman
44f6c51610 Finalize malli coercion 2019-12-28 02:37:33 +02:00
Tommi Reiman
3c61824f1d malli coercion + strip extra keys by default with spec 2019-12-28 00:51:41 +02:00
Tommi Reiman
a7cd1cf398 response endoding, WIP: tests 2019-12-27 22:03:52 +02:00
Tommi Reiman
93f947831d malli + swagger docs 2019-12-27 22:03:52 +02:00
Tommi Reiman
10be520a0d Malli + coercion 2019-12-27 22:03:52 +02:00