Skip to content

feat!: upgrade unplugin-vue to v7 and add release tooling#7

Merged
fi3ework merged 1 commit into
mainfrom
feat/unplugin-vue-v7-release-tooling
Mar 17, 2026
Merged

feat!: upgrade unplugin-vue to v7 and add release tooling#7
fi3ework merged 1 commit into
mainfrom
feat/unplugin-vue-v7-release-tooling

Conversation

@fi3ework

Copy link
Copy Markdown
Member

Summary

  • upgrade unplugin-vue to v7, refresh related tooling deps, and migrate the repo to Biome v2 config
  • add Renovate and bumpp project configuration, including a format script and release commit format Release v%s
  • note the breaking change: unplugin-vue v7 drops Node 18 support, so this plugin now effectively requires Node >= 20.19

Testing

  • pnpm format
  • pnpm build
  • pnpm exec playwright test 'test/rslib/index.test.ts'
  • pnpm exec playwright test 'test/rsbuild/rsbuild.test.ts'
  • pnpm exec playwright test 'test/rsbuild/rsbuild.v1.test.ts'

@fi3ework fi3ework merged commit ee5111b into main Mar 17, 2026
2 checks passed
@fi3ework fi3ework deleted the feat/unplugin-vue-v7-release-tooling branch March 17, 2026 09:08

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 75c3dac158

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread package.json
},
"dependencies": {
"unplugin-vue": "^6.2.0"
"unplugin-vue": "^7.1.1"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Add Node engine floor for unplugin-vue v7 upgrade

Upgrading to unplugin-vue@^7.1.1 raises the effective runtime requirement to Node 20.19+, but this package still publishes without an engines.node constraint, so consumers on Node 18 (or older Node 20 minors) can install successfully and only hit failures later when the plugin executes. Declaring the new engine floor in package.json would make the breaking change explicit at install time and prevent unsupported environments from silently taking this release.

Useful? React with 👍 / 👎.

@gemini-code-assist

Copy link
Copy Markdown

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request focuses on upgrading the unplugin-vue dependency to v7, which includes breaking changes such as dropping Node 18 support. It also introduces release tooling and updates the Biome configuration for improved code formatting and consistency.

Highlights

  • Dependency Updates: Upgraded unplugin-vue to v7, requiring Node >= 20.19, and refreshed related tooling dependencies.
  • Release Tooling: Added Renovate and bumpp project configuration, including a format script and release commit format Release v%s.
  • Biome Configuration: Migrated the repository to Biome v2 config.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • .github/renovate.json5
    • Updated Renovate configuration to extend recommended settings.
  • biome.json
    • Updated Biome configuration schema and settings for improved code formatting and linting.
  • bump.config.ts
    • Added configuration file for bumpp to manage release commits and tags.
  • package.json
    • Updated dependencies, added format script, and configured bumpp for version bumping.
  • playground/rsbuild/src/env.d.ts
    • Added a comment to explain why any is used in Vue component typings.
  • playground/rslib/src/Button.vue
    • Renamed button ref to _button to avoid naming conflicts.
  • playground/rslib/src/Card.vue
    • Renamed card ref to _card to avoid naming conflicts.
  • pnpm-lock.yaml
    • Updated dependency versions and resolutions.
  • src/index.ts
    • Updated modifyRspackConfig to destructure utils as _utils to indicate it is unused.
  • test/rsbuild/rsbuild-test-helper.ts
    • Reordered imports to put expect before type Page.
  • test/rsbuild/src/env.d.ts
    • Added a comment to explain why any is used in Vue component typings.
  • test/rslib/src/env.d.ts
    • Added a comment to explain why any is used in Vue component typings.
Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/release.yml
Activity
  • The pull request upgrades unplugin-vue to v7 and migrates the repo to Biome v2 config.
  • It also adds Renovate and bumpp project configuration, including a format script and release commit format.
  • The testing section shows the commands used to test the changes.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request upgrades unplugin-vue to v7 and refreshes the development tooling, including a migration to Biome v2. The changes largely consist of configuration updates and dependency bumps, which align with the PR's goals. However, I've identified two critical issues in the playground components where variables in the <script setup> block have been renamed (likely by a linter), but their references in the <template> have not been updated. This will lead to runtime errors and break the playground examples.

import { ref } from 'vue';
const button = ref('Hello World!');

const _button = ref('Hello World!');

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

The variable _button is defined here, but the template refers to button. This will cause a reference error at runtime. It seems a linter auto-fix might have incorrectly renamed the variable, considering it unused. In Vue's <script setup>, top-level bindings are automatically exposed to the template and are thus considered used.

const button = ref('Hello World!');

import { ref } from 'vue';
const card = ref('Hello World!');

const _card = ref('Hello World!');

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

The variable _card is defined here, but the template refers to card. This will cause a reference error at runtime. Similar to the other component, this seems to be an incorrect auto-fix from a linter. In Vue's <script setup>, top-level bindings are exposed to the template.

const card = ref('Hello World!');

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant