Skip to content

Update dependency prettier to v3.9.4 - #4029

Merged
amitsingh-007 merged 1 commit into
renovate-updatesfrom
renovate/prettier-3.x
Jul 8, 2026
Merged

amitsingh-007 merged 1 commit into
renovate-updatesfrom
renovate/prettier-3.x

Conversation

@amitsingh-007

@amitsingh-007 amitsingh-007 commented Jul 8, 2026 •

Copy link
Copy Markdown
Owner

This PR contains the following updates:

Package Change Age Confidence
prettier (source) 3.8.3 → 3.9.4 age confidence

Release Notes

prettier/prettier (prettier)

v3.9.4

Compare Source

diff

Angular: Format @content(name) -> @content (name) to align with other block syntax (#​19499 by @​fisker)
<!-- Input -->
<FancyButton [label]="title">
  @&#8203;content (icon) {
    <span>Icon!</span>
  }
  @&#8203;content (description) {
    <span>Description text</span>
  }
  <span>Other children</span>
</FancyButton>

<!-- Prettier 3.9.3 -->
<FancyButton [label]="title">
  @&#8203;content(icon) {
    <span>Icon!</span>
  }
  @&#8203;content(description) {
    <span>Description text</span>
  }
  <span>Other children</span>
</FancyButton>

<!-- Prettier 3.9.4 -->
<FancyButton [label]="title">
  @&#8203;content (icon) {
    <span>Icon!</span>
  }
  @&#8203;content (description) {
    <span>Description text</span>
  }
  <span>Other children</span>
</FancyButton>

v3.9.3

Compare Source

diff

Markdown: Fix unexpected removal of characters in liquid syntax (#​19489 by @​seiyab)
// Input
<!-- Input -->
{{ page.title
}} text

<!-- Prettier 3.9.1 -->
{{ page.title
 text

<!-- Prettier 3.9.3 -->
{{ page.title
}} text
TypeScript: Allow decorators to be used with declare on class fields (#​19492 by @​evoactivity)

Extensively used within the Ember ecosystem, decorators with declare on class fields will ignore the babel parser error and allow Prettier to format the code without breaking it.

// Input
export default class ProjectStatusComponent extends Component<ProjectStatusSig> {
  @&#8203;service declare server: ServerService;
}

// Prettier 3.9.1
// SyntaxError: Decorators can't be used with a declare field. (2:3)
//  1 | export default class ProjectStatusComponent extends Component<ProjectStatusSig> {
//> 2 |   @&#8203;service declare server: ServerService;
//    |   ^
//  3 | }

// Prettier 3.9.3
export default class ProjectStatusComponent extends Component<ProjectStatusSig> {
  @&#8203;service declare server: ServerService;
}

v3.9.2

Compare Source

v3.9.1

Compare Source

diff

CLI: Fix ignored file has been cached incorrectly (#​19483 by @​kovsu)

Bug details #​18016

v3.9.0

Compare Source

diff

🔗 Release Notes

v3.8.5

Compare Source

diff

Flow: Support readonly as a variance annotation (#​19022 by @​marcoww6)

Flow now accepts readonly as a property variance annotation, equivalent to + (covariant/read-only).

// Input
type T = {
  readonly foo: string,
};

// Prettier 3.8.4
SyntaxError

// Prettier 3.8.5
type T = {
  readonly foo: string,
};

v3.8.4

Compare Source

diff

Markdown: Fix blank lines between list items and nested sub-lists being removed in Markdown/MDX (#​17746 by @​byplayer)

Prettier was removing blank lines between list items and their nested sub-lists, converting loose lists into tight lists and changing their semantic meaning.

<!-- Input -->
- a

  - b

- c

  - d

<!-- Prettier 3.8.3 -->
- a
  - b
- c
  - d

<!-- Prettier 3.8.4 -->
- a

  - b

- c

  - d

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, on day 1 of the month (* 0-3 1 * *)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

Greptile Summary

This PR bumps prettier from 3.8.3 to 3.9.4 via the pnpm workspace catalog, updating both pnpm-workspace.yaml and the lock file accordingly.

  • The version change picks up several bug fixes across the 3.8.x and 3.9.x series, including Markdown list-item blank-line preservation, TypeScript decorator+declare support, and a CLI cache-correctness fix.
  • Two unrelated deprecation notices (stream-to-promise and tsconfck) appear in the lock-file diff because pnpm annotated them during the re-resolution; they are not introduced by this change.

Confidence Score: 5/5

Routine formatter-only version bump with no logic changes; safe to merge.

The change is limited to updating the prettier version in the workspace catalog and regenerating the lock file. No application logic, configuration, or runtime dependencies are affected. The new version is a patch/minor series of bug fixes with no breaking changes documented in the release notes.

No files require special attention.

Reviews (1): Last reviewed commit: "Update dependency prettier to v3.9.4" | Re-trigger Greptile

@amitsingh-007
amitsingh-007 enabled auto-merge (squash) July 8, 2026 16:28
@amitsingh-007
amitsingh-007 merged commit aa2086a into renovate-updates Jul 8, 2026
1 check passed
@amitsingh-007
amitsingh-007 deleted the renovate/prettier-3.x branch July 8, 2026 16:29
@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Bump Prettier to v3.9.4 in pnpm workspace catalog

⚙️ Configuration changes 🕐 10-20 Minutes

Grey Divider

AI Description

• Bump Prettier from 3.8.3 to 3.9.4 via the pnpm catalog.
• Update pnpm lockfile entries/snapshots for the new Prettier version.
• Record newly surfaced deprecation metadata for transitive dependencies in the lockfile.
Diagram

graph TD
  W["pnpm-workspace.yaml (catalog)"] --> L["pnpm-lock.yaml"] --> P{{"prettier@3.9.4"}} --> F["Format/CI scripts"]
Loading
High-Level Assessment

This is the standard, low-risk approach for a Renovate-driven toolchain bump: update the workspace catalog version and commit the regenerated lockfile. Alternatives (e.g., pinning via a separate tooling package or not committing lock changes) would add process complexity without clear benefit.

Files changed (2) +13 / -4

Other (2) +13 / -4
pnpm-lock.yamlUpdate lockfile resolution for Prettier 3.9.4 +12/-3

Update lockfile resolution for Prettier 3.9.4

• Updates the resolved Prettier version from 3.8.3 to 3.9.4 (including integrity/snapshot entries). Also records deprecation metadata newly present on some transitive packages.

pnpm-lock.yaml

pnpm-workspace.yamlBump Prettier version in the shared pnpm catalog +1/-1

Bump Prettier version in the shared pnpm catalog

• Updates the workspace dependency catalog entry for Prettier from 3.8.3 to 3.9.4 so all importers inherit the new formatter version.

pnpm-workspace.yaml

@qodo-code-review

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (1) 📘 Rule violations (0) 📜 Skill insights (0)

Context used
✅ Compliance rules (platform): 22 rules

Grey Divider


Informational

1. XO uses old Prettier 🐞 Bug ⚙ Maintainability
Description
The workspace catalog is updated to Prettier 3.9.4, but pnpm lint runs XO which still depends on
and resolves prettier@3.8.3, so the lint/auto-fix formatting behavior is not actually upgraded.
This also leaves two different Prettier versions installed (3.9.4 at the workspace level and 3.8.3
under XO), increasing the risk of formatting churn between tools.
Code

pnpm-workspace.yaml[56]

+  prettier: 3.9.4
Relevance

⭐ Low

Team often rejects expanding dependency-bump PR scope (e.g., extra upgrades/deprecation fixes
rejected in #3812).

PR-#3812
PR-#3951

ⓘ Recommendations generated based on similar findings in past PRs

Evidence
The PR bumps the workspace-level Prettier version, but XO is the configured lint tool and it enables
Prettier integration; the lockfile shows XO still depends on prettier@3.8.3, meaning the XO-driven
formatting path remains on 3.8.3 despite the catalog bump.

pnpm-workspace.yaml[15-60]
package.json[7-18]
xo.config.ts[5-10]
pnpm-lock.yaml[14763-14795]
pnpm-lock.yaml[6167-6180]
contributing.md[20-25]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
The PR bumps the workspace Prettier version to 3.9.4, but XO (used by `pnpm lint`) still pulls in and uses `prettier@3.8.3` via its own dependency graph. As a result, lint/auto-fix formatting remains on 3.8.3 and the repo carries two Prettier versions.

## Issue Context
- `pnpm lint` runs XO.
- XO config enables `prettier: true`, which makes XO rely on its Prettier integration.
- The lockfile shows XO depends on `prettier: 3.8.3`.

## Fix Focus Areas
- Add a pnpm override to force XO’s `prettier` dependency to 3.9.4 (or upgrade `xo` to a version that depends on 3.9.x).
- Ensure the lockfile is regenerated so XO resolves Prettier 3.9.4.

### Suggested approach
1. In the root `package.json`, add:
  - `"pnpm": { "overrides": { "xo>prettier": "3.9.4" } }`
  (Optionally also override `eslint-plugin-prettier>prettier` if needed.)
2. Re-run `pnpm install` to update `pnpm-lock.yaml`.

## Fix Focus Areas (exact references)
- package.json[1-34]
- pnpm-lock.yaml[14763-14795]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

Qodo Logo

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