Skip to content

[Spring] Spring generator uses old Swagger dependency#5556

Closed
alexsuperdev wants to merge 5 commits into
OpenAPITools:masterfrom
alexsuperdev:fix_4245
Closed

[Spring] Spring generator uses old Swagger dependency#5556
alexsuperdev wants to merge 5 commits into
OpenAPITools:masterfrom
alexsuperdev:fix_4245

Conversation

@alexsuperdev

@alexsuperdev alexsuperdev commented Mar 8, 2020

Copy link
Copy Markdown

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
Copy Markdown
Author

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

@alexsuperdev

Copy link
Copy Markdown
Author

@wing328 Can you please review this peace of code?

@shred22

shred22 commented Apr 23, 2020

Copy link
Copy Markdown

Any tentative timeline on this PR merge ?

@atkawa7

atkawa7 commented May 18, 2020

Copy link
Copy Markdown

@wing328 ping

@piotrkav

Copy link
Copy Markdown

any update on this?

@cbornet

cbornet commented Jul 21, 2020

Copy link
Copy Markdown
Member

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
Copy Markdown

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

cbornet commented Jul 22, 2020

Copy link
Copy Markdown
Member

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
Copy Markdown

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

cbornet commented Jul 22, 2020

Copy link
Copy Markdown
Member

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

alexsuperdev commented Aug 1, 2020

Copy link
Copy Markdown
Author

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
Copy Markdown
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

cbornet commented Aug 1, 2020

Copy link
Copy Markdown
Member

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 pushed 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
Copy Markdown
Author

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

@atkawa7

atkawa7 commented Nov 14, 2020

Copy link
Copy Markdown

ping @wing328

@cbornet

cbornet commented Nov 14, 2020

Copy link
Copy Markdown
Member

LGTM. @alexsuperdev can you resolve the conflicts ?

@alexsuperdev

Copy link
Copy Markdown
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

ddeath commented Jun 13, 2023

Copy link
Copy Markdown
Contributor

@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

10 participants