Skip to content

chore: bump all (dev)Dependencies#246

Merged
JounQin merged 2 commits intomainfrom
chore/deps
May 30, 2025
Merged

chore: bump all (dev)Dependencies#246
JounQin merged 2 commits intomainfrom
chore/deps

Conversation

@JounQin
Copy link
Member

@JounQin JounQin commented May 30, 2025

Important

Update development dependencies, add lint fix step, and adjust configurations in various files.

  • Chores:
    • Updated development dependencies in package.json to newer versions.
    • Added Lint Fix step in .github/workflows/autofix.yml to run yarn build and yarn lint:es --fix.
    • Changed size limit path to ./src/index.ts and limit to 1.6kB in .size-limit.json.
    • Modified ESLint rules in eslint.config.js to include unicorn-x/no-anonymous-default-export and unicorn-x/no-nested-ternary.
  • Tests:
    • Updated import path for synckit module in test/types-d.cts.

This description was created by Ellipsis for 38fc43a. You can customize this summary. It will automatically update as commits are pushed.


Summary by CodeRabbit

  • Chores

    • Updated development dependencies to newer versions.
    • Modified build script options for documentation generation.
    • Adjusted configuration for monitoring file size limits.
    • Enhanced GitHub Actions workflow with an automatic lint fixing step.
    • Updated ESLint configuration rules for improved code quality.
    • Corrected lint directive comments for consistency.
  • Tests

    • Updated import path for a module in test files.

@JounQin JounQin requested a review from Copilot May 30, 2025 04:13
@JounQin JounQin self-assigned this May 30, 2025
@changeset-bot
Copy link

changeset-bot bot commented May 30, 2025

🦋 Changeset detected

Latest commit: 2def2ee

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
synckit Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@coderabbitai
Copy link
Contributor

coderabbitai bot commented May 30, 2025

Walkthrough

The changes update the size-limit configuration to monitor a different source file and increase the size threshold, revise the build script for tsdown with new flags, upgrade several development dependencies, adjust a test import to use a relative path for the synckit module, add a GitHub Actions lint fix step, modify ESLint rule prefixes and add a new rule, and correct an ESLint directive comment in the source code.

Changes

File(s) Change Summary
.size-limit.json Changed monitored file from lib/index.js to src/index.ts and increased size limit to 1.6kB.
package.json Updated build script flags for tsdown; upgraded multiple dev dependencies to newer versions.
test/types-d.cts Changed synckit import from package name to relative path ('..').
.github/workflows/autofix.yml Added "Lint Fix" step running yarn build and yarn lint:es --fix in autofix job workflow.
eslint.config.js Changed ESLint rule prefix from unicorn to unicorn-x for some rules; added global disabling of unicorn-x/no-nested-ternary.
src/helpers.ts Corrected ESLint directive comment prefix from unicorn to unicorn-x for string replacement rule.
.changeset/soft-chefs-hang.md Added changeset documenting a patch update to republish synckit as npm latest tag version.

Possibly related PRs

Suggested labels

internal, types

Poem

A hop, a skip, a gentle tweak,
The build script’s flags now look unique.
Dependencies fresh as morning dew,
And size limits stretched a bit too.
With tests that point the proper way,
Lint fixes hop in without delay! 🐇✨

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

src/helpers.ts

Oops! Something went wrong! :(

ESLint: 9.27.0

Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@1stg/eslint-config' imported from /eslint.config.js
at Object.getPackageJSONURL (node:internal/modules/package_json_reader:255:9)
at packageResolve (node:internal/modules/esm/resolve:767:81)
at moduleResolve (node:internal/modules/esm/resolve:853:18)
at defaultResolve (node:internal/modules/esm/resolve:983:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:799:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:723:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:706:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:307:38)
at #link (node:internal/modules/esm/module_job:170:49)

eslint.config.js

Oops! Something went wrong! :(

ESLint: 9.27.0

Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@1stg/eslint-config' imported from /eslint.config.js
at Object.getPackageJSONURL (node:internal/modules/package_json_reader:255:9)
at packageResolve (node:internal/modules/esm/resolve:767:81)
at moduleResolve (node:internal/modules/esm/resolve:853:18)
at defaultResolve (node:internal/modules/esm/resolve:983:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:799:12)
at #cachedDefaultResolve (node:internal/modules/esm/loader:723:25)
at ModuleLoader.resolve (node:internal/modules/esm/loader:706:38)
at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:307:38)
at #link (node:internal/modules/esm/module_job:170:49)

✨ Finishing Touches
  • 📝 Generate Docstrings

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
🪧 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.
    • Explain this complex logic.
    • 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 explain this code block.
    • @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 explain its main purpose.
    • @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.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

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 generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @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.

@petercat-assistant
Copy link

Walkthrough

This pull request updates various development dependencies and modifies configuration files to accommodate these changes. The updates include changes to the size limit configuration, build scripts, and import paths in test files.

Changes

Files Summary
.size-limit.json Updated path and size limit from ./lib/index.js to ./src/index.ts with a new limit of 1.6kB.
package.json Bumped versions of several devDependencies and modified the build:tsdown script to include --no-clean option.
test/types-d.cts Changed import path for synckit from require('synckit') to require('..').
yarn.lock Updated lock file to reflect new dependency versions.

@codesandbox-ci
Copy link

codesandbox-ci bot commented May 30, 2025

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

@socket-security
Copy link

socket-security bot commented May 30, 2025

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​unrs/​resolver-binding-darwin-x64@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-win32-x64-msvc@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-win32-arm64-msvc@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-win32-ia32-msvc@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-x64-gnu@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-x64-musl@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-freebsd-x64@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-arm64-gnu@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-arm64-musl@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-arm-gnueabihf@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-arm-musleabihf@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-ppc64-gnu@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-linux-riscv64-gnu@​1.7.2 ⏵ 1.7.81001003794 +6100
Updated@​unrs/​resolver-binding-linux-riscv64-musl@​1.7.2 ⏵ 1.7.81001003792 +9100
Updated@​unrs/​resolver-binding-linux-s390x-gnu@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​unrs/​resolver-binding-darwin-arm64@​1.7.2 ⏵ 1.7.81001003795 +6100
Updated@​1stg/​common-config@​13.0.1 ⏵ 14.0.0501005095100
Addedis-negative-zero@​2.0.3671008351100
Added@​changesets/​changelog-git@​0.2.11001006085100
Added@​changesets/​errors@​0.2.01001006584100
Updated@​unrs/​resolver-binding-wasm32-wasi@​1.7.2 ⏵ 1.7.8100 +110066 +195 +6100
See 56 more rows in the dashboard

View full report

Copy link

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

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

Important

Looks good to me! 👍

Reviewed everything up to bc44c2b in 44 seconds. Click for details.
  • Reviewed 84 lines of code in 3 files
  • Skipped 1 files when reviewing.
  • Skipped posting 4 draft comments. View those below.
  • Modify your settings and rules to customize what types of comments Ellipsis leaves. And don't forget to react with 👍 or 👎 to teach Ellipsis.
1. .size-limit.json:3
  • Draft comment:
    Changed source file reference and size limit. Confirm that measuring the source ('src/index.ts') instead of the built file is intentional.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50% None
2. package.json:52
  • Draft comment:
    Updated tsdown command: Added '--no-clean' and shorthand '-f'. Verify that the new flags produce the expected build output.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50% None
3. package.json:67
  • Draft comment:
    Multiple devDependency versions have been bumped. Check for any breaking changes, especially with major updates like '@1stg/common-config' from ^13.0.1 to ^14.0.0.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
4. test/types-d.cts:3
  • Draft comment:
    Changed import path from 'synckit' to '..'. Ensure this local reference resolves as intended for type tests.
  • Reason this comment was not posted:
    Confidence changes required: 0% <= threshold 50% None

Workflow ID: wflow_mp4K8xfWpiGxtIYh

You can customize Ellipsis by changing your verbosity settings, reacting with 👍 or 👎, replying to comments, or adding code review rules.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Update development dependencies and associated tooling configurations.

  • Adjust test import to reference local package entry point
  • Enhance the tsdown build script with --no-clean and shorthand flags
  • Bump multiple devDependency versions
  • Change size-limit target to source file and raise the threshold

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
test/types-d.cts Updated import synckit to load from the local module ('..') for testing
package.json Modified build:tsdown script flags; bumped several devDependency versions
.size-limit.json Switched measurement path to src/index.ts and increased size limit to 1.6kB
Comments suppressed due to low confidence (2)

package.json:52

  • [nitpick] Introducing --no-clean might leave stale artifacts in lib/. If you intend to get a fresh build each time, consider removing --no-clean or explicitly cleaning the output directory beforehand.
"build:tsdown": "tsdown --no-clean -d lib -f cjs src/index.ts",

.size-limit.json:3

  • [nitpick] Measuring the TypeScript source size rather than the compiled JavaScript (lib/index.js) may not reflect the actual package footprint. Consider pointing to the built output to get accurate bundle size metrics.
"path": "./src/index.ts",

@pkg-pr-new
Copy link

pkg-pr-new bot commented May 30, 2025

Open in StackBlitz

npm i https://pkg.pr.new/synckit@246

commit: 2def2ee

@github-actions
Copy link
Contributor

github-actions bot commented May 30, 2025

📊 Package size report   -0.05%↓

File Before After
lib/index.cjs 24.5 kB -0.2%↓24.5 kB
lib/index.d.cts 5.8 kB -0.07%↓5.8 kB
package.json 4.2 kB 0.09%↑4.2 kB
Total (Includes all files) 101.4 kB -0.05%↓101.4 kB
Tarball size 26.5 kB -0.02%↓26.5 kB
Unchanged files
File Size
lib/common.d.ts 329 B
lib/common.js 872 B
lib/common.js.map 1.2 kB
lib/constants.d.ts 1.8 kB
lib/constants.js 2.4 kB
lib/constants.js.map 2.3 kB
lib/helpers.d.ts 1.5 kB
lib/helpers.js 17.0 kB
lib/helpers.js.map 15.3 kB
lib/index.d.ts 424 B
lib/index.js 2.5 kB
lib/index.js.map 2.5 kB
lib/types.d.ts 1.4 kB
lib/types.js 44 B
lib/types.js.map 102 B
LICENSE 1.1 kB
README.md 16.1 kB

🤖 This report was automatically generated by pkg-size-action

@github-actions
Copy link
Contributor

github-actions bot commented May 30, 2025

size-limit report 📦

Path Size
lib/index.js 0 B (-100% 🔽)
src/index.ts 1.49 KB (+100% 🔺)

@codecov
Copy link

codecov bot commented May 30, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.82%. Comparing base (15db569) to head (2def2ee).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #246   +/-   ##
=======================================
  Coverage   95.82%   95.82%           
=======================================
  Files           4        4           
  Lines         335      335           
  Branches      154      154           
=======================================
  Hits          321      321           
+ Misses         14       11    -3     
- Partials        0        3    +3     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 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.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 15db569 and bc44c2b.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (3)
  • .size-limit.json (1 hunks)
  • package.json (2 hunks)
  • test/types-d.cts (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (19)
  • GitHub Check: Codacy Static Code Analysis
  • GitHub Check: Lint and Test with Node.js 22 on windows-latest
  • GitHub Check: publish
  • GitHub Check: Package Size Report
  • GitHub Check: Lint and Test with Node.js 24 on windows-latest
  • GitHub Check: Lint and Test with Node.js 20 on ubuntu-latest
  • GitHub Check: Lint and Test with Node.js 23 on ubuntu-latest
  • GitHub Check: Lint and Test with Node.js 22 on windows-latest
  • GitHub Check: Lint and Test with Node.js 23 on windows-latest
  • GitHub Check: Lint and Test with Node.js 18.18 on ubuntu-latest
  • GitHub Check: Lint and Test with Node.js 24 on ubuntu-latest
  • GitHub Check: Lint and Test with Node.js 23 on macos-latest
  • GitHub Check: Lint and Test with Node.js 20 on windows-latest
  • GitHub Check: Lint and Test with Node.js 22 on ubuntu-latest
  • GitHub Check: Lint and Test with Node.js 18.18 on windows-latest
  • GitHub Check: Lint and Test with Node.js 18.18 on macos-latest
  • GitHub Check: Lint and Test with Node.js 18 on ubuntu-latest
  • GitHub Check: Lint and Test with Node.js 18 on windows-latest
  • GitHub Check: Lint and Test with Node.js 18 on macos-latest
🔇 Additional comments (7)
package.json (7)

52-52: Update tsdown build script flags
The build:tsdown script now uses --no-clean and the shorthand -f cjs. This will preserve existing output and emit CommonJS. Looks good, but ensure this aligns with your CI/build docs.


67-67: Bump @1stg/common-config to 14.0.0
This is a major version bump—please verify there are no breaking changes in your shared config that could impact linting or formatting.


73-73: Upgrade @swc/core to 1.11.29
A patch‐level bump; no action needed unless you hit new transform issues.


76-76: Update @types/node to 22.15.26
Type definitions have advanced; run a full type check (tsc --noEmit) to catch any new warnings or errors.


84-84: Upgrade eslint-plugin-jest to 28.12.0
Minor bump—verify your existing Jest lint rules still pass.


92-92: Upgrade size-limit-preset-node-lib to 0.4.0
Matches the size-limit change; no other concerns.


99-99: Upgrade tsdown to 0.12.4
Ensure this version supports the new --no-clean and -f cjs flags used in your build script.

Copy link

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

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

Caution

Changes requested ❌

Reviewed f6e746a in 1 minute and 40 seconds. Click for details.
  • Reviewed 131 lines of code in 6 files
  • Skipped 0 files when reviewing.
  • Skipped posting 8 draft comments. View those below.
  • Modify your settings and rules to customize what types of comments Ellipsis leaves. And don't forget to react with 👍 or 👎 to teach Ellipsis.
1. .github/workflows/autofix.yml:33
  • Draft comment:
    Added a Lint Fix step using 'yarn lint:es --fix'. Confirm that the lint script handles auto-fixing as expected.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
2. .size-limit.json:3
  • Draft comment:
    Updated size limit: now targeting './src/index.ts' with a limit of 1.6kB. Ensure this measurement is intended for the source file.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
3. eslint.config.js:11
  • Draft comment:
    Switched rule from 'unicorn/no-anonymous-default-export' to 'unicorn-x/no-anonymous-default-export'. Verify that the 'unicorn-x' plugin is correctly installed and configured.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
4. eslint.config.js:18
  • Draft comment:
    Added rule 'unicorn-x/no-nested-ternary': 'off'. Confirm that this rule is available and intended in your ESLint setup.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
5. package.json:51
  • Draft comment:
    Modified the 'build:tsdown' script to include '--no-clean' and use '-f' for format. Verify that this updated behavior fits the intended build process.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
6. package.json:64
  • Draft comment:
    Multiple devDependency versions have been bumped. Ensure all updated versions are compatible and well-tested.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
7. src/helpers.ts:370
  • Draft comment:
    Updated the ESLint disable comment from 'unicorn/prefer-string-replace-all' to 'unicorn-x/prefer-string-replace-all' to match the plugin change.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None
8. test/types-d.cts:3
  • Draft comment:
    Changed import from 'synckit' to require the local module ('..'). Ensure this correctly targets the local build for type testing.
  • Reason this comment was not posted:
    Confidence changes required: 33% <= threshold 50% None

Workflow ID: wflow_pFSRIhlT8t0NP50J

You can customize Ellipsis by changing your verbosity settings, reacting with 👍 or 👎, replying to comments, or adding code review rules.

Signed-off-by: JounQin <admin@1stg.me>
Copy link

@ellipsis-dev ellipsis-dev bot left a comment

Choose a reason for hiding this comment

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

Important

Looks good to me! 👍

Reviewed 38fc43a in 1 minute and 26 seconds. Click for details.
  • Reviewed 133 lines of code in 6 files
  • Skipped 0 files when reviewing.
  • Skipped posting 9 draft comments. View those below.
  • Modify your settings and rules to customize what types of comments Ellipsis leaves. And don't forget to react with 👍 or 👎 to teach Ellipsis.
1. .github/workflows/autofix.yml:33
  • Draft comment:
    Verify that running 'yarn build' before 'lint:es --fix' in the new Lint Fix step is intentional, as it adds extra overhead.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% The comment is asking the author to verify their intention, which is against the rules. It does not provide a specific suggestion or point out a clear issue with the code.
2. .size-limit.json:3
  • Draft comment:
    Changing target from './lib/index.js' to './src/index.ts' may not reflect the production bundle size. Confirm this change is intended.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 20% vs. threshold = 50% The comment raises a valid concern - measuring TypeScript source files instead of compiled JS could give inaccurate bundle size metrics. However, this is a speculative comment asking for confirmation ("Confirm this change is intended") rather than definitively pointing out an error. The author likely had a reason for this change. The change could be intentional as part of migrating to TypeScript, and the increased size limit suggests they're aware of the implications. While the concern is valid, the comment violates our rules by asking for confirmation rather than pointing out a definite issue. Delete this comment as it's speculative and asks for confirmation rather than identifying a clear problem that needs fixing.
3. eslint.config.js:11
  • Draft comment:
    Rule name changed to 'unicorn-x/no-anonymous-default-export'; ensure the new plugin is configured correctly.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% The comment is asking the author to ensure that the new plugin is configured correctly after a rule name change. This falls under asking the author to ensure something is done, which is against the rules.
4. eslint.config.js:18
  • Draft comment:
    Disabling 'unicorn-x/no-nested-ternary'—double-check if this override is desired for your codebase.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% The comment is asking the PR author to double-check if the override is desired, which violates the rule against asking for confirmation or double-checking intentions. It does not provide a specific suggestion or point out a clear issue.
5. package.json:52
  • Draft comment:
    The tsdown command now uses '--no-clean'. Confirm that preserving previous build artifacts is intended behavior.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% The comment is asking the PR author to confirm their intention regarding the use of --no-clean in the tsdown command. This falls under the rule of not asking the author to confirm their intention or ensure behavior is intended. Therefore, this comment should be removed.
6. package.json:67
  • Draft comment:
    Bumped '@1stg/common-config' to ^14.0.0. Verify that any potential breaking changes in this dependency are addressed.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% This comment is about a dependency change and asks the author to verify potential breaking changes, which violates the rules against commenting on dependency changes and asking for verification.
7. src/helpers.ts:370
  • Draft comment:
    Updated disable comment to use 'unicorn-x/prefer-string-replace-all'. Ensure the new rule name matches your eslint configuration.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% The comment is asking the author to ensure that the new rule name matches their eslint configuration. This falls under asking the author to ensure something, which is not allowed by the rules.
8. test/types-d.cts:3
  • Draft comment:
    Import changed from 'synckit' to '..'. Confirm that the test is now targeting the correct module source.
  • Reason this comment was not posted:
    Comment did not seem useful. Confidence is useful = 0% <= threshold 50% The comment is asking the author to confirm that the test is targeting the correct module source after an import change. This is a request for confirmation, which violates the rule against asking the author to confirm their intention or ensure behavior is intended.
9. src/helpers.ts:370
  • Draft comment:
    It looks like there might be a typo in the ESLint disable comment. The rule name is changed to 'unicorn-x/prefer-string-replace-all'. If this was unintentional, please change it back to 'unicorn/prefer-string-replace-all'.
  • Reason this comment was not posted:
    Decided after close inspection that this draft comment was likely wrong and/or not actionable: usefulness confidence = 0% vs. threshold = 50% The comment suggests changing back to 'unicorn/prefer-string-replace-all', but this seems to be making assumptions. The change from 'unicorn' to 'unicorn-x' could be intentional - perhaps they're using a fork or modified version of the ESLint unicorn rules. Without more context about their ESLint setup, we can't assume this is a typo. I could be wrong about this being intentional - maybe it really is a typo. But the key point is that I don't have enough context to know for sure. Even if it is a typo, speculative comments asking "if this was unintentional" violate our rules. We should only keep comments that point out definite issues. Delete this comment. It's speculative and makes assumptions about the intended ESLint configuration without sufficient context.

Workflow ID: wflow_P1x0IoPkLDbhYthg

You can customize Ellipsis by changing your verbosity settings, reacting with 👍 or 👎, replying to comments, or adding code review rules.

@sonarqubecloud
Copy link

@JounQin
Copy link
Member Author

JounQin commented May 30, 2025

@coderabbitai full review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented May 30, 2025

✅ Actions performed

Full review triggered.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

♻️ Duplicate comments (3)
.size-limit.json (1)

3-4: Size limit threshold still too low for actual file size.

The 1.6kB limit remains insufficient for the actual src/index.ts file size of ~4.6kB as previously identified.

test/types-d.cts (1)

3-3: Import path change still has resolution and compatibility issues.

As previously identified, using require('..') fails because the package's "main" field points to a non-existent file and CommonJS require() isn't compatible with the ESM-only test environment.

package.json (1)

52-52: Re-evaluate the --no-clean flag on build:tsdown.
Retaining previous artifacts in lib/ may lead to stale files or documentation mismatches. If performance is the goal, document the rationale or consider cleaning only changed files.

🧹 Nitpick comments (2)
.github/workflows/autofix.yml (2)

33-37: Ensure formatting consistency after lint fixes.
Since yarn lint:es --fix can modify code, consider adding a yarn format step immediately afterward to enforce Prettier conventions before autofix.ci applies changes.


33-37: Consolidate scripts for clarity.
You could introduce a new npm script in package.json, e.g.

"scripts": {
  "lint:fix": "yarn build && yarn lint:es --fix"
}

and then simplify this step to run: yarn lint:fix. This centralizes logic and eases future maintenance.

📜 Review details

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

📥 Commits

Reviewing files that changed from the base of the PR and between 15db569 and 2def2ee.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (7)
  • .changeset/soft-chefs-hang.md (1 hunks)
  • .github/workflows/autofix.yml (1 hunks)
  • .size-limit.json (1 hunks)
  • eslint.config.js (1 hunks)
  • package.json (2 hunks)
  • src/helpers.ts (1 hunks)
  • test/types-d.cts (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
test/types-d.cts (1)
Learnt from: JounQin
PR: un-ts/synckit#222
File: src/helpers.ts:13-13
Timestamp: 2025-04-02T06:32:20.004Z
Learning: Tests in the synckit project run in an ESM-only environment, so CommonJS patterns like require() should not be used in test files. Always use ESM import syntax and proper mocking approaches compatible with ESM.
🔇 Additional comments (6)
eslint.config.js (2)

11-11: ESLint rule prefix update looks correct.

The change from unicorn to unicorn-x prefix aligns with the dependency update mentioned in the PR objectives.


18-18: Good addition of nested ternary rule.

Adding the unicorn-x/no-nested-ternary rule with the updated prefix maintains consistency with the other disabled rules in this configuration.

.changeset/soft-chefs-hang.md (1)

1-5: Changeset format and content looks correct.

The changeset properly documents the patch update for republishing as the npm latest tag version.

src/helpers.ts (1)

369-371: ESLint directive updated to match new plugin prefix.
The // eslint-disable-next-line unicorn-x/prefer-string-replace-all comment now aligns with the updated unicorn-x rules configured in eslint.config.js. No further change needed here.

.github/workflows/autofix.yml (1)

33-37: Great addition of a lint-fix phase.
Running yarn build before yarn lint:es --fix helps catch and fix lint issues in the latest build output.

package.json (1)

67-76: Verify compatibility of updated devDependencies.
Multiple devDependencies were bumped:

  • @1stg/common-config → ^14.0.0
  • @swc/core → ^1.11.29
  • @types/node → ^22.15.26
  • eslint-plugin-jest → ^28.12.0
  • size-limit-preset-node-lib → ^0.4.0
  • tsdown → ^0.12.4

Please confirm these version upgrades do not introduce breaking changes. Run the full test suite and review each package’s changelog for required migration steps.

Also applies to: 84-92, 99-99

@JounQin JounQin merged commit a5cf309 into main May 30, 2025
55 checks passed
@JounQin JounQin deleted the chore/deps branch May 30, 2025 05:10
@JounQin JounQin mentioned this pull request May 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants