Skip to content

fix(ci): add feat_v4.x branch coverage and release version assertion - #3508

Open
xiaoyatong wants to merge 791 commits into
nextfrom
fix/p0-ci-branch-and-release-version
Open

fix(ci): add feat_v4.x branch coverage and release version assertion#3508
xiaoyatong wants to merge 791 commits into
nextfrom
fix/p0-ci-branch-and-release-version

Conversation

@xiaoyatong

Copy link
Copy Markdown
Collaborator

问题

修复两个 P0 问题(详见 `docs/optimization-issues.md`):

P0-1:CI 未覆盖当前开发分支 feat_v4.x

`ci.yml` 只监听 `next` 和 `feat_v3.x`,在 `feat_v4.x` 上的 push 不触发任何 lint / test / build。

P0-2:发布前缺少版本一致性校验

`release-beta.yml` 和 `release.yml` 的 build 与 publish 步骤之间没有断言,若构建产物的 `release/h5` 或 `release/taro` 版本与主包不一致,publish 仍会执行。

变更

  • `ci.yml`:push 触发分支新增 `feat_v4.x`
  • `release-beta.yml`:push 触发分支新增 `feat_v4.x`;在 build 与 publish 之间新增 `Verify release package versions` 步骤,版本不一致时 `exit 1` 阻断发布
  • `release.yml`:同样新增 `Verify release package versions` 步骤

验证方式

  • 在 `feat_v4.x` 分支推送后确认 CI 工作流被触发
  • 验证 `release/h5/package.json` 与 `package.json` 版本一致时发布步骤正常通过
  • 验证版本不一致时 `Verify release package versions` 步骤报错并阻断后续 publish

🤖 Generated with Claude Code

xiaoyatong and others added 30 commits March 12, 2025 10:46
* fix: run error

* chore: 支持 npm scripts 调用,支持作为模块调用

* chore: 构建脚本支持触发生成 JSDoc 的逻辑

* chore: steps

* chore: steps

* feat: 处理 TypeAliasDeclaration 节点

* feat: 删除调试逻辑

* fix: 类型导出的路径去掉别名

* fix: 有些 alias 没有成员,排除这个异常情况
* refactor: data abstraction via hooks

* fix: review
* refactor: cascader

* fix: ci error

* feat: harmony

* feat: update demos

* docs: update

* fix: 修复 classname undefined

* fix: custom color

* chore: merge 3x

* chore: update types

* chore: update snap
* fix(inputnumber): 增加 beforeChange,优化异步逻辑

* docs: update

* fix: 超最大最小值设置

* fix: review

* fix: harmony
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* chore: remove migrate ci-workflow

* chore: remove migrate relative scripts

* chore: remove migrate relative scripts and cis
* fix(configprovider): locale import path error

* fix(configprovider): css import path error
* feat(pickerview): 选中值增加class类名用于自定义样式

* feat(pickerview): 选中值增加class类名用于自定义样式

* fix: remove console

* chore: add types alias

* test: update snap

---------

Co-authored-by: oasis <suanbanren@foxmail.com>
* fix(fixednav): harmony

* fix: update test
* docs: 补充rem时的文档

* docs: taro
* fix: 引入button样式

* fix(empty): 引入button样式
* fix: 优化imagepreview 代码

* feat: 给taro版本增加缩放功能,优化代码

* test: fixed

* test: fix

* test: fix

* test: fix

* fix: 简写

* fix: cr

* fix: cr

* fix: 性能优化

* fix: 性能优化
* feat(pickerview): 选中值增加class类名用于自定义样式

* feat(pickerview): 选中值增加class类名用于自定义样式

* fix: remove console

* chore: add types alias

* test: update snap

* feat: 小程序支持自定义列表行高

* fix: update test

* fix: cr修改

---------

Co-authored-by: oasis <suanbanren@foxmail.com>
* fix(badge): 解决中文偏上问题

* fix: css 变量更新

* fix: 增补变量

---------

