Is Angular Ivy ready

Yes, since version 9!­čÄë

Overall status
93.46%

143

Completed

10

Pending

Useful links
Ivy status

1. Implementation Status

1.1. `@angular/compiler-cli` changes

1.1.1. `ngtsc` TSC compiler transformer

83.33%

5 features completed

5 completed

1 features pending

1 pending

Implemented
Basic setup of the transformer into `tsc`
Implemented
Can read STORING_METADATA_IN_D.TS from `.d.ts` (see: [STORING_METADATA_IN_D.TS.md](./STORING_METADATA_IN_D.TS.md))
Implemented
Detect decorators and convert them to the `defineXXX` method using the `__Compiler` in `@angular/compiler`.
Implemented
Encode selectors into `.d.ts` file.
Implemented
support `extends` for `@Pipe`, `@Component`, `@Directive` and `@NgModule`.
Not implemented
Documentation

1.1.2. `ngcc` Angular `node_module` compatibility compiler

50%

2 features completed

2 completed

2 features pending

2 pending

Implemented
Basic setup of stand alone executable
Implemented
Rewrite existing code by interpreting the associated STORING_METADATA_IN_D.TS
Not implemented
Integration with WebPack (cli)
Not implemented
Documentation

1.2. `@angular/compiler` changes

83.33%

5 features completed

5 completed

1 features pending

1 pending

Implemented
Component compilation: Translates `@Component` => `╔Á╔ÁdefineComponent`
Implemented
`PipeCompiler`: Translates `@Pipe` => `╔Á╔ÁdefinePipe`
Implemented
`DirectiveCompiler`: Translates `@Directive` => `╔Á╔ÁdefineDirective`
Implemented
`InjectableCompiler`: Translates `@Injectable` => `╔Á╔ÁdefineInjectable`
Implemented
`NgModuleCompiler`: Translates `@NgModule` => `╔Á╔ÁdefineInjector` (and `╔Á╔ÁdefineNgModule` only in jit)
Not implemented
Documentation

1.3. `@angular/core` changes

100%

2 features completed

2 completed

0 features pending

0 pending

Implemented
`@angular/compiler` can patch itself onto:
Implemented
`ResourceLoader.resolved: Promise<>` Returns true if all `templateUrl`s and `styleUrl` have been resolved and application is ready to be bootstrapped.

2. Testing / Debugging

100%

1 features completed

1 completed

0 features pending

0 pending

Implemented
in debug mode publish components into DOM nodes for easier debugging.

3. Crosscutting

3.1. Decorators

85.71%

6 features completed

6 completed

1 features pending

1 pending

Annotation `defineXXX()` Run time Spec Compiler `@Component`
Implemented
`╔Á╔ÁdefineComponent()`
Implemented
Implemented
Implemented
`@Directive`
Implemented
`╔Á╔ÁdefineDirective()`
Implemented
Implemented
Implemented
`@Directive`
Implemented
`╔Á╔ÁdefineBase()`
Implemented
Implemented
Implemented
`@Pipe`
Implemented
`╔Á╔ÁdefinePipe()`
Implemented
Implemented
Implemented
`@Injectable`
Implemented
`╔Á╔ÁdefineInjectable()`
Implemented
Implemented
Implemented
`@NgModule`
Implemented
`╔Á╔ÁdefineInjector()`
Implemented
Implemented
Implemented
`@ConfigureInjector`
Implemented
`╔Á╔ÁdefineInjector()`
Not implemented
Not implemented
Not implemented
Implemented
`╔Á╔ÁdefineComponent()`
Implemented
Run time
Implemented
Spec
Implemented
Compiler
Implemented
`╔Á╔ÁdefineDirective()`
Implemented
Run time
Implemented
Spec
Implemented
Compiler
Implemented
`╔Á╔ÁdefineBase()`
Implemented
Run time
Implemented
Spec
Implemented
Compiler
Implemented
`╔Á╔ÁdefinePipe()`
Implemented
Run time
Implemented
Spec
Implemented
Compiler
Implemented
`╔Á╔ÁdefineInjectable()`
Implemented
Run time
Implemented
Spec
Implemented
Compiler
Implemented
`╔Á╔ÁdefineInjector()`
Implemented
Run time
Implemented
Spec
Implemented
Compiler
Implemented
`╔Á╔ÁdefineInjector()`
Not implemented
Run time
Not implemented
Spec
Not implemented
Compiler

3.2. Component Composition

100%

4 features completed

4 completed

0 features pending

0 pending

Feature Runtime Spec Compiler creation reordering based on injection
Implemented
Implemented
Implemented
`class CompA extends CompB {}`
Implemented
Implemented
Implemented
`class CompA extends CompB { @Input }`
Implemented
Implemented
Implemented
`class CompA extends CompB { @Output }`
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler

3.3. Change Detection

100%

9 features completed

9 completed

0 features pending

0 pending

Feature Runtime `markDirty()`
Implemented
`detectChanges()`
Implemented
`tick()`
Implemented
`attach()`
Implemented
`detach()`
Implemented
`ON_PUSH`
Implemented
`ALWAYS`
Implemented
`DIRTY`
Implemented
`ATTACHED`
Implemented
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime

3.4. Bootstrap API

100%

3 features completed

3 completed

0 features pending

0 pending

Feature Runtime `renderComponent()`
Implemented
`getHostElement()`
Implemented
`createInjector()`
Implemented
Implemented
Runtime
Implemented
Runtime
Implemented
Runtime

3.5. Template Compiler

3.5.1. Template Syntax

95.83%

23 features completed

23 completed

1 features pending

1 pending

Feature Runtime Spec Compiler `<div>`
Implemented
Implemented
Implemented
`<div>{{exp}}</div>`
Implemented
Implemented
Implemented
`<div attr=value>`
Implemented
Implemented
Implemented
`<div (click)="stmt">`
Implemented
Implemented
Implemented
`<div #foo>`
Implemented
Implemented
Implemented
`<div #foo="bar">`
Implemented
Implemented
Implemented
`<div [value]="exp">`
Implemented
Implemented
Implemented
`<div title="Hello {{name}}!">`
Implemented
Implemented
Implemented
`<div [attr.value]="exp">`
Implemented
Implemented
Not implemented
`<div class="literal">`
Implemented
Implemented
Implemented
`<div [class]="exp">`
Implemented
Implemented
Implemented
`<div [class.foo]="exp">`
Implemented
Implemented
Implemented
`<div style="literal">`
Implemented
Implemented
Implemented
`<div [style]="exp">`
Implemented
Implemented
Implemented
`<div [style.foo]="exp">`
Implemented
Implemented
Implemented
`<div xmlns:foo="url" foo:bar="baz">`
Implemented
Implemented
Implemented
`{{ ['literal', exp ] }}`
Implemented
Implemented
Implemented
`{{ { a: 'literal', b: exp } }}`
Implemented
Implemented
Implemented
`{{ exp \| pipe: arg }}`
Implemented
Implemented
Implemented
`<svg:g svg:p>`
Implemented
Implemented
Implemented
`<img src=[userData]>` sanitization
Implemented
Implemented
Implemented
[`<div (directiveOut)>`][gh23560]
Implemented
Implemented
Implemented
[`<ng-template (directiveOut)>`][gh23561]
Implemented
Implemented
Implemented
[`<ng-container>`][gh24381]
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Not implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler

3.5.2. Life Cycle Hooks

100%

10 features completed

10 completed

0 features pending

0 pending

Feature Runtime Spec Compiler `onChanges()`
Implemented
Implemented
Implemented
`onDestroy()`
Implemented
Implemented
Implemented
`onInit()`
Implemented
Implemented
Implemented
`onChanges()`
Implemented
Implemented
Implemented
`doCheck()`
Implemented
Implemented
Implemented
`afterViewChecked()`
Implemented
Implemented
Implemented
`afterViewInit()`
Implemented
Implemented
Implemented
`afterContentChecked()`
Implemented
Implemented
Implemented
`afterContentInit()`
Implemented
Implemented
Implemented
listener teardown
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler

3.5.3. `@Query`

100%

9 features completed

9 completed

0 features pending

0 pending

Feature Runtime Spec Compiler `@Query(descendants)`
Implemented
Implemented
N/A
N/A
`@Query(one)`
Implemented
Implemented
N/A
N/A
`@Query(read)`
Implemented
Implemented
N/A
N/A
`@Query(selector)`
Implemented
Implemented
N/A
N/A
`@Query(Type)`
Implemented
Implemented
N/A
N/A
`@ContentChildren`
Implemented
Implemented
Implemented
`@ContentChild`
Implemented
Implemented
Implemented
`@ViewChildren`
Implemented
Implemented
Implemented
`@ViewChild`
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
N/A
N/A
Compiler
Implemented
Runtime
Implemented
Spec
N/A
N/A
Compiler
Implemented
Runtime
Implemented
Spec
N/A
N/A
Compiler
Implemented
Runtime
Implemented
Spec
N/A
N/A
Compiler
Implemented
Runtime
Implemented
Spec
N/A
N/A
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler

3.5.4. Content Projection

100%

3 features completed

3 completed

0 features pending

0 pending

Feature Runtime Spec Compiler `<ng-content>`
Implemented
Implemented
Implemented
`<ng-content selector="...">`
Implemented
Implemented
Implemented
container `ngProjectAs`
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler

3.5.5. Injection Features

81.82%

9 features completed

9 completed

2 features pending

2 pending

Feature Runtime Spec Compiler `inject(Type)`
Implemented
Implemented
Implemented
`directiveInject(Type)`
Implemented
Implemented
Implemented
`inject(Type, SkipSelf)`
Not implemented
Not implemented
Not implemented
`attribute('name')`
Implemented
Implemented
Not implemented
`injectChangeDetectionRef()`
Implemented
Implemented
Implemented
`injectElementRef()`
Implemented
Implemented
Implemented
`injectViewContainerRef()`
Implemented
Implemented
Implemented
`injectTemplateRef()`
Implemented
Implemented
Implemented
`injectRenderer2()`
Implemented
Implemented
Implemented
default `inject()` with no injector
Implemented
Implemented
Implemented
sanitization with no injector
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Not implemented
Runtime
Not implemented
Spec
Not implemented
Compiler
Implemented
Runtime
Implemented
Spec
Not implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler

3.5.6. I18N

80%

8 features completed

8 completed

2 features pending

2 pending

Feature Runtime Spec Compiler i18nStart
Implemented
Implemented
Implemented
i18nEnd
Implemented
Implemented
Implemented
i18nAttributes
Implemented
Implemented
Implemented
i18nExp
Implemented
Implemented
Implemented
i18nApply
Implemented
Implemented
Implemented
ICU expressions
Implemented
Implemented
Implemented
closure support for g3
Implemented
Implemented
Implemented
`<ng-container>` support
Implemented
Implemented
Implemented
runtime service for external world
Not implemented
Not implemented
Not implemented
migration tool
Not implemented
Not implemented
Not implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Implemented
Runtime
Implemented
Spec
Implemented
Compiler
Not implemented
Runtime
Not implemented
Spec
Not implemented
Compiler
Not implemented
Runtime
Not implemented
Spec
Not implemented
Compiler

3.5.7. View Encapsulation

100%

4 features completed

4 completed

0 features pending

0 pending

Feature Runtime Spec Compiler Renderer3.None
Implemented
Implemented
Implemented
Renderer2.None
Implemented
Implemented
Implemented
Renderer2.Emulated
Implemented
Implemented
Implemented
Renderer2.Native
Implemented
Implemented
Implemented
Implemented
Runtime
Implemented
Spec
Implemented
Compiler