feat(compiler): Added "strictMetadataEmit" option to ngc (#10951)

ngc can now validate metadata before emitting to verify it doesn't
contain an error symbol that will result in a runtime error if
it is used by the StaticReflector.

To enable this add the section,

  "angularCompilerOptions": {
    "strictMetadataEmit": true
  }

to the top level of the tsconfig.json file passed to ngc.

Enabled metadata validation for packages that are intended to be
used statically.
This commit is contained in:
Chuck Jazdzewski
2016-08-22 17:37:48 -07:00
committed by Kara
parent 45e8e73670
commit 39a2c39cef
32 changed files with 502 additions and 117 deletions

View File

@ -6,6 +6,7 @@
* found in the LICENSE file at https://angular.io/license
*/
import {NgZone} from '@angular/core';
import {getDOM} from '../src/dom/dom_adapter';
import {ListWrapper} from '../src/facade/collection';
import {RegExp, StringWrapper, global, isPresent, isString} from '../src/facade/lang';
@ -129,3 +130,7 @@ export function stringifyElement(el: any /** TODO #9100 */): string {
}
export var browserDetection: BrowserDetection = new BrowserDetection(null);
export function createNgZone(): NgZone {
return new NgZone({enableLongStackTrace: true});
}