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
fix(localize): install @angular/localize
in devDependencies
by default
#38680
Conversation
…fault Previously this package was installed in the default `dependencies` section of `package.json`, but this meant that its own dependencies are treated as dependencies of the main project: Babel, for example. Generally, $localize` is not used at runtime - it is compiled out by the translation tooling, so there is no need for it to be a full dependency. In fact, even if it is used at runtime, the package itself is only used at dev-time since the runtime bits will be bundled into a distributable. So putting this package in `devDependencies` would only prevent libraries from bringing the package into application projects that used them. This is probably good in itself, since it should be up to the downstream project to decide if it wants to include `@angular/localize` at runtime. This commit changes the default location of the package to be the `devDependencies` section, but gives an option `useAtRuntime` to choose otherwise. Fixes angular#38329
9d211f5
to
2f17a21
Compare
2f17a21
to
4ad5b3b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, one small NIT re the noop method.
…fault (#38680) Previously this package was installed in the default `dependencies` section of `package.json`, but this meant that its own dependencies are treated as dependencies of the main project: Babel, for example. Generally, $localize` is not used at runtime - it is compiled out by the translation tooling, so there is no need for it to be a full dependency. In fact, even if it is used at runtime, the package itself is only used at dev-time since the runtime bits will be bundled into a distributable. So putting this package in `devDependencies` would only prevent libraries from bringing the package into application projects that used them. This is probably good in itself, since it should be up to the downstream project to decide if it wants to include `@angular/localize` at runtime. This commit changes the default location of the package to be the `devDependencies` section, but gives an option `useAtRuntime` to choose otherwise. Fixes #38329 PR Close #38680
…fault (angular#38680) Previously this package was installed in the default `dependencies` section of `package.json`, but this meant that its own dependencies are treated as dependencies of the main project: Babel, for example. Generally, $localize` is not used at runtime - it is compiled out by the translation tooling, so there is no need for it to be a full dependency. In fact, even if it is used at runtime, the package itself is only used at dev-time since the runtime bits will be bundled into a distributable. So putting this package in `devDependencies` would only prevent libraries from bringing the package into application projects that used them. This is probably good in itself, since it should be up to the downstream project to decide if it wants to include `@angular/localize` at runtime. This commit changes the default location of the package to be the `devDependencies` section, but gives an option `useAtRuntime` to choose otherwise. Fixes angular#38329 PR Close angular#38680
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
Previously this package was installed in the default
dependencies
sectionof
package.json
, but this meant that its dependencies are treated asdependencies of the main project - Babel, for example.
Generally, $localize` is not used at runtime - it is compiled out by the
translation tooling, so there is no need for it to be a full dependency.
This commit changes the default location of the package to be the
devDependencies
section, but gives the user a prompt to chooseotherwise.
Fixes #38329