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

Upgrade to Spring Boot 3.0 #19791

Merged
merged 271 commits into from
Dec 9, 2022
Merged

Upgrade to Spring Boot 3.0 #19791

merged 271 commits into from
Dec 9, 2022

Conversation

mraible
Copy link
Contributor

@mraible mraible commented Sep 21, 2022

Upgrade to Spring Boot 3.0 M5.

Depends on jhipster/jhipster-bom#986. Fixes #19782 and #18198.

To use GitHub packages snapshots, add to ~/.m2/settings.xml:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">

  <activeProfiles>
    <activeProfile>github</activeProfile>
  </activeProfiles>

  <profiles>
    <profile>
      <id>github</id>
      <repositories>
        <repository>
          <id>central</id>
          <url>https://repo1.maven.org/maven2</url>
        </repository>
        <repository>
          <id>github</id>
          <url>https://maven.pkg.github.com/jhipster/jhipster-bom</url>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
    </profile>
  </profiles>

  <servers>
    <server>
      <id>github</id>
      <username>USERNAME</username>
      <password>PAT</password>
    </server>
  </servers>
</settings>

Use a PAT created at GitHub Settings/Developer settings/Personal access tokens with read:packages permission.


Please make sure the below checklist is followed for Pull Requests.

@mraible mraible added the v8 label Sep 21, 2022
@mraible mraible changed the title Upgrade to Spring Boot 3.0 M4 Upgrade to Spring Boot 3.0 M5 Sep 22, 2022
@mraible

This comment was marked as resolved.

@mraible mraible closed this Sep 23, 2022
@mraible mraible reopened this Sep 23, 2022
@mraible

This comment was marked as resolved.

@mshima

This comment was marked as resolved.

@mraible
Copy link
Contributor Author

mraible commented Sep 25, 2022

I'm not sure why these tests are failing when I run npm test:

  1) JHipster generator for entity
       creation from CLI
         all languages
           no dto, no service, no pagination
             creates expected languages files:

      AssertionError [ERR_ASSERTION]: src/main/webapp/i18n/id/foo.json, no such file or directory
      + expected - actual

      -false
      +true
      
      at /Users/mraible/dev/generator-jhipster/node_modules/yeoman-assert/index.js:56:12
      at Array.forEach (<anonymous>)
      at Function.assert.file (node_modules/yeoman-assert/index.js:54:26)
      at /Users/mraible/dev/generator-jhipster/test/entity.spec.js:503:20
      at Array.forEach (<anonymous>)
      at Context.<anonymous> (test/entity.spec.js:502:31)
      at processImmediate (node:internal/timers:466:21)

  2) JHipster generator for entity
       creation from CLI
         all languages
           no dto, no service, no pagination with client-root-folder
             creates expected languages files:

      AssertionError [ERR_ASSERTION]: src/main/webapp/i18n/id/testRootFoo.json, no such file or directory
      + expected - actual

      -false
      +true

@mraible
Copy link
Contributor Author

mraible commented Nov 28, 2022

The ng-webflux-mongodb job seems to be failing from a timeout issue. I'm not able to reproduce it locally on my M1.

@mshima
Copy link
Member

mshima commented Nov 28, 2022

Mongodb + webflux is deadlocking. Happens with any mongodb driver > 4.2.x.
A probably fix is to rework junit to don’t recreate the entire database on each test.
It’s not reproducible locally.

@mshima

This comment was marked as off-topic.

@mraible
Copy link
Contributor Author

mraible commented Nov 28, 2022

Mongodb + webflux is deadlocking. Happens with any mongodb driver > 4.2.x.

Is it possible to downgrade to an earlier version to solve the problem?

@mshima
Copy link
Member

mshima commented Nov 28, 2022

Mongodb + webflux is deadlocking. Happens with any mongodb driver > 4.2.x.

Is it possible to downgrade to an earlier version to solve the problem?

Maybe.
If the updated libs don’t use new features.
Main uses downgraded version but uses mongock with normal driver instead of reactive.

@mshima
Copy link
Member

mshima commented Dec 8, 2022

I think it's time to disable ci for broken features and merge to the main:

  • monodb + reactive (don't know about imperative)
  • kafka.
  • couchbase
  • cassandra

Gateway is still failing with csrf problem.

Unless @DanielFran wants to release a alpha with sb2.

@mraible
Copy link
Contributor Author

mraible commented Dec 8, 2022

I think it's time to disable ci for broken features and merge to the main.

I agree. Let's make sure to create issues for broken features so we can track and add bug bounties to them.

I recall seeing something recently about configuring CSRF globally for Spring Cloud Gateway. Do you have a link to the failing job?

@mshima
Copy link
Member

mshima commented Dec 8, 2022

The neo4j microservices workflow #20464.
The build is https://github.com/jhipster/generator-jhipster/actions/runs/3565724117/jobs/5991311574.

@mraible
Copy link
Contributor Author

mraible commented Dec 8, 2022

I looked into the Neo4j microservices workflow. I created the apps locally and everything seems to start up OK. The e2e test that's failing is the Swagger UI. That does indeed fail in a browser, but I'm not sure it has anything to do with CSRF. In the browser console, it shows a bunch of 404s and a couple 500 errors.

Screen Shot 2022-12-07 at 20 46 01

The 500s are:

2022-12-07T20:45:35.600-07:00 ERROR 98827 --- [ctor-http-nio-9] a.w.r.e.AbstractErrorWebExceptionHandler : 
  [aa628239-279]  500 Server Error for HTTP GET "/services/consul/management/jhiopenapigroups"

reactor.netty.http.client.PrematureCloseException: Connection prematurely closed BEFORE response

And:

2022-12-07T20:45:35.636-07:00 ERROR 98827 --- [ctor-http-nio-2] a.w.r.e.AbstractErrorWebExceptionHandler : 
  [aa628239-287]  500 Server Error for HTTP GET "/services/consul/v3/api-docs"

reactor.netty.http.client.PrematureCloseException: Connection prematurely closed BEFORE response

These seem to be caused by Consul. If I change all apps to use serviceDiscoveryType eureka, the apps are unable to connect to JHipster Registry.

2022-12-07T21:02:35.379-07:00  WARN 4613 --- [nfoReplicator-0] c.n.d.s.t.d.RetryableEurekaHttpClient    : 
  Request execution failed with message: I/O error on POST request for "http://admin:admin@jhipster-
  registry:8761/eureka/apps/GATEWAY": jhipster-registry: nodename nor servname provided, or not known

Matt Raible and others added 2 commits December 7, 2022 21:12
@DanielFran
Copy link
Member

I think it's time to disable ci for broken features and merge to the main.

I agree. Let's make sure to create issues for broken features so we can track and add bug bounties to them.

I recall seeing something recently about configuring CSRF globally for Spring Cloud Gateway. Do you have a link to the failing job?

@mraible @mshima Let's merge this to main.
Will do the updates and merge it...

@DanielFran DanielFran marked this pull request as ready for review December 9, 2022 20:49
@DanielFran DanielFran merged commit 2a7e0b1 into main Dec 9, 2022
@DanielFran DanielFran deleted the spring-boot-3.0-m4 branch December 9, 2022 20:50
@DanielFran DanielFran added this to the 8.0.0-beta.1 milestone Jun 9, 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.

Upgrade to Spring Boot 3
7 participants