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

JHipster 8.2.0 release #25259

Closed
1 task done
mshima opened this issue Feb 19, 2024 · 37 comments
Closed
1 task done

JHipster 8.2.0 release #25259

mshima opened this issue Feb 19, 2024 · 37 comments

Comments

@mshima
Copy link
Member

mshima commented Feb 19, 2024

Overview of the feature request

A new release with:

  • rewritten upgrade generator.
  • improved sonar statistics with increased coverage and less code smells.
  • lots of old bug reports fixed.
  • latest spring-boot/angular/react/vue.
  • continue angular's new reactivity model migration.
  • lots of internal work.
Motivation for or Use Case
Related issues or PR
  • Checking this box is mandatory (this is just to show you read everything)
@wangxinxx
Copy link
Contributor

Will a new version be released soon?

@mraible
Copy link
Contributor

mraible commented Mar 5, 2024

@deepu105 Do you have the bandwidth to do a release this week?

@swilimo
Copy link

swilimo commented Mar 11, 2024

Hello Guys,

I guess i am not the only one asking myself this question, is there a problem on the realeases since 7 ? seems like jhipster is having more issues to keep up with releases ?

sorry if this question seems uncalled-for, the purpose of the question is to highlight any problems you could have and maybe expose it here and find a way to solve this, in a constructive way ?

@deepu105
Copy link
Member

If there are no blockers I can make a release today/tomorrow

@mshima
Copy link
Member Author

mshima commented Mar 18, 2024

No blocker.

@deepu105
Copy link
Member

deepu105 commented Mar 18, 2024 via email

@mraible
Copy link
Contributor

mraible commented Mar 18, 2024

I just tried generating my 21-Points Health app using the jhipster command. It works, but it seems like the questions are in a different order. Maybe this is as designed because the test prompt now applies to the backend and frontend separately?

JHipster 7:

generating-21points

JHipster main branch:

Screenshot 2024-03-18 at 9 52 50 AM

Also, it'd be nice to get rid of this warning since it happens in a brand new app and I feel there shouldn't be warnings in a brand new app.

WARNING! Ignoring 'UserManagement' definitions as it is using a built-in Entity 'Authority': 
'otherEntityRelationshipName' is set with value 'undefined' at relationship 'authority' but no back-reference was found

@mraible
Copy link
Contributor

mraible commented Mar 18, 2024

I just found a compilation issue when using Neo4j. Steps to reproduce:

Generate a microservices and microfrontend architecture using the following command:

jhipster jdl reactive-mf.jdl --monorepository --workspaces

Try to compile the resulting blog project and you'll get an error:

/Users/mraible/Downloads/micro-frontends/blog/src/main/java/com/okta/developer/blog/web/rest/TagResource.java:183: error: cannot find symbol
            .zipWith(tagRepository.findAllBy(pageable).collectList())
                                  ^
  symbol:   method findAllBy(Pageable)
  location: variable tagRepository of type TagRepository
/Users/mraible/Downloads/micro-frontends/blog/src/main/java/com/okta/developer/blog/web/rest/PostResource.java:191: error: cannot find symbol
            .zipWith(postRepository.findAllBy(pageable).collectList())
                                   ^
  symbol:   method findAllBy(Pageable)
  location: variable postRepository of type PostRepository
2 errors
3 warnings

> Task :compileJava FAILED

This is a regression that worked with JHipster 8.1.0.

@mraible
Copy link
Contributor

mraible commented Mar 18, 2024

Here's another issue that's quite strange when running jhipster jdl reactive-mf.jdl --monorepository --workspaces. If I hit Ctrl+C right after the "Thanks for using JHipster!" message, it only takes around 2 minutes.

Screenshot 2024-03-18 at 11 41 24 AM

However, if I wait for the generation process to complete, it takes 10 minutes! 😳

Screenshot 2024-03-18 at 11 53 01 AM

I'm on an Apple M3 Max with Sanoma 14.3.1 (23D60).

@mraible
Copy link
Contributor

mraible commented Mar 18, 2024

I found another issue with my micro frontends demo. There is a warning that happens when building the gateway.

WARNING in ../node_modules/@module-federation/utilities/dist/index.cjs.js 862:122-132
Critical dependency: the request of a dependency is an expression

