Skip to content

fix(babel-preset-taro): 配置中使用了不正确的插件#16726

Closed
skyclouds2001 wants to merge 4 commits intoNervJS:mainfrom
skyclouds2001:babel-class-properties-plugin
Closed

fix(babel-preset-taro): 配置中使用了不正确的插件#16726
skyclouds2001 wants to merge 4 commits intoNervJS:mainfrom
skyclouds2001:babel-class-properties-plugin

Conversation

@skyclouds2001
Copy link
Copy Markdown
Contributor

@skyclouds2001 skyclouds2001 commented Oct 17, 2024

这个 PR 做了什么? (简要描述所做更改)

更新 babel 使用的插件名称

@babel/plugin-proposal-class-properties 插件已弃用,应采用 @babel/plugin-transform-class-properties

注意到 package.json 中已更新使用新插件,但 index.js 中尚未更新使用新插件

查看提交记录注意到对应插件已在 2ca1ce59c49d7900f6a098165299c2c52ea0548d 提交中更新为新插件,但在 c7688632f566016465e257756707acafbac604a6 中意外地恢复为弃用的原插件(但未恢复 package.json 中的)

在合并该 PR 后,就可以回退 5400d1f4bd538bdb5e022e0a3abccb92f1483826,从项目模板中移除该弃用的插件,参见 #16727

Note

考虑到该插件已被包含在 @babel/preset-env 中,未来可以考虑移除该插件

同时参见文档更新 NervJS/taro-docs#284

这个 PR 是什么类型? (至少选择一个)

  • 错误修复(Bugfix) issue: fix #
  • 新功能(Feature)
  • 代码重构(Refactor)
  • TypeScript 类型定义修改(Typings)
  • 文档修改(Docs)
  • 代码风格更新(Code style update)
  • 其他,请描述(Other, please describe):

这个 PR 涉及以下平台:

  • 所有小程序
  • 微信小程序
  • 支付宝小程序
  • 百度小程序
  • 字节跳动小程序
  • QQ 轻应用
  • 京东小程序
  • 快应用平台(QuickApp)
  • Web 平台(H5)
  • 移动端(React-Native)
  • 鸿蒙(harmony)

Summary by CodeRabbit

  • Chores
    • 恢复了对类属性转换功能的支持,提高了代码在处理现代 JavaScript 特性时的稳定性。

@skyclouds2001 skyclouds2001 changed the title fix: babel plugin incorrect usage bug fix(babel-preset-taro): 不正确的插件使用 Oct 17, 2024
@skyclouds2001 skyclouds2001 changed the title fix(babel-preset-taro): 不正确的插件使用 fix(babel-preset-taro): 配置中使用了不正确的插件 Oct 17, 2024
@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 17, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 57.70%. Comparing base (8ae3f2d) to head (8c66edf).

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main   #16726   +/-   ##
=======================================
  Coverage   57.70%   57.70%           
=======================================
  Files         469      469           
  Lines       26551    26551           
  Branches     5722     5704   -18     
=======================================
  Hits        15321    15321           
- Misses       9765     9859   +94     
+ Partials     1465     1371   -94     
Flag Coverage Δ
taro-cli 72.37% <ø> (ø)
taro-runtime 59.87% <ø> (ø)
taro-web 49.67% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
packages/babel-preset-taro/index.js 73.62% <ø> (ø)

... and 34 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread packages/babel-preset-taro/index.js Outdated
@ZEJIA-LIU ZEJIA-LIU requested a review from zhengyanan1 October 22, 2024 02:57
@ZEJIA-LIU ZEJIA-LIU modified the milestone: 4.0.7 Oct 22, 2024
This was referenced Jan 11, 2025
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 4, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

此次变更在 packages/babel-preset-taro/index.js 文件中调整了 Babel 的配置。在模块导出函数中,插件数组中重新添加了 @babel/plugin-transform-class-properties 插件,其配置保持 { loose } 不变。该修改确保在转换类属性时插件得以正确应用,而不会影响现有逻辑和代码流程。

Changes

文件 变更摘要
packages/babel-preset-taro/index.js 在插件数组中重新添加 @babel/plugin-transform-class-properties 插件,配置保持 { loose }

Sequence Diagram(s)

sequenceDiagram
    participant BabelPreset as Babel 预设模块
    participant ExportFunc as 模块导出函数
    participant PluginArr as 插件数组

    BabelPreset->>ExportFunc: 加载配置
    ExportFunc->>PluginArr: 获取插件列表
    PluginArr-->>ExportFunc: 返回插件列表(包含 @babel/plugin-transform-class-properties)
    ExportFunc-->>BabelPreset: 返回完整配置
Loading

Poem

我是一只快乐的小兔,
在代码丛林中欢跳不停。
@babel 插件归来赋新力,
类属性转换多了妙趣。
编程世界亮起温暖的光! 🐰✨


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8ae3f2d and 8c66edf.

📒 Files selected for processing (1)
  • packages/babel-preset-taro/index.js (1 hunks)
✨ Finishing Touches
  • 📝 Generate Docstrings

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai plan to trigger planning for file edits and PR creation.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@skyclouds2001
Copy link
Copy Markdown
Contributor Author

closing due to #17385 has been merged

@skyclouds2001 skyclouds2001 deleted the babel-class-properties-plugin branch April 4, 2025 09:34
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.

2 participants