From 2c46194dc932271798eaecc324c4eb19b23e04af Mon Sep 17 00:00:00 2001 From: lukewalczak Date: Tue, 27 Oct 2026 12:53:57 +0100 Subject: [PATCH] fix(cli): generate plugins on the current Rozenite 2.x packages --- .changeset/cli-template-update.md | 5 ++++ .../cli/src/__tests__/plugin-template.test.ts | 26 +++++++++++++++++++ packages/cli/template/package.json | 6 ++--- 3 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 .changeset/cli-template-update.md create mode 100644 packages/cli/src/__tests__/plugin-template.test.ts diff --git a/.changeset/cli-template-update.md b/.changeset/cli-template-update.md new file mode 100644 index 00000000..b48f0469 --- /dev/null +++ b/.changeset/cli-template-update.md @@ -0,0 +1,5 @@ +--- +'rozenite': patch +--- + +Generate new plugins on the current Rozenite 2.x packages. `rozenite generate` previously scaffolded plugins that installed the 1.x line, which ignored options such as `integrations` in `rozenite.config.ts`. diff --git a/packages/cli/src/__tests__/plugin-template.test.ts b/packages/cli/src/__tests__/plugin-template.test.ts new file mode 100644 index 00000000..36efe96d --- /dev/null +++ b/packages/cli/src/__tests__/plugin-template.test.ts @@ -0,0 +1,26 @@ +import { describe, expect, it } from 'vitest'; +import fs from 'node:fs/promises'; +import path from 'node:path'; +import { TEMPLATE_DIR } from '../constants.js'; + +const readJson = async (filePath: string) => JSON.parse(await fs.readFile(filePath, 'utf8')); + +describe('plugin template', () => { + it('depends on the Rozenite major line the CLI belongs to', async () => { + const { version } = await readJson(path.resolve(__dirname, '..', '..', 'package.json')); + const { dependencies, devDependencies } = await readJson( + path.join(TEMPLATE_DIR, 'package.json'), + ); + const sameMajor = expect.stringMatching(new RegExp(`^\\^${version.split('.')[0]}\\.`)); + + expect({ + rozenite: devDependencies.rozenite, + '@rozenite/vite-plugin': devDependencies['@rozenite/vite-plugin'], + '@rozenite/plugin-bridge': dependencies['@rozenite/plugin-bridge'], + }).toEqual({ + rozenite: sameMajor, + '@rozenite/vite-plugin': sameMajor, + '@rozenite/plugin-bridge': sameMajor, + }); + }); +}); diff --git a/packages/cli/template/package.json b/packages/cli/template/package.json index 730db16d..06c4778e 100644 --- a/packages/cli/template/package.json +++ b/packages/cli/template/package.json @@ -12,16 +12,16 @@ "dev": "rozenite dev" }, "dependencies": { - "@rozenite/plugin-bridge": "^1.2.0" + "@rozenite/plugin-bridge": "^2.5.0" }, "devDependencies": { - "@rozenite/vite-plugin": "^1.2.0", + "@rozenite/vite-plugin": "^2.5.0", "@types/react": "~19.1.10", "react": "19.1.0", "react-dom": "19.1.0", "react-native": "0.81.5", "react-native-web": "^0.21.2", - "rozenite": "^1.2.0", + "rozenite": "^2.5.0", "typescript": "~5.9.3", "vite": "^7.3.1" },