From 3fc14f658c107935276e8d8b2a5a5a7a08ba8202 Mon Sep 17 00:00:00 2001 From: "harshoza24@gmail.com" Date: Tue, 11 Nov 2025 16:49:01 -0600 Subject: [PATCH 1/8] error out java version below 21 --- CHANGELOG.md | 5 +++++ src/emulator/commandUtils.ts | 2 +- src/emulator/controller.ts | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ffa9bd0696..45335735fae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1 +1,6 @@ +<<<<<<< HEAD - Add a confirmation in `firebase init dataconnect` before asking for app idea description. (#9282) +======= +- Removes support for running emulators with Java versions prior to 21. +- [Added] support for new google-genai plugin during `init genkit` (#8957) +>>>>>>> f4f53f5c9... error out java version below 21 diff --git a/src/emulator/commandUtils.ts b/src/emulator/commandUtils.ts index 43cd9a72b05..843ae373d5e 100644 --- a/src/emulator/commandUtils.ts +++ b/src/emulator/commandUtils.ts @@ -589,5 +589,5 @@ export async function checkJavaMajorVersion(): Promise { export const MIN_SUPPORTED_JAVA_MAJOR_VERSION = 21; export const JAVA_DEPRECATION_WARNING = - "firebase-tools will drop support for Java version < 21 soon in firebase-tools@15. " + + "firebase-tools no longer supports Java version before 21. " + "Please install a JDK at version 21 or above to get a compatible runtime."; diff --git a/src/emulator/controller.ts b/src/emulator/controller.ts index 88004d71783..29732e014d3 100755 --- a/src/emulator/controller.ts +++ b/src/emulator/controller.ts @@ -299,7 +299,7 @@ export async function startAll( if (targets.some(requiresJava)) { if ((await commandUtils.checkJavaMajorVersion()) < MIN_SUPPORTED_JAVA_MAJOR_VERSION) { utils.logLabeledError("emulators", JAVA_DEPRECATION_WARNING, "warn"); - deprecationNotices.push(JAVA_DEPRECATION_WARNING); + throw new FirebaseError(JAVA_DEPRECATION_WARNING); } } if (options.logVerbosity) { From 805008948bc7dbb819d15825868bc727f34ecf99 Mon Sep 17 00:00:00 2001 From: "harshoza24@gmail.com" Date: Tue, 11 Nov 2025 16:49:01 -0600 Subject: [PATCH 2/8] error out java version below 21 --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 45335735fae..cec75e0ff66 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,9 @@ <<<<<<< HEAD +<<<<<<< HEAD - Add a confirmation in `firebase init dataconnect` before asking for app idea description. (#9282) ======= +======= +>>>>>>> f4f53f5c9... error out java version below 21 - Removes support for running emulators with Java versions prior to 21. - [Added] support for new google-genai plugin during `init genkit` (#8957) >>>>>>> f4f53f5c9... error out java version below 21 From ed3dfc5885fba64d26cf9c76078062d4ba9df126 Mon Sep 17 00:00:00 2001 From: "harshoza24@gmail.com" Date: Tue, 11 Nov 2025 16:49:01 -0600 Subject: [PATCH 3/8] error out java version below 21 --- CHANGELOG.md | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cec75e0ff66..5aa4d793902 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,2 @@ -<<<<<<< HEAD -<<<<<<< HEAD - Add a confirmation in `firebase init dataconnect` before asking for app idea description. (#9282) -======= -======= ->>>>>>> f4f53f5c9... error out java version below 21 -- Removes support for running emulators with Java versions prior to 21. -- [Added] support for new google-genai plugin during `init genkit` (#8957) ->>>>>>> f4f53f5c9... error out java version below 21 +- Removes support for running emulators with Java versions prior to 21. \ No newline at end of file From 911a39741ce801a7059b28d20b54d6882270a303 Mon Sep 17 00:00:00 2001 From: "harshoza24@gmail.com" Date: Tue, 11 Nov 2025 16:49:01 -0600 Subject: [PATCH 4/8] update formatting --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5aa4d793902..6b821c36c1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,2 +1,2 @@ - Add a confirmation in `firebase init dataconnect` before asking for app idea description. (#9282) -- Removes support for running emulators with Java versions prior to 21. \ No newline at end of file +- Removes support for running emulators with Java versions prior to 21. From e7f3ba940fdd3be7cab38b236de0e71acade9323 Mon Sep 17 00:00:00 2001 From: harshyyy21 Date: Thu, 13 Nov 2025 10:20:31 -0600 Subject: [PATCH 5/8] Remove duplicate error message --- src/emulator/controller.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/emulator/controller.ts b/src/emulator/controller.ts index 29732e014d3..9a9dbbe895f 100755 --- a/src/emulator/controller.ts +++ b/src/emulator/controller.ts @@ -298,7 +298,6 @@ export async function startAll( const deprecationNotices: string[] = []; if (targets.some(requiresJava)) { if ((await commandUtils.checkJavaMajorVersion()) < MIN_SUPPORTED_JAVA_MAJOR_VERSION) { - utils.logLabeledError("emulators", JAVA_DEPRECATION_WARNING, "warn"); throw new FirebaseError(JAVA_DEPRECATION_WARNING); } } From a2416d94c94418bcddab4c8e6de1e38df90bed21 Mon Sep 17 00:00:00 2001 From: harshyyy21 Date: Thu, 13 Nov 2025 12:04:22 -0600 Subject: [PATCH 6/8] Update CHANGELOG.md to include breaking change --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b821c36c1b..47d045bda89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,2 +1,2 @@ - Add a confirmation in `firebase init dataconnect` before asking for app idea description. (#9282) -- Removes support for running emulators with Java versions prior to 21. +- [BREAKING] Removes support for running emulators with Java versions prior to 21. From 2079b67f5d134f335da517e4423b3455d94170f2 Mon Sep 17 00:00:00 2001 From: "harshoza24@gmail.com" Date: Thu, 13 Nov 2025 14:54:35 -0600 Subject: [PATCH 7/8] update CI to java 21 --- .github/workflows/node-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/node-test.yml b/.github/workflows/node-test.yml index fcb46816eb9..950a07d9ce2 100644 --- a/.github/workflows/node-test.yml +++ b/.github/workflows/node-test.yml @@ -84,7 +84,7 @@ jobs: # - name: Setup Java JDK # uses: actions/setup-java@v3.3.0 # with: - # java-version: 17 + # java-version: 21 # distribution: temurin # - uses: actions/checkout@v4 @@ -247,7 +247,7 @@ jobs: - name: Setup Java JDK uses: actions/setup-java@v3.3.0 with: - java-version: 17 + java-version: 21 distribution: temurin - uses: actions/checkout@v4 From 0c9b668024f798a88617956ffa81f329a983cf35 Mon Sep 17 00:00:00 2001 From: Joe Hanley Date: Fri, 14 Nov 2025 11:31:08 -0800 Subject: [PATCH 8/8] Add setup-java action to integration --- .github/workflows/node-test.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/node-test.yml b/.github/workflows/node-test.yml index 950a07d9ce2..f088faa2e79 100644 --- a/.github/workflows/node-test.yml +++ b/.github/workflows/node-test.yml @@ -188,6 +188,11 @@ jobs: node-version: ${{ matrix.node-version }} cache: npm cache-dependency-path: npm-shrinkwrap.json + - name: Setup Java JDK + uses: actions/setup-java@v3.3.0 + with: + java-version: 21 + distribution: temurin - name: Setup Chrome uses: browser-actions/setup-chrome@v1.7.2 with: