-
Notifications
You must be signed in to change notification settings - Fork 762
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OpenAPI 3.1.0 support: add support for parameterMacro #2748
Comments
Refractor plugin cannot be used as somethimes normalization is skipped and utilizing refractor plugin would require additional traversal. Optimal option seems like embedding the |
We will not use specMap plugin as, it's something that we want to rely on less and less |
This change is specific to OpenAPI 3.1.0 strategy. Refs #2748
This change is specific to OpenAPI 3.1.0 strategy. Refs #2748
This change is specific to OpenAPI 3.1.0 strategy. Refs #2748
This change is specific to OpenAPI 3.1.0 strategy. Refs #2748
# [3.19.0-alpha.1](v3.18.5...v3.19.0-alpha.1) (2023-01-23) ### Bug Fixes * **resolver:** fix useCircularStructure option support in OpenAPI 3.1 ([d3a73fd](d3a73fd)), closes [#2755](#2755) ### Features * add OpenAPI 3.1.0 dereference strategy ([#2740](#2740)) ([945bf92](945bf92)), closes [#2717](#2717) * **normalization:** introduce normalization for OpenAPI 3.1.0 ([58981e4](58981e4)), closes [#2743](#2743) * **resolve:** add ApiDOM JSON parser ([#2739](#2739)) ([a4e6e52](a4e6e52)), closes [#2717](#2717) [#2718](#2718) * **resolve:** add ApiDOM OpenAPI 3.1.0 JSON parser ([dc5b833](dc5b833)), closes [#2717](#2717) * **resolve:** add ApiDOM OpenAPI 3.1.0 YAML 1.2 parser ([77504ec](77504ec)), closes [#2717](#2717) * **resolve:** add ApiDOM resolver based on SwaggerClient HTTP client ([485bb01](485bb01)), closes [#2717](#2717) * **resolve:** add ApiDOM YAML 1.2 parser ([db4737f](db4737f)), closes [#2717](#2717) * **resolver:** add support for mode resolver option ([5e9cf3d](5e9cf3d)), closes [#2750](#2750) * **resolver:** add support for modelPropertyMacro option ([4f3ceda](4f3ceda)), closes [#2749](#2749) * **resolver:** add support for OpenAPI 3.1.0 resolution ([e04ead9](e04ead9)), closes [#2744](#2744) * **resolver:** add support for parameterMacro option ([34f8a4b](34f8a4b)), closes [#2748](#2748) * **resolver:** add support for pathDiscriminator option ([e71c989](e71c989)), closes [#2753](#2753) * **resolver:** limit depth of dereference to max 100 ([09c589a](09c589a)) * **subtree-resolver:** adapt to support OpenAPI 3.1.0 ([75083b6](75083b6)), closes [#2738](#2738)
This change is specific to OpenAPI 3.1.0 strategy. Refs #2748
# [3.19.0-alpha.1](v3.18.5...v3.19.0-alpha.1) (2023-01-23) ### Bug Fixes * **resolver:** fix useCircularStructure option support in OpenAPI 3.1 ([f89a60f](f89a60f)), closes [#2755](#2755) ### Features * add OpenAPI 3.1.0 dereference strategy ([#2740](#2740)) ([62b4745](62b4745)), closes [#2717](#2717) * **normalization:** introduce normalization for OpenAPI 3.1.0 ([35e53d5](35e53d5)), closes [#2743](#2743) * **resolve:** add ApiDOM JSON parser ([#2739](#2739)) ([0ce91cc](0ce91cc)), closes [#2717](#2717) [#2718](#2718) * **resolve:** add ApiDOM OpenAPI 3.1.0 JSON parser ([f231a61](f231a61)), closes [#2717](#2717) * **resolve:** add ApiDOM OpenAPI 3.1.0 YAML 1.2 parser ([48340c6](48340c6)), closes [#2717](#2717) * **resolve:** add ApiDOM resolver based on SwaggerClient HTTP client ([551c101](551c101)), closes [#2717](#2717) * **resolve:** add ApiDOM YAML 1.2 parser ([f9f9222](f9f9222)), closes [#2717](#2717) * **resolver:** add support for mode resolver option ([5dfaca4](5dfaca4)), closes [#2750](#2750) * **resolver:** add support for modelPropertyMacro option ([5b76f37](5b76f37)), closes [#2749](#2749) * **resolver:** add support for OpenAPI 3.1.0 resolution ([19ecbe4](19ecbe4)), closes [#2744](#2744) * **resolver:** add support for parameterMacro option ([965ca7a](965ca7a)), closes [#2748](#2748) * **resolver:** add support for pathDiscriminator option ([bf6c109](bf6c109)), closes [#2753](#2753) * **resolver:** limit depth of dereference to max 100 ([e1aaf54](e1aaf54)) * **subtree-resolver:** adapt to support OpenAPI 3.1.0 ([c20b526](c20b526)), closes [#2738](#2738)
# [3.19.0-alpha.1](v3.18.5...v3.19.0-alpha.1) (2023-01-23) ### Bug Fixes * **resolver:** fix useCircularStructure option support in OpenAPI 3.1 ([f89a60f](f89a60f)), closes [#2755](#2755) ### Features * add OpenAPI 3.1.0 dereference strategy ([#2740](#2740)) ([62b4745](62b4745)), closes [#2717](#2717) * bundle ApiDOM dependencies ([85d234f](85d234f)) * **normalization:** introduce normalization for OpenAPI 3.1.0 ([35e53d5](35e53d5)), closes [#2743](#2743) * **resolve:** add ApiDOM JSON parser ([#2739](#2739)) ([0ce91cc](0ce91cc)), closes [#2717](#2717) [#2718](#2718) * **resolve:** add ApiDOM OpenAPI 3.1.0 JSON parser ([f231a61](f231a61)), closes [#2717](#2717) * **resolve:** add ApiDOM OpenAPI 3.1.0 YAML 1.2 parser ([48340c6](48340c6)), closes [#2717](#2717) * **resolve:** add ApiDOM resolver based on SwaggerClient HTTP client ([551c101](551c101)), closes [#2717](#2717) * **resolve:** add ApiDOM YAML 1.2 parser ([f9f9222](f9f9222)), closes [#2717](#2717) * **resolver:** add support for mode resolver option ([5dfaca4](5dfaca4)), closes [#2750](#2750) * **resolver:** add support for modelPropertyMacro option ([5b76f37](5b76f37)), closes [#2749](#2749) * **resolver:** add support for OpenAPI 3.1.0 resolution ([19ecbe4](19ecbe4)), closes [#2744](#2744) * **resolver:** add support for parameterMacro option ([965ca7a](965ca7a)), closes [#2748](#2748) * **resolver:** add support for pathDiscriminator option ([bf6c109](bf6c109)), closes [#2753](#2753) * **resolver:** limit depth of dereference to max 100 ([e1aaf54](e1aaf54)) * **subtree-resolver:** adapt to support OpenAPI 3.1.0 ([c20b526](c20b526)), closes [#2738](#2738)
# [3.19.0-beta.1](v3.18.5...v3.19.0-beta.1) (2023-02-15) ### Bug Fixes * **resolver:** fix useCircularStructure option support in OpenAPI 3.1 ([f89a60f](f89a60f)), closes [#2755](#2755) * **resolver:** remove LinkElement hook main dereference ([ef9d20d](ef9d20d)), closes [#2793](#2793) ### Features * add OpenAPI 3.1.0 dereference strategy ([#2740](#2740)) ([62b4745](62b4745)), closes [#2717](#2717) * add support for Node.js >= 12.20.0 ([a79b7f6](a79b7f6)) * bundle ApiDOM dependencies ([85d234f](85d234f)) * expose ApiDOM components as public API ([#2828](#2828)) ([b7ddc50](b7ddc50)), closes [#2827](#2827) * **normalization:** introduce normalization for OpenAPI 3.1.0 ([35e53d5](35e53d5)), closes [#2743](#2743) * **resolve:** add ApiDOM JSON parser ([#2739](#2739)) ([0ce91cc](0ce91cc)), closes [#2717](#2717) [#2718](#2718) * **resolve:** add ApiDOM OpenAPI 3.1.0 JSON parser ([f231a61](f231a61)), closes [#2717](#2717) * **resolve:** add ApiDOM OpenAPI 3.1.0 YAML 1.2 parser ([48340c6](48340c6)), closes [#2717](#2717) * **resolve:** add ApiDOM resolver based on SwaggerClient HTTP client ([551c101](551c101)), closes [#2717](#2717) * **resolve:** add ApiDOM YAML 1.2 parser ([f9f9222](f9f9222)), closes [#2717](#2717) * **resolver:** add support for mode resolver option ([5dfaca4](5dfaca4)), closes [#2750](#2750) * **resolver:** add support for modelPropertyMacro option ([5b76f37](5b76f37)), closes [#2749](#2749) * **resolver:** add support for OpenAPI 3.1.0 resolution ([19ecbe4](19ecbe4)), closes [#2744](#2744) * **resolver:** add support for parameterMacro option ([965ca7a](965ca7a)), closes [#2748](#2748) * **resolver:** add support for pathDiscriminator option ([bf6c109](bf6c109)), closes [#2753](#2753) * **resolver:** collect errors in AllOfVisitor hooks ([#2809](#2809)) ([627ee8d](627ee8d)), closes [#2808](#2808) * **resolver:** collect errors in ExampleElement visitor hook ([09872a5](09872a5)), closes [#2798](#2798) * **resolver:** collect errors in ModelPropertyMacro visitor hooks ([#2811](#2811)) ([6cef9ff](6cef9ff)), closes [#2810](#2810) * **resolver:** collect errors in ParameterMacroVisitor visitor hooks ([#2813](#2813)) ([29ea34d](29ea34d)), closes [#2812](#2812) * **resolver:** collect errors in PathItemElement visitor hook ([#2805](#2805)) ([fba4bbc](fba4bbc)), closes [#2804](#2804) * **resolver:** collect errors in ReferenceElement visitor hook ([#2803](#2803)) ([3983953](3983953)), closes [#2802](#2802) * **resolver:** collect errors in SchemaElement visitor hook ([#2807](#2807)) ([a098d85](a098d85)), closes [#2806](#2806) * **resolver:** create ApiDOM path -> SwaggerClient path translator ([280f301](280f301)), closes [#2794](#2794) * **resolver:** limit depth of dereference to max 100 ([e1aaf54](e1aaf54)) * **subtree-resolver:** adapt to support OpenAPI 3.1.0 ([c20b526](c20b526)), closes [#2738](#2738)
# [3.19.0](v3.18.5...v3.19.0) (2023-03-06) ### Bug Fixes * **build:** allow bundlers to process code properly ([#2852](#2852)) ([4eb131e](4eb131e)) * **build:** fix bundling of overridden ApiDOM deps ([#2853](#2853)) ([604cf87](604cf87)) * **build:** fix failing UMD build ([d8948ae](d8948ae)) * **build:** remove @types/ramda from bundled dependencies ([783f1b1](783f1b1)) * **install:** fix local dev setup for npm >= 8.19.3 ([6eee23d](6eee23d)) * **resolver:** fix useCircularStructure option support in OpenAPI 3.1 ([f89a60f](f89a60f)), closes [#2755](#2755) * **resolver:** remove LinkElement hook main dereference ([ef9d20d](ef9d20d)), closes [#2793](#2793) * **resolver:** use native error cause syntax with ApiDOM errors ([#2842](#2842)) ([ae0e7e8](ae0e7e8)) ### Features * add OpenAPI 3.1.0 dereference strategy ([#2740](#2740)) ([62b4745](62b4745)), closes [#2717](#2717) * add support for Node.js >= 12.20.0 ([a79b7f6](a79b7f6)) * **build:** limit the size of UMD build fragment as much as possible ([#2843](#2843)) ([982a858](982a858)), closes [#2837](#2837) * **build:** limit the size on npm package as much as possible ([#2841](#2841)) ([a6c9f4f](a6c9f4f)), closes [#2837](#2837) * bundle ApiDOM dependencies ([85d234f](85d234f)) * **deps:** use ApiDOM npmjs.com npm packages ([#2861](#2861)) ([1360993](1360993)), closes [#2860](#2860) * expose ApiDOM components as public API ([#2828](#2828)) ([b7ddc50](b7ddc50)), closes [#2827](#2827) * **normalization:** introduce normalization for OpenAPI 3.1.0 ([35e53d5](35e53d5)), closes [#2743](#2743) * **resolve:** add ApiDOM JSON parser ([#2739](#2739)) ([0ce91cc](0ce91cc)), closes [#2717](#2717) [#2718](#2718) * **resolve:** add ApiDOM OpenAPI 3.1.0 JSON parser ([f231a61](f231a61)), closes [#2717](#2717) * **resolve:** add ApiDOM OpenAPI 3.1.0 YAML 1.2 parser ([48340c6](48340c6)), closes [#2717](#2717) * **resolve:** add ApiDOM resolver based on SwaggerClient HTTP client ([551c101](551c101)), closes [#2717](#2717) * **resolve:** add ApiDOM YAML 1.2 parser ([f9f9222](f9f9222)), closes [#2717](#2717) * **resolver:** add support for mode resolver option ([5dfaca4](5dfaca4)), closes [#2750](#2750) * **resolver:** add support for modelPropertyMacro option ([5b76f37](5b76f37)), closes [#2749](#2749) * **resolver:** add support for OpenAPI 3.1.0 resolution ([19ecbe4](19ecbe4)), closes [#2744](#2744) * **resolver:** add support for parameterMacro option ([965ca7a](965ca7a)), closes [#2748](#2748) * **resolver:** add support for pathDiscriminator option ([bf6c109](bf6c109)), closes [#2753](#2753) * **resolver:** collect errors in AllOfVisitor hooks ([#2809](#2809)) ([627ee8d](627ee8d)), closes [#2808](#2808) * **resolver:** collect errors in ExampleElement visitor hook ([09872a5](09872a5)), closes [#2798](#2798) * **resolver:** collect errors in ModelPropertyMacro visitor hooks ([#2811](#2811)) ([6cef9ff](6cef9ff)), closes [#2810](#2810) * **resolver:** collect errors in ParameterMacroVisitor visitor hooks ([#2813](#2813)) ([29ea34d](29ea34d)), closes [#2812](#2812) * **resolver:** collect errors in PathItemElement visitor hook ([#2805](#2805)) ([fba4bbc](fba4bbc)), closes [#2804](#2804) * **resolver:** collect errors in ReferenceElement visitor hook ([#2803](#2803)) ([3983953](3983953)), closes [#2802](#2802) * **resolver:** collect errors in SchemaElement visitor hook ([#2807](#2807)) ([a098d85](a098d85)), closes [#2806](#2806) * **resolver:** create ApiDOM path -> SwaggerClient path translator ([280f301](280f301)), closes [#2794](#2794) * **resolver:** expose resolve makers ([#2855](#2855)) ([5b88577](5b88577)) * **resolver:** expose resolve strategies ([#2854](#2854)) ([2a39fb4](2a39fb4)) * **resolver:** limit depth of dereference to max 100 ([e1aaf54](e1aaf54)) * **subtree-resolver:** adapt to support OpenAPI 3.1.0 ([c20b526](c20b526)), closes [#2738](#2738)
Goal of this issue is to provide support for
parameterMacro
to OpenAPI 3.1.0 resolution. This can be implemented either by refractor plugin or directly into OpenAPI 3.1.0 dereference strategy. Research is needed to decide which option is simpler and more suitable.It it also possible use existing specMap plugin, but that would require additional traversal and inability to get rid of of spec map in future. It is also questionable if specMap would work on dereferenced structure with cycles (needs research).
The text was updated successfully, but these errors were encountered: