swagger-api / swagger-js

Javascript library to connect to swagger-enabled APIs via browser or nodejs
http://swagger.io
Apache License 2.0
2.6k stars 755 forks source link

resolver: utilize ApiDOM's async plugins dispatcher and visitor merger #3455

Closed char0n closed 3 months ago

char0n commented 3 months ago

Our OpenAPI 3.1.0 dereference strategy implemented in this repo is merging sync visitor with async ones. Sync visitor merging mechanism is used and this fact alone is causing various side effects.

Another thing is async plugins dispatch - it's best to always use async version of plugins dispatch mechanism. We use plugins from ApiDOM and we have no idea if they change from sync to async in the future.

char0n commented 3 months ago

Another thing is async plugins dispatch - it's best to always use async version of plugins dispatch mechanism. We use plugins from ApiDOM and we have no idea if they change from sync to async in the future.

Will be addressed upstream by https://github.com/swagger-api/apidom/issues/4008

char0n commented 3 months ago

Our OpenAPI 3.1.0 dereference strategy implemented in this repo is merging sync visitor with async ones. Sync visitor merging mechanism is used and this fact alone is causing various side effects.

Addressed in https://github.com/swagger-api/swagger-js/pull/3456