build: Yarn 4.18 and TypeScript 7 stable - #4322
Merged
Merged
Conversation
|
All alerts resolved. Learn more about Socket for GitHub. This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored. |
Note that like previously, TypeScript 6 is still used as API provider until TypeScript 7 will be adopted by neccesary tooling.
SpacingBat3
force-pushed
the
chore/typescript7
branch
from
July 17, 2026 00:35
bacd315 to
4d88c5d
Compare
Member
|
Thanks for this @SpacingBat3!! |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
erickzhao
approved these changes
Aug 17, 2026
native-preview to stable TSv7
georgexu99
approved these changes
Aug 17, 2026
VerteDinde
approved these changes
Aug 17, 2026
Yarn 4.18 enables `npmMinimalAgeGate` by default (1440 minutes). The Verdaccio harness publishes the monorepo to the local registry seconds before the e2e suites install it, so every local package came back as `YN0016: All versions satisfying "^8.0.0-alpha.10" are quarantined`, deterministically failing the yarn variants of the template tests on all three platforms. The npm and pnpm variants were unaffected. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
`create-electron-app` is the only publishable workspace in this repo that the existing `@electron-forge/*` glob does not cover, so it stays quarantined for a week after every release. The fuses fixture config mirrors the root one but never picked up `@electron-internal/*`. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Yarn 4.18 disables install scripts by default (`enableScripts: false`), so the pinned electron@41 never ran its `postinstall` in the generated apps and `electron-forge start` failed with "Electron failed to install correctly" for every `yarn` template variant. Electron 42+ downloads the binary on demand instead of from an install script, so pinning past 42 makes the tests independent of Yarn's script policy. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
The template e2e tests install into app directories created under `os.tmpdir()`, which are outside this repository and so never pick up the root `.yarnrc.yml`. To stop Yarn's default gate from quarantining the `@electron-forge/*` packages we publish to Verdaccio seconds earlier, we were switching the gate off for the whole test run, which also exempted every third-party package the templates install. Mirror the root config through the environment instead: keep the 1-week gate and preapprove only our own packages, so a third-party package published in the last week is still refused. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Yarn 4.18 added `approvedGitRepositories`, a glob allowlist checked before Yarn hits a remote to resolve or fetch a dependency over the git protocol. It defaults to an empty list, which refuses every git dependency, and the 4.18 bump set it to `**` to preserve the old behaviour. We don't have a single git-protocol resolution in the lockfile, so take the default instead of blanket-approving every host. Anyone who does need one can add the specific repository. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Member
|
Hey all, I fixed a bunch of CI issues as well as re-applied the
As a follow-up, I realized that this wasn't set up properly for Verdaccio tests. I'll add it |
georgexu99
approved these changes
Aug 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Acknowledgements
The changes are appropriately documented (if applicable).The changes have sufficient test coverage (if applicable).The test suite passes successfully on my local machine (if applicable).Description
A very simple change set, to bump TypeScript to v7 (stable branch) while still keeping v6 for API compatibility (e.g. for TypeDoc, also see TypeStrong/typedoc#3098) and relevant packages in
peerDependenciesrelationship.The transition has been done according to recommendations in Typescript 7.0 announcement blog post.
This is only applicable to
nextIMHO asmainstill had no migration towards TSGO, so I assume this is not to be backported.