Co-authored-by: oasis <suanbanren@foxmail.com>
…and copyCode styles (#3106)

* fix(demoblock): optimize code block scrolling behavior

* fix: update demoBlock content

* fix: update demoBlock content

* fix: update demoBlock styles
xiaoyatong and others added 27 commits June 3, 2026 23:54
- Fix useCallback refs with unstable deps (props.leftAction/rightAction)
  that triggered setActionWidth on every render, causing an infinite loop
- Add width equality check before updating state to break the cycle
- Fix `opened` ref accessed without `.current` in both H5 and Taro versions

Closes #3433

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add tests for swipe open/close via touch events and disabled state
to cover the useCallback ref, onTouchMove, and toggle logic paths.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
fix(swipe): resolve infinite re-render loop causing page freeze
Co-authored-by: Cursor <cursoragent@cursor.com>
* feat: indicator基础升级完成

* fix: 修复硬编码问题
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* fix: 解决taro版本demo变量文件重复注入导致超时的问题

* fix: 解决demo文件构建错误

* fix: 修改indicator新增变量在其他主题未同步问题
* fix: 移除jmfe桥接方式

* feat(switch): 适配 v16

* fix: 优化wcsc 对嵌套 calc + var 解析成本高问题

* style: 更新导出变量类型

* style: theme-dark 变量更新
Co-authored-by: Cursor <cursoragent@cursor.com>
* fix: 移除jmfe桥接方式

* feat(switch): 适配 v16

* fix: 优化wcsc 对嵌套 calc + var 解析成本高问题

* style: 更新导出变量类型

* style: theme-dark 变量更新

* refactor(Empty): v16适配

* refactor(Empty): 更新demo和变量

* fix: 更新demo自定义尺寸
* refactor(Rate): v16适配 - 新增layout/label属性,重构尺寸体系

- 新增 layout 属性支持水平/垂直两种布局
- 新增 label 属性支持标签文字,支持 ReactNode | ReactNode[] 实现每颗星独立标签
- 水平布局适配 12DP/16DP/20DP 三种尺寸
- 垂直布局适配 20DP/28DP 尺寸,大尺寸支持 flex 均分布局
- 12DP 星间距调整为 2px
- 星星外层新增 .nut-rate-list 容器
- 补充垂直布局、带标签 demo 及文档
- 新增 layout/label/array-label 相关单测

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* feat(Rate): 新增选中过渡动画(尺寸≥20px自动启用)

- 点击星星选中时播放 scale bounce 动画(1 → 1.25 → 1)
- 仅在图标尺寸≥20px时启用(水平large、垂直normal/large)
- 仅在评分增加时触发,减少时不动画
- 动画持续300ms,自动清除状态

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* docs(Rate): 新增过渡动画 demo

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(Rate): 补充主题变量文件中缺失的 $rate-label-color

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* chore(Rate): 同步 NutCSSVariables 类型声明

构建自动生成,新增 nutuiRateLabelColor 变量类型

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor(Rate): 将 layout 属性重命名为 direction

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
* feat: add meta generation script and components metadata

- Introduced a new script `build-meta.mjs` to aggregate component metadata from various sources.
- Added a new command `generate:meta` in `package.json` to run the metadata generation.
- Created `meta/components.json` to store the generated component metadata, including categories and global tokens.

* feat: add LLMs documentation generation and Vite plugin

* fix: correct syntax errors in component metadata JSON

* feat: add English summary for NutUI React documentation

* fix: update URL handling in build-llms script

- Replaced direct comparison of import.meta.url with pathToFileURL for improved URL handling.

* chore: update .gitignore and package.json for meta generation

* feat: enhance LLMs documentation generation for multiple platforms

---------

Co-authored-by: alvinhui <xuwentao.59@jd.com>
* feat: add meta generation script and components metadata

- Introduced a new script `build-meta.mjs` to aggregate component metadata from various sources.
- Added a new command `generate:meta` in `package.json` to run the metadata generation.
- Created `meta/components.json` to store the generated component metadata, including categories and global tokens.

* feat: add LLMs documentation generation and Vite plugin

* fix: correct syntax errors in component metadata JSON

* feat: add English summary for NutUI React documentation

* fix: update URL handling in build-llms script

- Replaced direct comparison of import.meta.url with pathToFileURL for improved URL handling.

* feat: add semantic documentation generation for components

* chore: update .gitignore and package.json for meta generation

* feat: enhance LLMs documentation generation for multiple platforms

* feat: add AI documentation support for NutUI-React and Taro

* fix: correct formatting and punctuation in LLMs documentation for AI tools

* fix: convert paths to POSIX format in Sass @import to support Windows

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: alvinhui <xuwentao.59@jd.com>
Co-authored-by: Claude <noreply@anthropic.com>
* feat: add meta generation script and components metadata

- Introduced a new script `build-meta.mjs` to aggregate component metadata from various sources.
- Added a new command `generate:meta` in `package.json` to run the metadata generation.
- Created `meta/components.json` to store the generated component metadata, including categories and global tokens.

* feat: add LLMs documentation generation and Vite plugin

* fix: correct syntax errors in component metadata JSON

* feat: add English summary for NutUI React documentation

* fix: update URL handling in build-llms script

- Replaced direct comparison of import.meta.url with pathToFileURL for improved URL handling.

* feat: add semantic documentation generation for components

* chore: update .gitignore and package.json for meta generation

* feat: enhance LLMs documentation generation for multiple platforms

* feat: add AI documentation support for NutUI-React and Taro

* fix: correct formatting and punctuation in LLMs documentation for AI tools

* fix: convert paths to POSIX format in Sass @import to support Windows

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: add @nutui/nutui-react-cli package for AI coding support

* feat: implement MCP service in nutui-react-cli for IDE integration

* feat: add skills support and documentation for NutUI React CLI

* feat: update paths and add navigation for 'For Agents' in NutUI-React documentation

* feat: harden readDemo path checks and fix nutui_doc lang fallback

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: add -y flag to npx commands in README for improved usability

* chore: update version to 0.1.0 in package.json for @nutui/nutui-react-cli

* feat: enhance prepare-data script to auto-regenerate meta

* docs: add installation instruction for @nutui/nutui-react-cli in 'For Agents' documentation

* docs: update links to @nutui/nutui-react-cli in CLI documentation for consistency

---------

Co-authored-by: alvinhui <xuwentao.59@jd.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…点文档) (#3500)

* feat: enhance nutui-react-cli-core with shared CLI functionality

* chore: update version to 0.1.1 in package.json for @nutui/nutui-react-cli

* chore: update pnpm-lock.yaml
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…ancelBadge/destroyAll/config

- 新增 subtitle 副标题、titleIcon 标题图标支持
- 新增 autoClose 倒计时自动关闭 + 国际化文案(8 个 locale)
- 实现 Dialog.destroyAll() 和 Dialog.config() 静态方法
- 新增 SCSS 变量和样式(subtitle/header-icon/close-auto)
- 新增 H5 + Taro demo9(标题图标和副标题)、demo10(倒计时自动关闭)
- 更新 types/spec/dialog/base.ts 类型定义

Co-Authored-By: Claude <noreply@anthropic.com>
- ci.yml: add feat_v4.x to push trigger branches so lint/test/build
  run on the current development branch
- release-beta.yml: add feat_v4.x to push trigger branches; add
  "Verify release package versions" step between build and publish
  to block publish when release/h5 or release/taro version diverges
  from the root package.json version
- release.yml: add same version assertion step before publish

Co-Authored-By: Claude <noreply@anthropic.com>
@github-actions github-actions Bot added the 2.x Target branch 2.x label Aug 21, 2026
@coderabbitai

coderabbitai Bot commented Aug 21, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (2)
  • dev-harmony
  • feat_v3.x

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 1be4fccf-6eae-423c-a2e4-6775ce88bdb5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added the action:review This PR needs more reviews (less than 2 approvals) label Aug 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.x Target branch 2.x action:review This PR needs more reviews (less than 2 approvals)

Projects

None yet

Development

Successfully merging this pull request may close these issues.