Skip to content

ci: keep typescript-classic on the TypeScript 6 API - #2071

Merged
yamcodes merged 1 commit into
v1from
cursor/keep-typescript-classic-on-6-f7d2
Oct 10, 2026
Merged

yamcodes merged 1 commit into
v1from
cursor/keep-typescript-classic-on-6-f7d2

Conversation

@yamcodes

@yamcodes yamcodes commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Related to #1996. Does not close it. That issue stays blocked until @ark/attest and dpdm work on TypeScript 7.

Why #2055 fails

test (lts) and test (latest) both die in Vitest global setup:

TypeError: ts.parseConfigFileTextToJson is not a function
  at instantiateTsconfigFromPath
    node_modules/@ark/attest/out/cache/ts.js
  at packages/core/test/setup-attest.ts

#2055 bumps typescript-classic from npm:[email protected] to npm:[email protected]. #1996 keeps that alias on purpose: @ark/attest and dpdm still import the classic compiler, and TypeScript 7 does not export parseConfigFileTextToJson. Catalog typescript is already 7.0.2.

Change

Renovate rule matches dep name typescript-classic and sets allowedVersions to <7.0.0. Patch updates on 6.x still apply. Catalog typescript is untouched.

After this lands, close #2055 (or let the next Renovate run close it). Do not merge it.

Validation

biome check .github/renovate.json

Open in Web Open in Cursor 

Renovate #2055 bumps the npm alias to [email protected]. TypeScript 7
does not export parseConfigFileTextToJson, so @ark/attest crashes
vitest setup. Allow 6.x patches and block 7+.

Co-authored-by: Yam Borodetsky <[email protected]>
@changeset-bot

changeset-bot Bot commented Oct 10, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 433a475

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

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

@github-actions github-actions Bot added the github actions Pull requests that update GitHub Actions code label Oct 10, 2026

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

✅ No new issues found.

Reviewed changes

  • Pin typescript-classic to the TypeScript 6 API — adds a packageRules entry keyed on matchDepNames: ["typescript-classic"] with allowedVersions: "<7.0.0", scoping the constraint to the npm:[email protected] alias so Renovate cannot bump it to native TypeScript 7 (which drops parseConfigFileTextToJson and breaks @ark/attest / dpdm and the Vitest setup).

matchDepNames is the right key here: the alias's depName is typescript-classic while its packageName is typescript, so a matchPackageNames: ["typescript"] rule would also have pinned the catalog typescript and contradicted the intent. The constraint leaves 6.x patch/minor updates in play and correctly filters out 7.0.0+.

ℹ️ allowedVersions is a silent pin if the version ever drifts past 7

allowedVersions only filters releases newer than the current version, so if typescript-classic is ever manually moved to a 7.x, no candidate satisfies <7.0.0 and Renovate simply stops opening PRs for it, with no warning. Not triggered by this change — 6.0.3 is in range — just worth knowing this is a quiet pin rather than a loud one.

Technical details
# allowedVersions silent-drift behavior

## Affected sites
- `.github/renovate.json:134-138` — the new `typescript-classic` packageRule.

## Required outcome
- None required for this PR. If a guard against drift is wanted later, a companion rule matching on
  `matchCurrentVersion` (or `rollbackPrs: true`) would surface a pin that has left the allowed range.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏

@yamcodes
yamcodes merged commit 8fca159 into v1 Oct 10, 2026
17 checks passed
@yamcodes
yamcodes deleted the cursor/keep-typescript-classic-on-6-f7d2 branch October 10, 2026 04:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants