angular-cn/packages/core/schematics/migrations/missing-injectable
Paul Gschwendtner 9f2ae5d6ff feat(ivy): introduce missing-injectable migration for google3 (#30956)
Introduces a new migration schematic for adding the "@Injectable()"
decorator to provider classes which are currently not migrated. Previously
in ViewEngine, classes which are declared as providers sometimes don't
require the "@Injectable()" decorator
(e.g. https://stackblitz.com/edit/angular-hpo7gw)

With Ivy, provider classes need to be explicitly decorated with
the "@Injectable()" decorator if they are declared as providers
of a given module. This commit introduces a migration schematic
which automatically adds the explicit decorator to places where
the decorator is currently missing.

The migration logic is designed in a CLI devkit and TSlint agnostic
way so that we can also have this migration run as part of a public
CLI migration w/ `ng update`. This will be handled as part of a follow-up to reiterate on console output etc.

Resolves FW-1371

PR Close #30956
2019-07-23 15:52:40 -07:00
..
google3 feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00
BUILD.bazel feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00
import_manager.ts feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00
index.ts feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00
module_collector.ts feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00
transform.ts feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00
update_recorder.ts feat(ivy): introduce missing-injectable migration for google3 (#30956) 2019-07-23 15:52:40 -07:00