What this package is like to depend on
Last release 5 years ago
no release in 18 months
Ships unpredictably
gaps range from 2 weeks to 1.2 years
Nearly every release is documented
notes for 16 of 17 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
37 releases · first in 2017
0 releases in the last 12 months
see the full history below
Release timeline
37 releases · Jul 2017 to Oct 2021Releases
latest 37-
2.0.207 Oct 2021 -
2.0.124 Sep 2021 -
2.0.017 Sep 2021 -
1.0.121 Oct 2020Release notes
Open source →- Removed invalid link from the OnPush compatibility warning.
- Update
package:analyzerdependency to^0.40.0.
-
1.0.007 Oct 2020Release notes
Open source →-
Stable release.
-
Added a command-line flag,
catchMissingDirectives, that when set warns about missing directives or mispelled bindings. -
The old pipe syntax (
expression | pipeName:arg) is removed. Please use the new syntax for pipes ($pipe.pipeName(expression, arg)) instead. -
sourceSpanWithLineInfonow includes the surrounding source on the highlighted line(s), with the correct line number(s). -
FactoryProvideradmits static methods as its factory function. This is now supported by@GenerateInjectorandReflectiveInjector. -
Hooks
NgContentRefApi to Dart. An<ng-content>element can be treated as a psudeo-DOM element and queried if it contains a reference. -
Template expressions are now parsed using
package:analyzerand though the subset of expressions supported largely has not changed some expressions that were silently accepted before are now compile-time errors.
-
-
0.4.525 Jul 2019Release notes
Open source →-
The InjectorReader now fails with an explicit error if types are used inside a ValueProvider object. Previously, using types in ValueProviders would crash the AngularDart compiler.
Instead of a ValueProvider, use a FactoryProvider for complicated objects, such as those that contain types.
-
Removed the
i18ncompiler flag that was previously used to opt-in to internationalization in templates before the feature had stabilized. -
Added support for a command-line flag,
allowed_typedefs_as_di_token. This is intended to be used as a transitional flag to ban using atypedefas a DI token (which has non-predictable properties in Dart 2). -
Added
$ChangeDetectionLink, a type checker for matching the experimental@changeDetectionLinkannotation.
-
-
0.4.407 May 2019 -
0.4.305 Apr 2019Release notes
Open source →-
FormatExceptions thrown while parsing modules in InjectorReader are now rethrown as BuildErrors with source information.
-
The InjectorReader will fail earlier in the compile process on parse errors.
-
Unhandled errors from InjectorReader are now caught and reported with source information.
-
BuildError now has factory constructors to create errors for annotations and elements.
-
-
0.4.210 Dec 2018Release notes
Open source →-
Updates the
messages.unresolvedSourceAPI to support different error messages for eachSourceSpanaffected. -
Update failure message to include an asset id when collecting type parameters.
-
TypedReadernow throws a build error when reading a private type argument.
-
-
0.4.110 Oct 2018Release notes
Open source →-
Catches an (invalid)
nulltoken of a provider and throws a better error. -
Catches an (invalid)
nullvalue of the function forFactoryProvider. -
Emits all strings for
@GeneratedInjectoras raw (r'$5.00'). -
Supports named arguments for
ValueProviderand@GeneratedInjector. -
Prevents
InjectorReader.accept()from crashing when given a dependency with no type or token.
-
-
0.4.007 Aug 2018Release notes
Open source →New Features
-
Added
TypedElementto represent a statically parsedTyped. -
TypedReader.parse()now returns aTypedElement. -
Added
$Typed, aTypeCheckerforTyped. -
Added
TypedReaderfor parsing generic directive types. -
Added support for
voidandNulltypes to appear in tokens. -
Added
DirectiveVisitor, and removed$HostBindingand$HostListener. -
Added
ModuleReader.extractProviderObjectsto use in the view compiler. -
Added
logFineas a new top-level API. -
Added an internal
cli.dartlibrary. Seelib/cli.dartfor details. -
Added
SplitDartEmitterfor internal use. -
Added
$QueryListas aTypeChecker. -
Expose the
$ProviderTypeChecker. -
Added
typeArgumentOfhelper method. -
Added support for recognizing the
MultiTokentype. -
CompilerFlagsnow supports as afast_bootargument; default istrue. -
ReflectorEmitternow takes an optionaldeferredModules{Source}. -
Started adding experimental support for a new
Modulesyntax.
Breaking Changes
-
CompilerFlagsno longer parses and supports the'debug'option andgenDebugInfois alwaysfalse, and is deprecated pending removal in a future version. -
Removes unused APIs of
ComponentReader. -
TokenReaderno longer supports arbitrary const objects or literals. -
Removed
use_new_template_parserflag. The old parser was removed. -
Removed
$QueryList. -
Added
canReadtoNgAssetReader. -
Moved
CompilerFlagsandProfiletocli.dart. -
linkToReferencenow requires a second parameter, aLibraryReader, and treats private types (i.e. prefixed with_) asdynamicas the compiler cannot point to them. -
ReflectableEmitterhas been completely replaced with a new implementation. -
Removed all references and use of determining a "prefix" of a type. This was no longer used once
ReflectableEmitterwas re-written. -
Removed a number of internal flags that were no longer strictly required.
-
ModuleReader.deduplicateProvidersnow returns aListnot aSet, and providers that are multi are not removed, as it is a feature of the DI system to have multiple of them with the same token. -
Add the
TypeLinkclass, and replace uses ofUri. -
@Componentand@Directiveannotated classes are no longer@Injectable. In practice this means they can no loger be provided as an implicitconst Provider(FooComponent)without either manually adding@Injectableor refactoring your code. We found this didn't really affect users, and most uses of components and directives in these lists were accidental.
Bug Fixes
-
Fixed a bug where the compiler crashed after resolving a bound type failed.
-
Misspelled or otherwise erroneous annotations on classes now produce a more understandable error message, including the element that was annotated and the annotation that was not resolved.
-
Fix a bug where
throwFailurehit an NPE without a stack trace. -
linkTypeOfcorrectly resolves bound types (i.e.<T>) in most cases, and can fallback todynamicotherwise. -
Removed all remaining (invalid) references to
package:barback. -
Prevented a
RangeErrorthat occurred when an invalid import lacked an extension. -
ReflectorEmitternow supportsMultiTokenand generic-typed tokens, with some known limitations. See https://github.com/angulardart/angular/issues/782. -
Fix a bug in the outliner that did not the correct output extension.
-
-
0.4.0-alpha10 Oct 2017 pre-releaseNothing published for this version
-
0.4.0-alpha+121 Nov 2017 pre-releaseNothing published for this version
-
0.4.0-alpha+219 Dec 2017 pre-releaseNothing published for this version
-
0.4.0-alpha+308 Jan 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+418 Jan 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+506 Feb 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+627 Feb 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+707 Mar 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+816 Mar 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+929 Mar 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1010 Apr 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1123 Apr 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1217 May 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1324 May 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1405 Jun 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1515 Jun 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1629 Jun 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1716 Jul 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1819 Jul 2018 pre-releaseNothing published for this version
-
0.4.0-alpha+1902 Aug 2018 pre-releaseNothing published for this version
-
0.3.024 Aug 2017Release notes
Open source →- Always link to
export "...template.dart" filesininitReflector(). - Catch missing field-formal (
this.) fields and warn in the compiler. - Does not emit a
registerDependenciesfunction call for empty constructors. initReflector()no longer treats@Pipeas an@Injectableservice.
- Always link to
-
0.3.0+109 Jan 2018Nothing published for this version
-
0.2.115 Aug 2017 -
0.2.007 Aug 2017Release notes
Open source →- Added various classes and helpers to form the new compile infrastructure:
ComponentReaderDependencyReader,DependencyInvocation,DependencyElementProviderReader,ProviderElementTokenReader,TypeTokenElement,OpaqueTokenElementgetInheritanceHierarchy,urlOfReflectableReader,ReflectableOutput,ReflectableClass
- Added various classes and helpers to form the new compile infrastructure:
-
0.1.112 Jul 2017 -
0.1.011 Jul 2017