From 30ad7824321b1cb15e172c23af5980e814793bc8 Mon Sep 17 00:00:00 2001 From: Matt Raible Date: Wed, 4 Feb 2026 21:41:40 -0700 Subject: [PATCH 01/12] Add release notes for 9.0.0-beta.3 (#1560) --- ...6-02-04-jhipster-release-9.0.0-beta.3.mdx} | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-) rename docs/releases/{2026-01-29-jhipster-release-9.0.0-beta.2.mdx => 2026-02-04-jhipster-release-9.0.0-beta.3.mdx} (67%) diff --git a/docs/releases/2026-01-29-jhipster-release-9.0.0-beta.2.mdx b/docs/releases/2026-02-04-jhipster-release-9.0.0-beta.3.mdx similarity index 67% rename from docs/releases/2026-01-29-jhipster-release-9.0.0-beta.2.mdx rename to docs/releases/2026-02-04-jhipster-release-9.0.0-beta.3.mdx index 85738a26..b677ed77 100644 --- a/docs/releases/2026-01-29-jhipster-release-9.0.0-beta.2.mdx +++ b/docs/releases/2026-02-04-jhipster-release-9.0.0-beta.3.mdx @@ -1,15 +1,27 @@ --- -title: Release 9.0.0-beta.2 -slug: /2026/01/29/jhipster-release-9.0.0-beta.2.html +title: Release 9.0.0-beta.3 +slug: /2026/02/04/jhipster-release-9.0.0-beta.3.html displayed_sidebar: docsSidebar sidebar_class_name: hidden --- -# JHipster release v9.0.0-beta.2 +# JHipster release v9.0.0-beta.3 -The `9.0.0-beta.2` release is now available! This release includes **1,045** closed issues and pull requests from the community since [9.0.0-beta.0](/2025/12/05/jhipster-release-9.0.0-beta.0.html), with **1,036** associated with the [9.0.0-beta.1](https://github.com/jhipster/generator-jhipster/issues?q=is:closed+milestone:9.0.0-beta.1) milestone and **9** assigned to [9.0.0-beta.2](https://github.com/jhipster/generator-jhipster/issues?q=is:closed+milestone:9.0.0-beta.1). +The `9.0.0-beta.3` release is now available! This release includes [65 closed issues and pull requests](https://github.com/jhipster/generator-jhipster/issues?q=is:closed+milestone:9.0.0-beta.3) since [9.0.0-beta.2](https://github.com/jhipster/generator-jhipster/releases/tag/v9.0.0-beta.2). -The `9.0.0-beta.1` release included [an issue](https://github.com/jhipster/generator-jhipster/issues/32114) that made it unusable. This `9.0.0-beta.2` release addresses that problem and contains all related fixes. +:::warning Previous Beta Releases Were Broken + +- **9.0.0-beta.1** was deprecated because the CLI failed with `Cannot find package 'yeoman-test'` when installed globally ([#32114](https://github.com/jhipster/generator-jhipster/issues/32114)) +- **9.0.0-beta.2** was deprecated because it caused `Maximum call stack size exceeded` errors when parsing JDL files ([#32116](https://github.com/jhipster/generator-jhipster/issues/32116)) + +Please use this `9.0.0-beta.3` release instead. + +::: + +## Fixes in beta.3 + +- **Fixed chevrotain dependency** ([#32130](https://github.com/jhipster/generator-jhipster/pull/32130)) - Resolves the `Maximum call stack size exceeded` error when parsing JDL files that affected beta.2 +- **Fixed yeoman-test packaging** ([#32122](https://github.com/jhipster/generator-jhipster/pull/32122)) - Resolves the `Cannot find package 'yeoman-test'` error that affected beta.1 ## What's new? @@ -30,14 +42,14 @@ The `9.0.0-beta.1` release included [an issue](https://github.com/jhipster/gener ## Closed tickets and merged pull requests -See the [9.0.0-beta.1](https://github.com/jhipster/generator-jhipster/releases/tag/v9.0.0-beta.1) and [9.0.0-beta.2](https://github.com/jhipster/generator-jhipster/releases/tag/v9.0.0-beta.2) release notes on GitHub for more details. +See the [9.0.0-beta.3](https://github.com/jhipster/generator-jhipster/releases/tag/v9.0.0-beta.3) release notes on GitHub for more details. ## How to install -To install JHipster v9.0.0-beta.2: +To install JHipster v9.0.0-beta.3: ``` -npm install -g generator-jhipster@9.0.0-beta.2 +npm install -g generator-jhipster@9.0.0-beta.3 ``` It is also available using the JHipster Docker image, as it is automatically built from our source code. From 3b363338433117363d2cbfd707dd83abe6ce508e Mon Sep 17 00:00:00 2001 From: Julien Dubois Date: Thu, 5 Feb 2026 18:27:29 +0100 Subject: [PATCH 02/12] Remove Deepu from the VP role --- docs/association.mdx | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/association.mdx b/docs/association.mdx index 2a2f4636..9f840ff5 100644 --- a/docs/association.mdx +++ b/docs/association.mdx @@ -27,8 +27,6 @@ Secrétaire: Pierre BESSON Trésorier: Anthony VIARD -Vice-président: Deepu K SASIDHARAN - ## STATUTS DE L’ASSOCIATION « JHipster Developers Association» From 6090f4e0f444ce86b671a7dfb25802f2b45f598f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 7 Feb 2026 10:33:03 +0000 Subject: [PATCH 03/12] build(deps): bump webpack from 5.97.1 to 5.105.0 Bumps [webpack](https://github.com/webpack/webpack) from 5.97.1 to 5.105.0. - [Release notes](https://github.com/webpack/webpack/releases) - [Changelog](https://github.com/webpack/webpack/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack/compare/v5.97.1...v5.105.0) --- updated-dependencies: - dependency-name: webpack dependency-version: 5.105.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 207 ++++++++++++++++++++-------------------------- 1 file changed, 90 insertions(+), 117 deletions(-) diff --git a/package-lock.json b/package-lock.json index 72f56aec..3315578e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5124,9 +5124,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", "license": "MIT" }, "node_modules/@types/estree-jsx": { @@ -5658,9 +5658,9 @@ } }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -5669,6 +5669,18 @@ "node": ">=0.4.0" } }, + "node_modules/acorn-import-phases": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz", + "integrity": "sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==", + "license": "MIT", + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "acorn": "^8.14.0" + } + }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -6081,9 +6093,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.9.tgz", - "integrity": "sha512-hY/u2lxLrbecMEWSB0IpGzGyDyeoMFQhCvZd2jGFSE5I17Fh01sYUBPCJtkWERw7zrac9+cIghxm/ytJa2X8iA==", + "version": "2.9.19", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz", + "integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==", "license": "Apache-2.0", "bin": { "baseline-browser-mapping": "dist/cli.js" @@ -6225,9 +6237,9 @@ } }, "node_modules/browserslist": { - "version": "4.26.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.26.2.tgz", - "integrity": "sha512-ECFzp6uFOSB+dcZ5BK/IBaGWssbSYBHvuMeMt3MMFyhI0Z8SqGgEkBLARgpRH3hutIgPVsALcMwbDrJqPxQ65A==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", "funding": [ { "type": "opencollective", @@ -6244,11 +6256,11 @@ ], "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.8.3", - "caniuse-lite": "^1.0.30001741", - "electron-to-chromium": "^1.5.218", - "node-releases": "^2.0.21", - "update-browserslist-db": "^1.1.3" + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" }, "bin": { "browserslist": "cli.js" @@ -6405,9 +6417,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001746", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001746.tgz", - "integrity": "sha512-eA7Ys/DGw+pnkWWSE/id29f2IcPHVoE8wxtvE5JdvD2V28VTDPy1yEeo11Guz0sJ4ZeGRcm3uaTcAqK1LXaphA==", + "version": "1.0.30001769", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001769.tgz", + "integrity": "sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==", "funding": [ { "type": "opencollective", @@ -7947,9 +7959,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.228", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.228.tgz", - "integrity": "sha512-nxkiyuqAn4MJ1QbobwqJILiDtu/jk14hEAWaMiJmNPh1Z+jqoFlBFZjdXwLWGeVSeu9hGLg6+2G9yJaW8rBIFA==", + "version": "1.5.286", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz", + "integrity": "sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==", "license": "ISC" }, "node_modules/embla-carousel": { @@ -8030,13 +8042,13 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", - "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "version": "5.19.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz", + "integrity": "sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg==", "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "tapable": "^2.3.0" }, "engines": { "node": ">=10.13.0" @@ -8082,9 +8094,9 @@ } }, "node_modules/es-module-lexer": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", - "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.0.0.tgz", + "integrity": "sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==", "license": "MIT" }, "node_modules/es-object-atoms": { @@ -10464,12 +10476,16 @@ "license": "MIT" }, "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.1.tgz", + "integrity": "sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==", "license": "MIT", "engines": { "node": ">=6.11.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/loader-utils": { @@ -13097,9 +13113,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.21", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.21.tgz", - "integrity": "sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw==", + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", "license": "MIT" }, "node_modules/normalize-path": { @@ -16310,9 +16326,9 @@ "license": "Apache-2.0" }, "node_modules/schema-utils": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", - "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", + "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.9", @@ -17158,12 +17174,16 @@ } }, "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.0.tgz", + "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==", "license": "MIT", "engines": { "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/terser": { @@ -17185,9 +17205,9 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.11", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.11.tgz", - "integrity": "sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==", + "version": "5.3.16", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz", + "integrity": "sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q==", "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", @@ -17638,9 +17658,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", - "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", "funding": [ { "type": "opencollective", @@ -17953,9 +17973,9 @@ } }, "node_modules/watchpack": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", - "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", + "integrity": "sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==", "license": "MIT", "dependencies": { "glob-to-regexp": "^0.4.1", @@ -17985,34 +18005,36 @@ } }, "node_modules/webpack": { - "version": "5.97.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", - "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "version": "5.105.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.0.tgz", + "integrity": "sha512-gX/dMkRQc7QOMzgTe6KsYFM7DxeIONQSui1s0n/0xht36HvrgbxtM1xBlgx596NbpHuQU8P7QpKwrZYwUX48nw==", "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.7", - "@types/estree": "^1.0.6", + "@types/estree": "^1.0.8", + "@types/json-schema": "^7.0.15", "@webassemblyjs/ast": "^1.14.1", "@webassemblyjs/wasm-edit": "^1.14.1", "@webassemblyjs/wasm-parser": "^1.14.1", - "acorn": "^8.14.0", - "browserslist": "^4.24.0", + "acorn": "^8.15.0", + "acorn-import-phases": "^1.0.3", + "browserslist": "^4.28.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.1", - "es-module-lexer": "^1.2.1", + "enhanced-resolve": "^5.19.0", + "es-module-lexer": "^2.0.0", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", + "loader-runner": "^4.3.1", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.2.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.10", - "watchpack": "^2.4.1", - "webpack-sources": "^3.2.3" + "schema-utils": "^4.3.3", + "tapable": "^2.3.0", + "terser-webpack-plugin": "^5.3.16", + "watchpack": "^2.5.1", + "webpack-sources": "^3.3.3" }, "bin": { "webpack": "bin/webpack.js" @@ -18247,45 +18269,14 @@ } }, "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.3.tgz", + "integrity": "sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==", "license": "MIT", "engines": { "node": ">=10.13.0" } }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "license": "MIT", - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "license": "MIT" - }, "node_modules/webpack/node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -18307,24 +18298,6 @@ "node": ">= 0.6" } }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "license": "MIT", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/webpackbar": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-6.0.1.tgz", From a992a42834e925d0d444232a25b31783eccfec19 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 21 Feb 2026 16:31:52 +0000 Subject: [PATCH 04/12] build(deps): bump ajv Bumps and [ajv](https://github.com/ajv-validator/ajv). These dependencies needed to be updated together. Updates `ajv` from 8.17.1 to 8.18.0 - [Release notes](https://github.com/ajv-validator/ajv/releases) - [Commits](https://github.com/ajv-validator/ajv/compare/v8.17.1...v8.18.0) Updates `ajv` from 6.12.6 to 6.14.0 - [Release notes](https://github.com/ajv-validator/ajv/releases) - [Commits](https://github.com/ajv-validator/ajv/compare/v8.17.1...v8.18.0) --- updated-dependencies: - dependency-name: ajv dependency-version: 8.18.0 dependency-type: indirect - dependency-name: ajv dependency-version: 6.14.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3315578e..d5f57b66 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5743,9 +5743,9 @@ } }, "node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", + "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", @@ -8692,9 +8692,9 @@ } }, "node_modules/file-loader/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", + "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", @@ -13199,9 +13199,9 @@ } }, "node_modules/null-loader/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", + "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", @@ -17798,9 +17798,9 @@ } }, "node_modules/url-loader/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", + "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", From c4fe57b39e3266aaaf196780f458597914095ccb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Mar 2026 19:23:42 +0000 Subject: [PATCH 05/12] build(deps): bump fetch-jsonp from 1.3.0 to 1.4.0 Bumps [fetch-jsonp](https://github.com/camsong/fetch-jsonp) from 1.3.0 to 1.4.0. - [Release notes](https://github.com/camsong/fetch-jsonp/releases) - [Changelog](https://github.com/camsong/fetch-jsonp/blob/master/HISTORY.md) - [Commits](https://github.com/camsong/fetch-jsonp/compare/v1.3.0...v1.4.0) --- updated-dependencies: - dependency-name: fetch-jsonp dependency-version: 1.4.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index d5f57b66..23395d51 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ "echarts": "^6.0.0", "embla-carousel-auto-scroll": "^8.6.0", "embla-carousel-react": "^8.6.0", - "fetch-jsonp": "^1.3.0", + "fetch-jsonp": "^1.4.0", "plugin-image-zoom": "^1.2.0", "prism-react-renderer": "^2.4.1", "react": "^19.2.4", @@ -8642,9 +8642,9 @@ } }, "node_modules/fetch-jsonp": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fetch-jsonp/-/fetch-jsonp-1.3.0.tgz", - "integrity": "sha512-hxCYGvmANEmpkHpeWY8Kawfa5Z1t2csTpIClIDG/0S92eALWHRU1RnGaj86Tf5Cc0QF+afSa4SQ4pFB2rFM5QA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/fetch-jsonp/-/fetch-jsonp-1.4.0.tgz", + "integrity": "sha512-SmOI6UshTUzQ1O+1CJDg31AE4VUIfAO4xfVAy/sH03h4Obml3BnuhTopdFaJMI21T94RfRvfTgTIvV0X8GnJ2A==", "license": "MIT" }, "node_modules/figures": { diff --git a/package.json b/package.json index 50f45edd..abaf637d 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "echarts": "^6.0.0", "embla-carousel-auto-scroll": "^8.6.0", "embla-carousel-react": "^8.6.0", - "fetch-jsonp": "^1.3.0", + "fetch-jsonp": "^1.4.0", "plugin-image-zoom": "^1.2.0", "prism-react-renderer": "^2.4.1", "react": "^19.2.4", From 13049238e91a31947c252041c6b0431685a4eac8 Mon Sep 17 00:00:00 2001 From: KIRAN KUMAR B Date: Tue, 3 Mar 2026 20:13:23 +0530 Subject: [PATCH 06/12] docs: Add Auth0 CLI setup instructions to the Security documentation. (#1564) * docs(security): update Auth0 CLI setup instructions - Added detailed instructions for setting up an OIDC App using Auth0 CLI. - Included steps for creating roles, assigning users, and deploying actions. * docs(security): remove automation suggestion for Auth0 CLI setup - Removed the note suggesting users to add a thumbs up to issue #351 in the Auth0 CLI project for automation of setup steps. - This change streamlines the documentation by focusing on manual configuration steps without referencing external issues. * docs(auth0-cli): update setup instructions for Auth0 CLI integration - Changed the filename from `.env` to `.auth0.env` for clarity. - Simplified the steps for enabling a database connection by directing users to the dashboard. - Updated command examples to use single quotes for consistency. - Added an example for creating a user with placeholders for email and password. * docs(auth0-cli): enhance Auth0 CLI setup instructions with tabs - Introduced tabbed navigation for setup instructions to improve user experience. - Separated instructions for creating an OIDC App using Auth0 Dashboard and Auth0 CLI. - Added relevant imports for Tabs and TabItem components to support the new layout. --- docs/options/security.mdx | 83 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 81 insertions(+), 2 deletions(-) diff --git a/docs/options/security.mdx b/docs/options/security.mdx index d3d0b6d6..ecc30252 100644 --- a/docs/options/security.mdx +++ b/docs/options/security.mdx @@ -2,9 +2,12 @@ title: Security slug: /security/ last_update: - date: 2023-12-01T18:00:00-00:00 + date: 2026-03-02T00:00:00-00:00 --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + To use Spring Security with a Single Web Page Application, like the ones generated by JHipster, you need XHR login/logout/error views. We have configured Spring Security in order to use those views correctly, and we generate all the JavaScript and HTML code for you. By default, JHipster comes with two different users: @@ -127,6 +130,9 @@ In production, it is required by Keycloak that you use HTTPS. There are several If you'd like to use [Auth0](https://auth0.com/) instead of Keycloak, follow the configuration steps below: + + + #### Create an OIDC App using Auth0 Admin Dashboard - Create a free developer account at https://auth0.com/signup. After successful sign-up, your account shall be associated with a unique domain like `dev-xxx.us.auth0.com` @@ -151,7 +157,80 @@ If you'd like to use [Auth0](https://auth0.com/) instead of Keycloak, follow the ``` - Select **Deploy** and drag the `Add Roles` action to your Login flow. -_If you'd like to have all these steps automated for you, add a 👍 to [issue #351](https://github.com/auth0/auth0-cli/issues/351) in the Auth0 CLI project._ + + + +#### Create an OIDC App using Auth0 CLI + +1. Create the Auth0 application and generate a `.auth0.env` + ```shell + auth0 quickstarts setup --type 'jhipster-rwa' + ``` + Output: Note the `CLIENT_ID` (eg: `FCxxxxxxxxxxxxxxxxxxxxxxxxxxxxoz`). + +2. Enable a connection for the created application + ```shell + auth0 apps open + ``` + - In the opened dashboard, navigate to **Connections** and enable a database authentication connection (example: `Username-Password-Authentication`) for your application. + +3. Create roles (JHipster expects `ROLE_ADMIN` and `ROLE_USER`) + ```shell + auth0 roles create --name ROLE_ADMIN --description 'role-admin' + auth0 roles create --name ROLE_USER --description 'role-user' + ``` + Output: Note the `ROLE_ID` (examples: `rol_e5xxxxxxxxxxxxad`, `rol_LHxxxxxxxxxxxxBk`). + +4. Create a user in the Database Connection with required email and password: + ```shell + auth0 users create --email --password --connection-name + ``` + example: + ```shell + auth0 users create --email 'jhipster@example.com' --password 'Example007!' --connection-name 'Username-Password-Authentication' + ``` + Output: Note the `USER_ID` (example: `auth0|69xxxxxxxxxxxxxxxxxxxx03`). + +5. Assign roles to the user using **role IDs**: + ```shell + auth0 users roles add --roles + ``` + example: + ```shell + auth0 users roles add 'auth0|69xxxxxxxxxxxxxxxxxxxx03' --roles 'rol_e5xxxxxxxxxxxxad,rol_LHxxxxxxxxxxxxBk' + ``` + +6. Create, deploy, and bind the “Add Roles” Action to Login + - Create the post-login Action that adds roles to tokens. + ```shell + AUTH0_ACTION_SCRIPT=$(cat <<'EOF' + exports.onExecutePostLogin = async (event, api) => { + const namespace = 'https://www.jhipster.tech'; + if (event.authorization) { + api.idToken.setCustomClaim('preferred_username', event.user.email); + api.idToken.setCustomClaim(`${namespace}/roles`, event.authorization.roles); + api.accessToken.setCustomClaim(`${namespace}/roles`, event.authorization.roles); + } + }; + EOF + ) + ``` + ```shell + auth0 actions create --name 'AddRoles' --trigger post-login --code '$AUTH0_ACTION_SCRIPT' + ``` + Output: Note `ACTION_ID` (example: `2dxxxx54-5xx2-4xx2-9xxe-06xxxxxxxxc4`). + + - Deploy the Action: + ```shell + auth0 actions deploy + ``` + - Bind it to the `post-login` trigger (Login flow): + ```shell + auth0 api patch 'actions/triggers/post-login/bindings' --data '{"bindings":[{"ref":{"type":"action_id","value":""}}]}' + ``` + + + #### Configure JHipster Application to use Auth0 as OIDC Provider From 5e28e0b947be576752f55b39856023246b4acad0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Mar 2026 23:20:35 +0000 Subject: [PATCH 07/12] build(deps): bump immutable from 5.0.3 to 5.1.5 Bumps [immutable](https://github.com/immutable-js/immutable-js) from 5.0.3 to 5.1.5. - [Release notes](https://github.com/immutable-js/immutable-js/releases) - [Changelog](https://github.com/immutable-js/immutable-js/blob/main/CHANGELOG.md) - [Commits](https://github.com/immutable-js/immutable-js/compare/v5.0.3...v5.1.5) --- updated-dependencies: - dependency-name: immutable dependency-version: 5.1.5 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 23395d51..332544a2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9820,9 +9820,9 @@ } }, "node_modules/immutable": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", - "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.5.tgz", + "integrity": "sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==", "license": "MIT" }, "node_modules/import-fresh": { From bc7c8dd80ca62d1839f06f7b9bdb2f7d2a1c5c5a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Mar 2026 01:32:44 +0000 Subject: [PATCH 08/12] build(deps): bump svgo from 3.3.2 to 3.3.3 Bumps [svgo](https://github.com/svg/svgo) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/svg/svgo/releases) - [Commits](https://github.com/svg/svgo/compare/v3.3.2...v3.3.3) --- updated-dependencies: - dependency-name: svgo dependency-version: 3.3.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/package-lock.json b/package-lock.json index 23395d51..71887da4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5038,15 +5038,6 @@ "node": ">=14.16" } }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "license": "ISC", - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/@types/acorn": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", @@ -16308,10 +16299,13 @@ } }, "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "license": "ISC" + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.5.0.tgz", + "integrity": "sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } }, "node_modules/scheduler": { "version": "0.27.0", @@ -17127,18 +17121,18 @@ "license": "MIT" }, "node_modules/svgo": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz", - "integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.3.tgz", + "integrity": "sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng==", "license": "MIT", "dependencies": { - "@trysound/sax": "0.2.0", "commander": "^7.2.0", "css-select": "^5.1.0", "css-tree": "^2.3.1", "css-what": "^6.1.0", "csso": "^5.0.5", - "picocolors": "^1.0.0" + "picocolors": "^1.0.0", + "sax": "^1.5.0" }, "bin": { "svgo": "bin/svgo" From 17ccfd15a5a83b454971cb4245028d14a419be1d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Mar 2026 19:05:53 +0000 Subject: [PATCH 09/12] build(deps): bump react-icons from 5.5.0 to 5.6.0 Bumps [react-icons](https://github.com/react-icons/react-icons) from 5.5.0 to 5.6.0. - [Release notes](https://github.com/react-icons/react-icons/releases) - [Commits](https://github.com/react-icons/react-icons/compare/v5.5.0...v5.6.0) --- updated-dependencies: - dependency-name: react-icons dependency-version: 5.6.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index d79a01c7..82a9c504 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ "prism-react-renderer": "^2.4.1", "react": "^19.2.4", "react-dom": "^19.2.4", - "react-icons": "^5.5.0", + "react-icons": "^5.6.0", "sass": "^1.97.3" }, "devDependencies": { @@ -15454,9 +15454,9 @@ } }, "node_modules/react-icons": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-5.5.0.tgz", - "integrity": "sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-5.6.0.tgz", + "integrity": "sha512-RH93p5ki6LfOiIt0UtDyNg/cee+HLVR6cHHtW3wALfo+eOHTp8RnU2kRkI6E+H19zMIs03DyxUG/GfZMOGvmiA==", "license": "MIT", "peerDependencies": { "react": "*" diff --git a/package.json b/package.json index abaf637d..4d073c5e 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "prism-react-renderer": "^2.4.1", "react": "^19.2.4", "react-dom": "^19.2.4", - "react-icons": "^5.5.0", + "react-icons": "^5.6.0", "sass": "^1.97.3" }, "devDependencies": { From 2574acfe82b3195b57d510b16ee0d7f28db16973 Mon Sep 17 00:00:00 2001 From: Matt Raible Date: Tue, 10 Mar 2026 22:16:59 -0600 Subject: [PATCH 10/12] Add release notes for v9.0.0 (#1569) --- .../2026-03-10-jhipster-release-9.0.0.mdx | 122 ++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 docs/releases/2026-03-10-jhipster-release-9.0.0.mdx diff --git a/docs/releases/2026-03-10-jhipster-release-9.0.0.mdx b/docs/releases/2026-03-10-jhipster-release-9.0.0.mdx new file mode 100644 index 00000000..fb931d4c --- /dev/null +++ b/docs/releases/2026-03-10-jhipster-release-9.0.0.mdx @@ -0,0 +1,122 @@ +--- +title: Release 9.0.0 +slug: /2026/03/10/jhipster-release-9.0.0.html +displayed_sidebar: docsSidebar +sidebar_class_name: hidden +--- + +# JHipster release v9.0.0 + +We're excited to announce the official release of **JHipster 9.0.0**! 🎉 + +This is a major release that includes all changes from the beta releases plus [442 closed issues and pull requests](https://github.com/jhipster/generator-jhipster/issues?q=is:closed+milestone:9.0.0) since the [9.0.0-beta.3](/2026/02/04/jhipster-release-9.0.0-beta.3.html) release. + +## What's new? + +### :leaves: Spring Boot + +- **Spring Boot 4**: Upgraded to Spring Boot 4.0.3 +- **Spring Security**: Migrated to EnableWebSocketSecurity +- **GraalVM support**: Added spring-boot:graalvm generator +- **Build tools**: Updated to Node 22, Gradle 9.4.0, and Maven 3.9.13 + +### :computer: Frontend + +- **React 19**: Upgraded to React 19 and replaced reactstrap with react-bootstrap +- **Angular 21**: Major updates including: + - Zoneless by default for better performance (no more zone.js) + - Vitest support as an alternative to Jest + - Continued migration to signals and httpResource-based services +- **Vue**: Migrated to Bootstrap Vue Next for Bootstrap 5 support +- **ESLint 10**: Upgraded for Angular and Vue + +### :warning: Breaking changes + +- **Java 21 required**: Dropped Java 17 support (Java 25 now supported) +- **Node 22 required**: Dropped Node 20 support, native TypeScript support now required + +### :paw_prints: JDL/Internals/Blueprints + +- **Complete TypeScript redesign**: The generator codebase has been fully rewritten in TypeScript with improved types and modular architecture +- Updated to yeoman-generator v8 + +## Closed tickets and merged pull requests + +As always, **[you can check all closed tickets and merged pull requests here](https://github.com/jhipster/generator-jhipster/issues?q=is:closed+milestone:9.0.0)**. + +## How to install + +To install JHipster v9.0.0 using NPM: + +``` +npm install -g generator-jhipster +``` + +It is also available using the JHipster Docker image, as it is automatically built from our source code. + +- [Docker Hub](https://hub.docker.com/r/jhipster/jhipster) +- [JHipster Online](https://start.jhipster.tech) + +## How to upgrade + +**Automatic upgrade** + +For an automatic upgrade, use the [JHipster upgrade sub-generator](/upgrading-an-application/) on an existing application: + +Upgrade your version of JHipster: + +``` +npm update -g generator-jhipster +``` + +And then run the upgrade sub-generator: + +``` +jhipster upgrade +``` + +You can also use the [migrate blueprint](https://github.com/jhipster/generator-jhipster-migrate) for more advanced upgrade features. + +``` +npm i -g generator-jhipster-migrate +jhipster-migrate +``` + +**Manual upgrades** + +For a manual upgrade, first upgrade your version of JHipster with: + +``` +npm update -g generator-jhipster +``` + +If you have an existing project, it will still use the JHipster version with which it was generated. +To upgrade your project, you must first delete its `node_modules` folder and then run: + +``` +jhipster +``` + +You can also update your project and all its entities by running: + +``` +jhipster --with-entities +``` + +You can also update your entities one-by-one by running again the entity sub-generator, for example if your entity is named _Foo_: + +``` +jhipster entity Foo --single-entity +``` + +## Help and bugs + +If you find any issue with this release, don't hesitate to: + +- Add a bug to our [bug tracker](https://github.com/jhipster/generator-jhipster/issues?state=open) +- Post a question on [Stack Overflow](http://stackoverflow.com/tags/jhipster/info) +- Create a new discussion on [GitHub](https://github.com/jhipster/generator-jhipster/discussions) + +If the issue you have is an urgent bug or security issue, please: + +- Contact [@jhipster](https://twitter.com/jhipster) on Twitter From 5ff34ce0fa8634633fa84b14c6aaf63830fb0b8d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 18:11:16 +0000 Subject: [PATCH 11/12] build(deps): bump dayjs from 1.11.19 to 1.11.20 Bumps [dayjs](https://github.com/iamkun/dayjs) from 1.11.19 to 1.11.20. - [Release notes](https://github.com/iamkun/dayjs/releases) - [Changelog](https://github.com/iamkun/dayjs/blob/dev/CHANGELOG.md) - [Commits](https://github.com/iamkun/dayjs/compare/v1.11.19...v1.11.20) --- updated-dependencies: - dependency-name: dayjs dependency-version: 1.11.20 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 82a9c504..63f6f922 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@mdx-js/react": "^3.1.1", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", - "dayjs": "^1.11.19", + "dayjs": "^1.11.20", "docusaurus-plugin-sass": "^0.2.6", "echarts": "^6.0.0", "embla-carousel-auto-scroll": "^8.6.0", @@ -7523,9 +7523,9 @@ "license": "MIT" }, "node_modules/dayjs": { - "version": "1.11.19", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.19.tgz", - "integrity": "sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==", + "version": "1.11.20", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.20.tgz", + "integrity": "sha512-YbwwqR/uYpeoP4pu043q+LTDLFBLApUP6VxRihdfNTqu4ubqMlGDLd6ErXhEgsyvY0K6nCs7nggYumAN+9uEuQ==", "license": "MIT" }, "node_modules/debounce": { diff --git a/package.json b/package.json index 4d073c5e..1b9eb6ac 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "@mdx-js/react": "^3.1.1", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", - "dayjs": "^1.11.19", + "dayjs": "^1.11.20", "docusaurus-plugin-sass": "^0.2.6", "echarts": "^6.0.0", "embla-carousel-auto-scroll": "^8.6.0", From 4f291d0f34d6b5a6c24889c43eb12e9150c3aecb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 18:11:26 +0000 Subject: [PATCH 12/12] build(deps): bump sass from 1.97.3 to 1.98.0 Bumps [sass](https://github.com/sass/dart-sass) from 1.97.3 to 1.98.0. - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.97.3...1.98.0) --- updated-dependencies: - dependency-name: sass dependency-version: 1.98.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 10 +++++----- package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 82a9c504..1e282a89 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "react": "^19.2.4", "react-dom": "^19.2.4", "react-icons": "^5.6.0", - "sass": "^1.97.3" + "sass": "^1.98.0" }, "devDependencies": { "@docusaurus/module-type-aliases": "^3.6.0", @@ -16211,13 +16211,13 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.97.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.97.3.tgz", - "integrity": "sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==", + "version": "1.98.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.98.0.tgz", + "integrity": "sha512-+4N/u9dZ4PrgzGgPlKnaaRQx64RO0JBKs9sDhQ2pLgN6JQZ25uPQZKQYaBJU48Kd5BxgXoJ4e09Dq7nMcOUW3A==", "license": "MIT", "dependencies": { "chokidar": "^4.0.0", - "immutable": "^5.0.2", + "immutable": "^5.1.5", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { diff --git a/package.json b/package.json index 4d073c5e..97cb8378 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "react": "^19.2.4", "react-dom": "^19.2.4", "react-icons": "^5.6.0", - "sass": "^1.97.3" + "sass": "^1.98.0" }, "devDependencies": { "@docusaurus/module-type-aliases": "^3.6.0",