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

refactor: 1348 upgrade to spring boot 3x #1504

Merged
merged 23 commits into from
Jul 24, 2023

Conversation

TheGreatRefrigerator
Copy link
Contributor

@TheGreatRefrigerator TheGreatRefrigerator commented Jul 20, 2023

Pull Request Checklist

  • 1. I have rebased the latest version of the master branch into my feature branch and all conflicts
    have been resolved.
  • 2. I have added information about the change/addition to functionality to the CHANGELOG.md file under the
    [Unreleased] heading.
  • 3. I have documented my code using JDocs tags.
  • 4. I have removed unnecessary commented out code, imports and System.out.println statements.
  • 5. I have written JUnit tests for any new methods/classes and ensured that they pass.
  • 6. I have created API tests for any new functionality exposed to the API.
  • 7. If changes/additions are made to the ors-config.json file, I have added these to the ors config documentation
    along with a short description of what it is for, and documented this in the Pull Request (below).
  • 8. I have built graphs with my code of the Heidelberg.osm.gz file and run the api-tests with all test passing
  • 9. I have referenced the Issue Number in the Pull Request (if the changes were from an issue).
  • 10. For new features or changes involving building of graphs, I have tested on a larger dataset
    (at least Germany), and the graphs build without problems (i.e. no out-of-memory errors).
  • 11. For new features or changes involving the graphbuilding process (i.e. changing encoders, updating the
    importer etc.), I have generated longer distance routes for the affected profiles with different options
    (avoid features, max weight etc.) and compared these with the routes of the same parameters and start/end
    points generated from the current live ORS.
    If there are differences then the reasoning for these MUST be documented in the pull request.
  • 12. I have written in the Pull Request information about the changes made including their intended usage
    and why the change was needed.
  • 13. For changes touching the API documentation, I have tested that the API playground renders correctly.

Fixes # .

Information about the changes

  • Key functionality added: migration to spring-boot 3.1.1
  • Reason for change: being up to date
    As there were quite some refactorings done, this is not just a chore but refactor PR

Examples and reasons for differences between live ORS routes, and those generated from this pull request

Required changes to ors config (if applicable)

@TheGreatRefrigerator TheGreatRefrigerator linked an issue Jul 20, 2023 that may be closed by this pull request
@TheGreatRefrigerator TheGreatRefrigerator marked this pull request as ready for review July 20, 2023 12:29
TheGreatRefrigerator and others added 5 commits July 20, 2023 14:30
using new `jakarta` namespace
Co-authored-by: Jakob Schnell <jakob.schnell@heigit.org>
Co-authored-by: Jakob Schnell <jakob.schnell@heigit.org>
Co-authored-by: Jakob Schnell <jakob.schnell@heigit.org>
Co-authored-by: Jakob Schnell <jakob.schnell@heigit.org>
TheGreatRefrigerator and others added 15 commits July 21, 2023 16:37
the previously uses package springdoc-openapi-ui was not the
correct one to be used with spring-boot 3

the application properties 'springdoc.packages-to-scan' and
'springdoc.pathsToMatch' are now needed for the OpenAPI specs
to be generated properly.
as the springfox-swagger package was replaced, this workaround is not
needed anymore.

- optimize imports
as we currently only expose the v2 API we don't need the
grouped OpenAPI specs. Once we want to generate both v2 and v3
API specs in parallel we need to reintroduce this.
the SpecVersion used here should be the OpenAPI V30 which
is already the default for an OpenAPI instance and is therefore removed.
name change due to specs being OpenAPI 3 now instead of swagger 2
debugging the exact location of errors was not straight forward,
due to messages containing the wrong location.
Added Hint on how to debug in docstring.
Adjusted size numbers after removal of centrality endpoint.
due to the 'schedule_duration' and 'walking_time' being of
type Duration, the type of the parameters was exposed as objects.
The values passed were however always Strings.

- Adjusted schema type in RouteRequest to String for durations
as the exact number of tags, paths and components will change and for
components is not consistent, we just check if there are some at all.
springboot 3 requires jakarta servlet 6 which in turn requires tomcat
10:
https://tomcat.apache.org/whichversion.html
@TheGreatRefrigerator TheGreatRefrigerator force-pushed the chore/1348-upgrade-to-spring-boot-3x branch from d38be18 to 61523f7 Compare July 21, 2023 14:37
@TheGreatRefrigerator
Copy link
Contributor Author

@MichaelsJP MichaelsJP enabled auto-merge July 24, 2023 14:44
@MichaelsJP MichaelsJP removed request for takb and jhaeu July 24, 2023 14:45
@MichaelsJP MichaelsJP disabled auto-merge July 24, 2023 14:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade to spring-boot 3.x
3 participants