Skip to content

build: prepare framework peer dependency and migration collection for v14 #24492

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Feb 28, 2022

Conversation

devversion
Copy link
Member

See individual commits

… v14

Prepares the framework peer dependency and migration collection for
v14, ensuring the release checks will not fail when we get closer
to publishing the first RC.
The chalk usages in the `tools/` folder seems to fail at runtime
given the `esModuleInterop` flag being enabled for the tools folder.

We need to switch the namespace imports to default imports to work
with the interop, and to follow the TS language-service recommendation
(which actually proposes switching these imports to `import c from 'chalk'`)

We should likely turn on the esmoduleinterop flag for the scripts folder as
well to have consistent imports, and to prepare for future ESM consumption
as the ecosystem moves forward.
@devversion devversion added merge safe target: major This PR is targeted for the next major release labels Feb 28, 2022
@devversion devversion requested a review from crisbeto February 28, 2022 14:42
@devversion devversion requested review from a team and andrewseguin as code owners February 28, 2022 14:42
Copy link
Member

@crisbeto crisbeto left a comment

Choose a reason for hiding this comment

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

LGTM

@andrewseguin andrewseguin added the action: merge The PR is ready for merge by the caretaker label Feb 28, 2022
@devversion
Copy link
Member Author

devversion commented Feb 28, 2022

@crisbeto / @andrewseguin - I pushed another commit if you could please review that one. Basically everything except for the (still CommonJS) schematics would consistently use the ES module interop in this repo (similar to how it's done in FW)

Similar to the `/tsconfig.json` and the `tools/tsconfig.json`, we should
enable the `esModuleInterop` from TypeScript in the `scripts/` directory.

This is necessary to ensure that scripts part of both compilations. e.g. when
a file in `scripts/` imports from `tools/` are compatible without needing
two coordinated compilations (using e.g TS project references..). In general
enabling the interop means more consistency in the repo.

Then only remaining exception are the schematics which we can clean-up in the
future when we ship them as ES modules.
@andrewseguin andrewseguin merged commit 0f8d529 into angular:master Feb 28, 2022
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Mar 31, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker target: major This PR is targeted for the next major release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants