Skip to content
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

[Spring] Spring generator uses old Swagger dependency #5556

Closed
wants to merge 5 commits into from

Conversation

alexsuperdev
Copy link
Contributor

@alexsuperdev alexsuperdev commented Mar 8, 2020

Fix 4245

Updated swagger-annotations dependency from version 1.5.23 to the actual last release 2.1.1
in generated code for spring libraries
So from

<dependency>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-annotations</artifactId>
    <version>1.5.23</version>
</dependency>

To:

<dependency>
    <groupId>io.swagger.core.v3</groupId>
    <artifactId>swagger-annotations</artifactId>
    <version>2.1.1</version>
</dependency>

PR checklist

  • Read the contribution guidelines.
  • If contributing template-only or documentation-only changes which will change sample output, build the project before.
  • Run the shell script(s) under ./bin/ (or Windows batch scripts under.\bin\windows) to update Petstore samples related to your fix. This is important, as CI jobs will verify all generator outputs of your HEAD commit, and these must match the expectations made by your contribution. You only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the code or mustache templates for a language ({LANG}) (e.g. php, ruby, python, etc).
  • File the PR against the correct branch: master, 4.3.x, 5.0.x. Default: master.
  • Copy the technical committee to review the pull request if your PR is targeting a particular programming language.

cc @bbdouglas (2017/07) @sreeshas (2017/08) @jfiala (2017/08) @lukoyanov (2017/09) @cbornet (2017/09) @jeff9finger (2018/01) @karismann (2019/03) @Zomzog (2019/04) @lwlee2608 (2019/10) @bkabrda (2020/01)

changed mustaches in spring libs to use it with io.swagger.core.v3 in version 2.1.1
deleted import of old ApiModel and ApiModelProperty in spring libs, io.swagger.core.v3 in version 2.1.1 will be used instead
updated spring samples for client and server to use swagger-annotations 2.1.1
handling security with io.swagger.core.v3 in version 2.1.1
fixed comment
updated spring samples handling security for client and server to use swagger-annotations 2.1.1
@alexsuperdev
Copy link
Contributor Author

Is there a chance that this pullrequest will be reviewed already in this month?

@alexsuperdev
Copy link
Contributor Author

@wing328 Can you please review this peace of code?

@shred22
Copy link

shred22 commented Apr 23, 2020

Any tentative timeline on this PR merge ?

@atkawa7
Copy link

atkawa7 commented May 18, 2020

@wing328 ping

@piotrkav
Copy link

any update on this?

@cbornet
Copy link
Member

cbornet commented Jul 21, 2020

The problem is I don't think Sprinfox v2 which is a widely used lib for Spring support OASv3 annotations.
Sprinfox v3 has been released but I don't think the adoption is significant yet.

@piotrkav
Copy link

The problem is I don't think Sprinfox v2 which is a widely used lib for Spring support OASv3 annotations.
Sprinfox v3 has been released but I don't think the adoption is significant yet.

Sorry for misunderstanding, but how springfox is related in this matter?
Using the openapi-generator-maven-plugin it would be ideal if it would generate api interfaces using

<dependency>
    <groupId>io.swagger.core.v3</groupId>
    <artifactId>swagger-annotations</artifactId>
    <version>2.1.1</version>
</dependency>

which this PR fixes.
According to https://openapi-generator.tech/docs/plugins#dependencies there is a possibility to use v3 annotations, but it doesn't work.

@cbornet
Copy link
Member

cbornet commented Jul 22, 2020

These annotations are used by libraries to generate the OAS. Springfox is I think the most widely used lib in the Spring world. Or do you have other libs in mind ?

@piotrkav
Copy link

These annotations are used by libraries to generate the OAS. Springfox is I think the most widely used lib in the Spring world. Or do you have other libs in mind ?

Springfox is not required to use openapi-generator-maven-plugin. That's why it confuses me 😄

I was thinking about using the springdoc (which would require the v3 annotations to actually show examples/description) and redoc for static files.

@cbornet
Copy link
Member

cbornet commented Jul 22, 2020

This PR is not about openapi-generator-maven-plugin. It's about the generated code.
Yes Springdoc and Springfox v3 will work with the new annotations. But I think the large majority still uses Springfox v2.
Note that Springfox v3 works with the old annotations to generate an OASv3 doc.

@alexsuperdev
Copy link
Contributor Author

alexsuperdev commented Aug 1, 2020

This PR is not about openapi-generator-maven-plugin. It's about the generated code.
Yes Springdoc and Springfox v3 will work with the new annotations. But I think the large majority still uses Springfox v2.
Note that Springfox v3 works with the old annotations to generate an OASv3 doc.

Hello @cbornet . I tested it locally, it works with Springfox v2.

@jimschubert
Copy link
Member

@cbornet this is specific to the JavaSpring generated output. Since we have a major release coming, I think it would make sense to update to springfox2 3.0.0 in JavaSpring and have this PR integrated in the 5.0 release. If that could be done here, it would also solve issues with pulling openapi-generator into a Spring project generated with our tooling (which currently does not work). See #7102 which is related.

@jimschubert jimschubert added this to the 5.0.0 milestone Aug 1, 2020
@cbornet
Copy link
Member

cbornet commented Aug 1, 2020

Hello @cbornet . I tested it locally, it works with Springfox v2.

Oh, great ! I thought this was only part of the v3. Then I have no more concern for this PR.

alexsuperdev added a commit to alexsuperdev/openapi-generator that referenced this pull request Aug 8, 2020
fixed alignment according to actual master
fixed alignment to 4 spaces
@alexsuperdev
Copy link
Contributor Author

@cbornet i fixed places, that you commented. The rest is okay?

@atkawa7
Copy link

atkawa7 commented Nov 14, 2020

ping @wing328

@cbornet
Copy link
Member

cbornet commented Nov 14, 2020

LGTM. @alexsuperdev can you resolve the conflicts ?

@alexsuperdev
Copy link
Contributor Author

LGTM. @alexsuperdev can you resolve the conflicts ?

I tried to resolve them, but not succeeded, its to much work to do, because to many changes were made in code since march.
So in short, i will not resolve this issue. Sorry

@wing328 wing328 modified the milestones: 5.0.0, 5.0.1 Dec 21, 2020
@wing328 wing328 modified the milestones: 5.0.1, 5.1.0 Feb 8, 2021
@wing328 wing328 removed this from the 5.1.0 milestone Mar 19, 2021
@ddeath
Copy link
Contributor

ddeath commented Jun 13, 2023

@wing328 I guess this one can be closed

@wing328 wing328 closed this Jun 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Spring generator uses old Swagger dependency
9 participants