This is kinda awkward because it does pop up an alert when building. Everything still seems to work though. It gets more intrusive when you run npm start because the warning has to be dismissed.

Screenshot 2024-03-18 at 12 58 36 PM

@mshima
Copy link
Member Author

mshima commented Mar 18, 2024

However, if I wait for the generation process to complete, it takes 10 minutes! 😳

Looks related to kubernetes generator.
If you remove kubernetes it is quick.

@mshima
Copy link
Member Author

mshima commented Mar 18, 2024

I found another issue with my micro frontends demo. There is a warning that happens when building the gateway.

WARNING in ../node_modules/@module-federation/utilities/dist/index.cjs.js 862:122-132
Critical dependency: the request of a dependency is an expression

This is kinda awkward because it does pop up an alert when building. Everything still seems to work though. It gets more intrusive when you run npm start because the warning has to be dismissed.

Screenshot 2024-03-18 at 12 58 36 PM

@mraible can you try with @module-federation@utilities v3.0.6?
It’s not tagged as latest.

@mraible
Copy link
Contributor

mraible commented Mar 18, 2024

@mshima I tried @module-federation@utilities v3.0.6 and the issue still happens.

@deepu105
Copy link
Member

ok seems like there are some issues, so i'm not starting the release

@deepu105
Copy link
Member

Even with kubernetes it shouldnt take 10 minutes, so thgere might be some regressions

@mshima
Copy link
Member Author

mshima commented Mar 19, 2024

@deepu105 it's not a regression, happens on v8.1.0 on Node 20.

npx generator-jhipster@8.1.0 jdl reactive-mf.jdl --ignore-deployments --json-only

Node 18 works as expected.
I don't think we should delay v8.1.0 due to this issue.

@mshima
Copy link
Member Author

mshima commented Mar 19, 2024

The issue is related to download sample command.

jhipster download reactive-mf.jdl

@mshima
Copy link
Member Author

mshima commented Mar 19, 2024

Hang is fixed in #25543.

@deepu105
Copy link
Member

@mraible I'll wait for your go ahead for the release. Let me know if there is anything else you find

@mraible
Copy link
Contributor

mraible commented Mar 19, 2024

@mshima I've been testing on Node 20 since yesterday. Everything seems to work. Should we make that the baseline or stick with Node 18?

@mshima
Copy link
Member Author

mshima commented Mar 19, 2024

@mraible we are having this issue #24134.
Now that devserver check is fixed it will break if it’s not fixed by upstream.

@mraible
Copy link
Contributor

mraible commented Mar 19, 2024

@deepu105 All the issues I found are now fixed. Please proceed with the release.

💡 If Gradle 8.7 is released (with Java 22 support), that might be useful for marketing.

@deepu105
Copy link
Member

Cool i'm gonna start the release now

@deepu105
Copy link
Member

Do we support Java 22, I dont see it in the supported list

@mraible
Copy link
Contributor

mraible commented Mar 20, 2024

Java 22 doesn't work with the latest version of Gradle (v8.6) and Java 22 won't be supported by Gradle until Gradle 8.7. We could use RC3 if we wanted.

https://twitter.com/gradle/status/1767496178877272204

I just tried using the main branch and jhipster --defaults with Java 22 and mvn verify fails (after updating the pom.xml to allow Java 22).

[ERROR] Failures:
[ERROR]   CRLFLogConverterTest.testToAnsiString:131
expected: "input"
 but was: "input"
[ERROR]   CRLFLogConverterTest.transformShouldReplaceNewlinesAndCarriageReturnsWithAnsiStringWhenMarkersDoNotContainCRLFSafeMarkerAndLoggerIsNotSafeAndAnsiElementIsNotNull:99 expected: <Test_input_string> but was: <Test_input_string>
[INFO]
[ERROR] Tests run: 38, Failures: 2, Errors: 0, Skipped: 0

mvn verify works if I use Java 21.

For these reasons, I'd say we don't support 22 yet. We can release 8.2.1 once we do.

@mraible
Copy link
Contributor

mraible commented Mar 20, 2024

@deepu105 First of all, thanks for doing the release. Unfortunately, it seems to be broken when I try to reproduce the issue in #25255.

jhipster jdl app.jdl results in the following error:

Welcome to JHipster v8.2.0

INFO! Generating jdls app.jdl
     info Generating 1 application
 _______________________________________________________________________________________________________________

  Documentation for creating an application is at https://www.jhipster.tech/creating-an-app/

  Application files will be generated in folder: /Users/mraible/Downloads/websocket
 _______________________________________________________________________________________________________________

ERROR! An error occured while running jhipster:server#writeFiles
ERROR! ERROR! /Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs:424
    422| <%_ } _%>
    423|         secondUser.setLangKey(firstUser.getLangKey());
 >> 424| <%_ if (generateSpringAuditor) { _%>
    425|         secondUser.setCreatedBy(firstUser.getCreatedBy());
    426|         secondUser.setCreatedDate(firstUser.getCreatedDate());
    427|         secondUser.setLastModifiedBy(firstUser.getLastModifiedBy());

generateSpringAuditor is not defined
ReferenceError: /Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs:424
    422| <%_ } _%>
    423|         secondUser.setLangKey(firstUser.getLangKey());
 >> 424| <%_ if (generateSpringAuditor) { _%>
    425|         secondUser.setCreatedBy(firstUser.getCreatedBy());
    426|         secondUser.setCreatedDate(firstUser.getCreatedDate());
    427|         secondUser.setLastModifiedBy(firstUser.getLastModifiedBy());

generateSpringAuditor is not defined
    at JHipsterServerGenerator.eval ("/Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs":418:8)
    at AccountResourceIT.java (/Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/ejs/lib/ejs.js:703:17)
    at /Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/ejs/lib/ejs.js:260:40
    at new Promise (<anonymous>)
    at tryHandleCache (/Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/ejs/lib/ejs.js:258:14)
    at exports.renderFile (/Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/ejs/lib/ejs.js:491:10)
    at renderFile (file:///Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/mem-fs-editor/dist/util.js:65:16)
    at MemFsEditor.processFile (file:///Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/mem-fs-editor/dist/actions/copy-tpl-async.js:13:20)
    at MemFsEditor.applyProcessingFileFunc (file:///Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/mem-fs-editor/dist/actions/copy-async.js:10:54)
    at MemFsEditor._copySingleAsync (file:///Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/node_modules/mem-fs-editor/dist/actions/copy-async.js:76:52) {
  path: '/Users/mraible/.nvm/versions/node/v20.11.1/lib/node_modules/generator-jhipster/dist/generators/server/templates/src/test/java/_package_/web/rest/AccountResourceIT.java.ejs'
}

@deepu105
Copy link
Member

ya just noticed this. I don't know how this got past the CI. Did something change after your last tests

@mraible
Copy link
Contributor

mraible commented Mar 20, 2024

I'm not sure what the issue is. If I clone the repo and run npm i && npm link, everything works as expected.

Any ideas, @mshima?

@mraible
Copy link
Contributor

mraible commented Mar 20, 2024

@deepu105 The only thing I can think of is the deployed artifact doesn't contain some files. Did you run npm run build before publishing? If not, we should add the following to our scripts so it always happens.

"prepublishOnly": "npm run build",

@Super-Orion
Copy link

微信图片_20240320234844 I'm also having this issue when building a gateway project with the new version, but I didn't select websocket

@mshima mshima mentioned this issue Mar 20, 2024
6 tasks
@mshima
Copy link
Member Author

mshima commented Mar 20, 2024

I'm not sure what the issue is. If I clone the repo and run npm i && npm link, everything works as expected.

Any ideas, @mshima?

The published package has old mjs files.
Added prebuild script here #25563.

@mraible
Copy link
Contributor

mraible commented Mar 20, 2024

FWIW, it should be possible to remove and republish 8.2.0 from npmjs.com using npm unpublish. Then, you can delete the v8.2.0 tag on GitHub and re-create the release.

@deepu105
Copy link
Member

But running npm publish runs prepare which runs the build. I can see the build logs in my terminal from the ansible job

@deepu105
Copy link
Member

So clean was missing

@deepu105
Copy link
Member

@mraible its not possible to unpublish since there are dependent packages for this. I can only mark it deprecated and release 8.2.1

@deepu105
Copy link
Member

8.2.1 is released

@deepu105
Copy link
Member

@mshima Btw the "Generators / generate-blueprint / check-generator-generate-blueprint (push) " job is still failing with a permission error

@mraible mraible added this to the 8.3.0 milestone Apr 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants