Skip to content

fix: bump synckit to surface worker failures instead of hanging - #805

Merged
JounQin merged 1 commit into
mainfrom
fix/bump-synckit-0.12.3
Oct 13, 2026
Merged

JounQin merged 1 commit into
mainfrom
fix/bump-synckit-0.12.3

Conversation

@JounQin

@JounQin JounQin commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

Summary

Bumps synckit from ^0.11.13 to ^0.12.3.

Fixes #781.
Fixes #777.

Why

When prettier is not installed, the worker (worker.mjs) fails at its top-level import 'prettier'. With synckit 0.11.x the failure inside the worker is never reported back, so the caller stays blocked in Atomics.wait() forever and ESLint hangs with no output.

synckit 0.12.0 added exactly this: worker load failures, worker throws and worker exits are surfaced to the caller instead of hanging (see synckit changelog). After the bump, ESLint fails fast with a clear error that names the missing prettier package.

Verification

In an isolated project with the plugin installed but prettier intentionally absent:

  • Before (synckit@0.11.13): eslint test.js hangs — killed after 20s (exit code: 124)
  • After (synckit@0.12.3):
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'prettier' imported from .../worker.mjs

and ESLint exits with code 2.

Existing suite passes: yarn check and yarn mocha (42 passing).

Summary by CodeRabbit

  • Bug Fixes
    • ESLint now reports a clear error when Prettier is unavailable, instead of hanging when the sync worker cannot load. The message identifies the missing Prettier package, making the issue easier to recognize and resolve. This improves feedback in the affected setup; other linting behavior is unchanged.

Copilot AI balanced review requested due to automatic review settings October 13, 2026 10:57
@changeset-bot

changeset-bot Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: b1d04ea

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

This PR includes changesets to release 1 package
Name Type
eslint-plugin-prettier 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

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coderabbitai

coderabbitai Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 621a4a95-0e12-44de-90e8-cd893e92a095
📥 Commits

Reviewing files that changed from the base of the PR and between a6b3feb and b1d04ea.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (2)
  • .changeset/tidy-pandas-greet.md
  • package.json

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.

📝 Walkthrough

The synckit production dependency range changes from ^0.11.13 to ^0.12.3. A patch changeset describes the error reported when the sync worker fails to load because Prettier is missing.

Changes: synckit dependency update

Layer / File(s) Summary
Update synckit and record release
package.json, .changeset/tidy-pandas-greet.md
The synckit dependency range changes to ^0.12.3. The patch changeset describes a missing-Prettier error instead of an ESLint hang.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix · Severity of issue fixed: Medium

Merge Risk: ⚪ Minimal · up to b1d04

The dependency is locked to the release that surfaces worker-load failures, so a missing Prettier installation should fail promptly instead of hanging ESLint. No actionable merge risk remains.

Pre-merge checks · Passed 5
Passed Passed checks (5 passed)
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely describes the main change: updating synckit to expose worker failures and prevent hangs.
Linked Issues check Passed Issue #781 requires ESLint to fail promptly with a clear error when prettier is missing. The PR changes synckit from ^0.11.13 to ^0.12.3, which surfaces worker load failures to the caller. The…
Out of Scope Changes check Passed The changes are limited to the synckit dependency update and a changeset that documents the resulting missing-prettier error behavior. Both changes support issue #781. No unrelated source or behav…
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@pkg-pr-new

pkg-pr-new Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/eslint-plugin-prettier@805

commit: b1d04ea

Fixes #781. When prettier is not installed the sync worker fails to load
its module graph, and synckit kept the caller blocked in Atomics.wait()
forever, so ESLint hung without any output.

synckit 0.12 reports worker failures and exits instead, so ESLint now
fails fast with a clear `Cannot find package 'prettier'` error.
@JounQin
JounQin force-pushed the fix/bump-synckit-0.12.3 branch from 2434b72 to b1d04ea Compare October 13, 2026 10:58
@JounQin
JounQin merged commit 1b7c433 into main Oct 13, 2026
21 checks passed
@JounQin
JounQin deleted the fix/bump-synckit-0.12.3 branch October 13, 2026 11:06
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Oct 17, 2026
| datasource | package                | from  | to    |
| ---------- | ---------------------- | ----- | ----- |
| npm        | eslint-plugin-prettier | 5.5.6 | 5.5.7 |


## [v5.5.7](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#557)

##### Patch Changes

- [#796](prettier/eslint-plugin-prettier#796) [`7e53ecd`](prettier/eslint-plugin-prettier@7e53ecd) Thanks [@OskarEichler](https://github.com/OskarEichler)! - Fix fallback diagnostic locations for all supported line endings.

- [#805](prettier/eslint-plugin-prettier#805) [`1b7c433`](prettier/eslint-plugin-prettier@1b7c433) Thanks [@JounQin](https://github.com/JounQin)! - Report a clear error when the sync worker fails to load, so a missing `prettier` dependency now fails fast with `Cannot find package 'prettier'` instead of hanging ESLint indefinitely.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Oct 22, 2026
| datasource | package                | from  | to    |
| ---------- | ---------------------- | ----- | ----- |
| npm        | eslint-plugin-prettier | 5.5.6 | 5.5.7 |


## [v5.5.7](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#557)

##### Patch Changes

- [#796](prettier/eslint-plugin-prettier#796) [`7e53ecd`](prettier/eslint-plugin-prettier@7e53ecd) Thanks [@OskarEichler](https://github.com/OskarEichler)! - Fix fallback diagnostic locations for all supported line endings.

- [#805](prettier/eslint-plugin-prettier#805) [`1b7c433`](prettier/eslint-plugin-prettier@1b7c433) Thanks [@JounQin](https://github.com/JounQin)! - Report a clear error when the sync worker fails to load, so a missing `prettier` dependency now fails fast with `Cannot find package 'prettier'` instead of hanging ESLint indefinitely.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Oct 24, 2026
| datasource | package                | from  | to    |
| ---------- | ---------------------- | ----- | ----- |
| npm        | eslint-plugin-prettier | 5.5.6 | 5.5.7 |


## [v5.5.7](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#557)

##### Patch Changes

- [#796](prettier/eslint-plugin-prettier#796) [`7e53ecd`](prettier/eslint-plugin-prettier@7e53ecd) Thanks [@OskarEichler](https://github.com/OskarEichler)! - Fix fallback diagnostic locations for all supported line endings.

- [#805](prettier/eslint-plugin-prettier#805) [`1b7c433`](prettier/eslint-plugin-prettier@1b7c433) Thanks [@JounQin](https://github.com/JounQin)! - Report a clear error when the sync worker fails to load, so a missing `prettier` dependency now fails fast with `Cannot find package 'prettier'` instead of hanging ESLint indefinitely.
renovate Bot added a commit to NiGhTTraX/eslint-config that referenced this pull request Oct 27, 2026
| datasource | package                | from  | to    |
| ---------- | ---------------------- | ----- | ----- |
| npm        | eslint-plugin-prettier | 5.5.6 | 5.5.7 |


## [v5.5.7](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#557)

##### Patch Changes

- [#796](prettier/eslint-plugin-prettier#796) [`7e53ecd`](prettier/eslint-plugin-prettier@7e53ecd) Thanks [@OskarEichler](https://github.com/OskarEichler)! - Fix fallback diagnostic locations for all supported line endings.

- [#805](prettier/eslint-plugin-prettier#805) [`1b7c433`](prettier/eslint-plugin-prettier@1b7c433) Thanks [@JounQin](https://github.com/JounQin)! - Report a clear error when the sync worker fails to load, so a missing `prettier` dependency now fails fast with `Cannot find package 'prettier'` instead of hanging ESLint indefinitely.
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.

ESLint hangs indefinitely when prettier is not installed (instead of throwing an error) Detect missing prettier dependency

2 participants