Skip to content

Enable TypeScript 7 RC builds while preserving TypeScript 6 compatibility#2100

Merged
pethers merged 3 commits into
mainfrom
copilot/run-typescript-7-rc-side-by-side
Jul 8, 2026
Merged

Enable TypeScript 7 RC builds while preserving TypeScript 6 compatibility#2100
pethers merged 3 commits into
mainfrom
copilot/run-typescript-7-rc-side-by-side

Conversation

Copilot AI commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

TypeScript 7 RC introduces a new compiler binary and stricter configuration semantics, which makes direct adoption risky when existing tooling still depends on TypeScript 6. This change introduces a side-by-side setup so the project can compile with TypeScript 7 RC while preserving a TypeScript 6-compatible entrypoint for other consumers.

  • What changed

    • Switched the project to a side-by-side TypeScript setup using @typescript/typescript6 for the default typescript package and a dedicated typescript-7 alias for the RC compiler.
    • Routed the projectโ€™s TypeScript-driven scripts to the TypeScript 7 RC binary, while keeping tsc6 available for TypeScript 6-based tooling.
    • Updated the TypeScript configuration to match TypeScript 7โ€™s stricter path-resolution rules by removing the legacy baseUrl pattern and using explicit relative path mappings.
  • Example

{
  "devDependencies": {
    "typescript": "npm:@typescript/typescript6@^6.0.0",
    "typescript-7": "npm:typescript@rc"
  }
}
  • Impact
    • The repository can adopt TypeScript 7 RC now without breaking compatibility with tools or workflows that still rely on TypeScript 6.

Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Dependency Review

โœ… No vulnerabilities or license issues or OpenSSF Scorecard issues found.

OpenSSF Scorecard

Scorecard details
PackageVersionScoreDetails
npm/@typescript/old 6.0.3 UnknownUnknown
npm/@typescript/typescript-aix-ppc64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-darwin-arm64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-darwin-x64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-freebsd-arm64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-freebsd-x64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-arm 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-arm64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-loong64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-mips64el 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-ppc64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-riscv64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-s390x 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-linux-x64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-netbsd-arm64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-netbsd-x64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-openbsd-arm64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-openbsd-x64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-sunos-x64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-win32-arm64 7.0.1-rc UnknownUnknown
npm/@typescript/typescript-win32-x64 7.0.1-rc UnknownUnknown
npm/typescript 6.0.2 ๐ŸŸข 7.9
Details
CheckScoreReason
Code-Review๐ŸŸข 10all changesets reviewed
Maintained๐ŸŸข 1021 commit(s) and 16 issue activity found in the last 90 days -- score normalized to 10
Dependency-Update-Tool๐ŸŸข 10update tool detected
Packagingโš ๏ธ -1packaging workflow not detected
Security-Policy๐ŸŸข 10security policy file detected
Token-Permissions๐ŸŸข 9detected GitHub workflow tokens with excessive permissions
Dangerous-Workflow๐ŸŸข 10no dangerous workflow patterns detected
CII-Best-Practicesโš ๏ธ 0no effort to earn an OpenSSF best practices badge detected
Signed-Releasesโš ๏ธ 0Project has not signed or included provenance with any releases.
Vulnerabilitiesโš ๏ธ 19 existing vulnerabilities detected
Branch-Protectionโš ๏ธ -1internal error: error during GetBranch(release-5.9): error during branchesHandler.query: internal error: githubv4.Query: Resource not accessible by integration
License๐ŸŸข 10license file detected
Binary-Artifacts๐ŸŸข 10no binaries found in the repo
Pinned-Dependencies๐ŸŸข 7dependency not pinned by hash detected -- score normalized to 7
SAST๐ŸŸข 10SAST tool is run on all commits
Fuzzing๐ŸŸข 10project is fuzzed
CI-Tests๐ŸŸข 1030 out of 30 merged PRs checked by a CI test -- score normalized to 10
Contributors๐ŸŸข 10project has 38 contributing companies or organizations
npm/typescript-7 7.0.1-rc UnknownUnknown

Scanned Files

  • package-lock.json

@github-actions github-actions Bot added dependencies Dependency updates infrastructure CI/CD and build infrastructure config Configuration changes labels Jul 8, 2026
@pethers pethers marked this pull request as ready for review July 8, 2026 11:04
@pethers pethers self-requested a review as a code owner July 8, 2026 11:04
Copilot AI review requested due to automatic review settings July 8, 2026 11:04
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

๐Ÿ“ธ Automated UI Screenshots

๐Ÿ“‹ Screenshots Captured (8)

# Screenshot
1 01-splash-screen.png - 01 splash screen.png
2 02-intro-screen-menu.png - 02 intro screen menu.png
3 03-intro-screen-archetype-selector.png - 03 intro screen archetype selector.png
4 04-controls-screen.png - 04 controls screen.png
5 05-philosophy-screen.png - 05 philosophy screen.png
6 06-training-screen.png - 06 training screen.png
7 07-combat-screen-practice.png - 07 combat screen practice.png
8 08-combat-screen-versus.png - 08 combat screen versus.png

๐Ÿ“ฆ Download Screenshots

๐Ÿ“ฅ Download all screenshots from workflow artifacts

Screenshots are preserved as workflow artifacts for 30 days.


๐Ÿค– Generated by Playwright automation

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

Pull request overview

Enables a side-by-side TypeScript toolchain so the repo can type-check/build with a TypeScript 7 RC compiler while retaining a TypeScript 6-compatible typescript dependency for consumers and tooling.

Changes:

  • Updated package.json scripts to run project type-check/build steps via a typescript-7 compiler entrypoint.
  • Switched devDependencies to a dual-compiler setup (typescript via @typescript/typescript6 and typescript-7 via an npm alias).
  • Adjusted TS path mappings in tsconfig.json and tsconfig.lib.json to use explicit relative targets.

Reviewed changes

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

File Description
tsconfig.lib.json Updates path mappings for library compilation configuration.
tsconfig.json Updates path mappings for the main project TS configuration.
package.json Introduces tsc7 script and routes build/check scripts to the TS 7 RC compiler; adds dual TypeScript deps.
package-lock.json Locks the new dual-compiler dependency graph (TS6 wrapper + TS7 RC + platform packages).

Comment thread tsconfig.lib.json
Comment on lines 25 to 26
"types": ["node"],
"baseUrl": ".",
"paths": {
Comment thread package.json Outdated
Comment on lines +242 to +243
"typescript": "npm:@typescript/typescript6@^6.0.2",
"typescript-7": "npm:typescript@^7.0.1-rc",
Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
@github-actions github-actions Bot added the documentation Documentation updates label Jul 8, 2026
Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

๐Ÿ“ธ Automated UI Screenshots

๐Ÿ“‹ Screenshots Captured (8)

# Screenshot
1 01-splash-screen.png - 01 splash screen.png
2 02-intro-screen-menu.png - 02 intro screen menu.png
3 03-intro-screen-archetype-selector.png - 03 intro screen archetype selector.png
4 04-controls-screen.png - 04 controls screen.png
5 05-philosophy-screen.png - 05 philosophy screen.png
6 06-training-screen.png - 06 training screen.png
7 07-combat-screen-practice.png - 07 combat screen practice.png
8 08-combat-screen-versus.png - 08 combat screen versus.png

๐Ÿ“ฆ Download Screenshots

๐Ÿ“ฅ Download all screenshots from workflow artifacts

Screenshots are preserved as workflow artifacts for 30 days.


๐Ÿค– Generated by Playwright automation

@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

๐Ÿ“ธ Automated UI Screenshots

๐Ÿ“‹ Screenshots Captured (8)

# Screenshot
1 01-splash-screen.png - 01 splash screen.png
2 02-intro-screen-menu.png - 02 intro screen menu.png
3 03-intro-screen-archetype-selector.png - 03 intro screen archetype selector.png
4 04-controls-screen.png - 04 controls screen.png
5 05-philosophy-screen.png - 05 philosophy screen.png
6 06-training-screen.png - 06 training screen.png
7 07-combat-screen-practice.png - 07 combat screen practice.png
8 08-combat-screen-versus.png - 08 combat screen versus.png

๐Ÿ“ฆ Download Screenshots

๐Ÿ“ฅ Download all screenshots from workflow artifacts

Screenshots are preserved as workflow artifacts for 30 days.


๐Ÿค– Generated by Playwright automation

@pethers pethers merged commit 883bfc2 into main Jul 8, 2026
13 checks passed
@pethers pethers deleted the copilot/run-typescript-7-rc-side-by-side branch July 8, 2026 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

config Configuration changes dependencies Dependency updates documentation Documentation updates infrastructure CI/CD and build infrastructure

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants