Skip to content
This repository has been archived by the owner on Mar 6, 2024. It is now read-only.

Add support for Swagger (OpenApi) 3.0 #81

Closed
cdimascio opened this issue Mar 27, 2017 · 41 comments
Closed

Add support for Swagger (OpenApi) 3.0 #81

cdimascio opened this issue Mar 27, 2017 · 41 comments

Comments

@cdimascio
Copy link

cdimascio commented Mar 27, 2017

This is an excellent project, it will be great to see support for the new spec version.

https://github.com/OAI/OpenAPI-Specification/blob/3.0.0-rc0/versions/3.0.md
https://github.com/OAI/OpenAPI-Specification

@JamesMessinger
Copy link
Member

I fully intend to add support for OAI 3.0 soon 👍

@kyeotic
Copy link

kyeotic commented Aug 22, 2017

@BigstickCarpet any update on this?

@JamesMessinger
Copy link
Member

Yes, I'm making good progress on this. It's a lot of work and involves multiple different projects, so it will take some time.

@Stwissel
Copy link

Stwissel commented Sep 1, 2017

Where can we help out?

@JamesMessinger
Copy link
Member

You can review my progress here and give me any feedback that you have. I'm currently on a month-long business trip, so I haven't been able to work on it lately, but I'll get right back to it as soon as I return home in late September.

@kevingilbert100
Copy link

Excited for updates, will contribute if I can.

@vtremblay
Copy link

@BigstickCarpet are things going well for this update? Is there anything we can do?

@8lueberry
Copy link

We would like this as well :)

@JamesMessinger
Copy link
Member

Hi all. I'm sorry for the delay. I had to put this project on hold for a couple months due to other commitments. So I basically made no progress in September or October. But now I'm back on the job and really hoping to get something released ASAP. I'm aware that there are a lot of people waiting on me, including some very big projects. I feel the pressure. And I promise I'm moving as fast as I possibly can. 😥

@gonenduk
Copy link

gonenduk commented Jan 6, 2018

Any updates?

@gonenduk
Copy link

Hey @BigstickCarpet,
Now that swagger-parser 5.0 supports OpenAPI 3, can we have an update for this package as well?

@JamesMessinger
Copy link
Member

Yes, I plan to upgrade this project next. No promises on when though. I'm completely swamped at work right now, so I don't have a lot of spare time to work on this. I'll get it done as soon as I possibly can though.

@gonenduk
Copy link

gonenduk commented Jul 9, 2018

Is there any way we can help?

@ronkorving
Copy link

Hi :) Is this still going places?

@jefflage
Copy link

I'm sure there is a great deal more to it, but locally I'm running a form where for all of the param parsing, I've replaced function calls that use param (where param is the JSON schema object of the parameter) with param.schema || param and things seem to be working really well. I went with this approach because it seemed the easiest way to backwards compatible.

@gonenduk
Copy link

@jefflage - can you share your work with us?
Did you fork and made some changes?

@jefflage
Copy link

Not yet. Just hacked at the source locally. But now that we’re further into the spike we intend to fork and submit a PR. I’ll post when we do.

@gonenduk
Copy link

@jefflage - can't wait! And probably also the other 28K people who download it every week!

@ronkorving
Copy link

@gonenduk "no pressure" :D

@gonenduk
Copy link

No pressure at all, but really can't wait to test it and get rid of version 2.

@gonenduk
Copy link

gonenduk commented Oct 7, 2018

Version 1.0.0 is out! Still not support for OpenAPI 3, but it seems the project is getting an attention now and many things are being fixed.

@JamesMessinger
Copy link
Member

Yep! Expect 2.0.0 very soon, with a few breaking changes due to updated dependencies. OpenAPI support is the next priority after that

@jdpt0
Copy link

jdpt0 commented Oct 28, 2018

Any updates on this? Would be great to use on an OpenAPI 3.0 documented API that I'm work on!

@eszjay
Copy link

eszjay commented Oct 29, 2018

@jdpowell1 Markus has made some good progress in his fork #119 which he is publishing to NPM https://www.npmjs.com/package/swagger-express-middleware3 . There is also another project with a bit of a different feature set that may or may not be helpful for your project: https://github.com/exegesis-js/exegesis-express .

@vtremblay
Copy link

Anything new on this?

@JamesMessinger
Copy link
Member

I've been busy recently and unable to work on this, but I did notice that @sedgewickmm18 submitted PR #119 which adds OpenAPI 3.0 support. As soon as I get a chance, I'll review that PR and possibly merge it.

@gonenduk
Copy link

Hey.
Any updates? Maybe news about PR #119?

@sedgewickmm18
Copy link
Contributor

@gonenduk I've rebased PR #119 but I'm unsure how to move on. This is still only the beginning, as additional test cases are needed to cover API 3.0 specifics.

@JamesMessinger
Copy link
Member

I just now merged the PR. As @sedgewickmm18 said, it's only the beginning and additional OAS3 stuff will need to be added, but this is a great start!

@gonenduk
Copy link

Thanks for the effort guys!

I tried to use the merge and found a problem with basePath. With OpenAPI basePath is no longer used. Instead, a list of possible servers are used.
I created a PR #136 to fix this.
Please review it @JamesMessinger, @sedgewickmm18

@JamesMessinger
Copy link
Member

JamesMessinger commented Feb 4, 2019

We've created a new branch to work on OpenAPI 3.0 support.

@gonenduk
Copy link

gonenduk commented Feb 5, 2019

Great news!
Can you publish that branch to npm as a beta?
It will allow me and others to know about it, test it and report back any issues we find.

@airen29
Copy link

airen29 commented Feb 12, 2019

looking forward for the update :)

@mdaehn
Copy link

mdaehn commented Mar 9, 2019

Nice work on this NPM package. Our team is planning to use it, but with only one little snag, the OpenAPI 3 support. Wondering if it is safe to pull down your branch and build it locally, so we can start using it. Do you have an estimate when this will be complete?

@JamesMessinger
Copy link
Member

OpenAPI 3 support is important to me too, since I have a bunch of Swagger 2.0 APIs that I would love to upgrade to OpenAPI 3. I can't give an ETA though, because it totally depends on how much free time I have to work on it. This is a nights-and-weekends project for me.

For the time being, a workaround would be to define your APIs using Swagger 2.0, which is fully supported. Then once I get OpenAPI 3 support done, you can easily convert your Swagger 2.0 definitions to OpenAPI 3 using a library such as swagger2openapi or the online API Transformer tool.

@mdaehn
Copy link

mdaehn commented Mar 11, 2019

Thank James. Since I am in the starting phase, I just forked your openapi-3-support branch and added the 3.0 validation pertinent to my project. I just run my code with the forked version until your are able to make the updates.

@JamesMessinger
Copy link
Member

We have started publishing alpha releases to npm with some support for OpenAPI 3.0. These alphas are based on the v3 branch. See the ReadMe and the changelog for more details.

@kazazor
Copy link

kazazor commented May 18, 2019

Hi @JamesMessinger , great job so far on OAS 3 :)

I was trying to look at the git issues to evaluate how much work got left in order to support it but it's not marked with any label. I did find the label OpenAPI 3 but it was on only 1 github issue while there are more + I did not see a backlog in any of the issues but only bugs/fixes.

Can you share your perspective on the amount of work/tasks that still exists on OAS 3?
I like the package and would love it to be the first truly OAS 3 supported one.

@yashafromrussia
Copy link

@kazazor it looks like validate middleware is not working yet (a few are missing next() calls and the one that validates request body is not yet implemented). Not sure if there's more

@gonenduk
Copy link

Any update on this 2.5 years issue?

@JamesMessinger
Copy link
Member

Update here: #158

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests