Skip to content
This repository was archived by the owner on Sep 16, 2022. It is now read-only.

5.0.0-alpha+3

Choose a tag to compare

@alorenzen alorenzen released this 08 Jan 22:54
· 2274 commits to master since this release

angular

5.0.0-alpha+3

New features

  • Provider is now soft-deprecated (not preferred), and new more-typed
    classes exist: ClassProvider, ExistingProvider, FactoryProvider, and
    ValueProvider. Each also has a .forToken named constructor that infers
    the Provider<T>'s T value from the provided OpaqueToken<T>'s T.
    This is meant to help with the move to strong mode and DDC, and is now the
    preferred way to configure dependency injection.

  • Any variation of multi: true when configuring dependency injection is now
    soft-deprecated (not preferred), and the MultiToken class has been added.
    A MultiToken<T> now represents an OpaqueToken<T> where multi: true is
    implicitly always true:

const usPresidents = const MultiToken<String>('usPresidents');

@Component(
  selector: 'presidents-list',
  providers: const [
    const ValueProvider.forToken(usPresidents, 'George Washington'),
    const ValueProvider.forToken(usPresidents, 'Abraham Lincoln'),
  ],
)
class PresidentsListComponent {
  // Will be ['George Washington', 'Abraham Lincoln'].
  final List<String> items;

  PresidentsListComponent(@Inject(usPresidents) this.items);
}
  • We are starting to support the new build system at dart-lang/build. More
    information and documentation will be included in a future release, but we
    expect to drop support for pub serve/build by 5.0.0 final.

Breaking changes

  • Dartium is no longer supported. All development of your AngularDart
    applications is now required to be in DDC. With incoming language
    and library changes this would have been required regardless, but we expect
    to have faster build tools available (instead of pub serve) soon.

Bug fixes

  • Fixed a bug where ReflectiveInjector would return an Object instead of
    throwing ArgumentError when resolving an @Injectable() service that
    injected a dependency with one or more annotations (i.e. @Inject(...)).

  • Fixed a bug where DatePipe didn't format millisecondsSinceEpoch in the
    local time zone (consistent with how it formats DateTime).

angular_router

2.0.0-alpha+3

New features

  • Added the CanNavigate lifecycle interface. This is similar to
    CanDeactivate, and preferred when the next RouterState isn't necessary
    to determine whether the router may navigate.

  • Added reload field to NavigationParams which can be used to force
    navigation, even if the path and other navigation parameters are unchanged.

  • Added replace field to NavigationParams which can be used to replace the
    current history entry on navigation instead of creating a new one.

Breaking changes

  • Removed hashCode and operator == overrides from RouteDefinition and
    RouterState, as these can't be removed by tree-shaking.

Bug fixes

  • Upon destruction, RouterOutlet will now properly destroy all of its cached
    components, instead of only destroying the active one.

angular_forms

1.0.1-alpha+3

  • Some documentation updates.
  • Dartium is no longer supported.

angular_test

2.0.0-alpha+1

  • Added support for build.yaml.

angular_compiler

0.4.0-alpha+3

  • Added support for recognizing the MultiToken type.

angular_ast

0.4.1

Bug fixes

  • Un-escape HTML characters, such as &lt;, &#8721;, or &#x2211;, when they
    appear in text. Note, we do not do any un-escaping when these characters
    appear inside elements.