Changelog of Become a Ninja with Angular

Here is the full changelog of the ebook Become a Ninja with Angular, release per release, chapter per chapter.

You can download the latest version (these updates are free to any buyer!).

Angular versions currently supported

Changes in ebook

From zero to something: Bump to cli 7.1.0
Global: Bump to ng 7.1.0
Router: Use UrlTree in CanActivate guard, as introduced by 7.1
Global: Bump to ng 7.1.0-rc.0
Global: Bump to ng 7.0.2
From zero to something: Bump to cli 7.0.4
Going to production: Adds a new chapter about Going to production!
From zero to something: Bump to cli 7.0.2
Global: Bump to ng 7.0.0
Global: Bump to ng 7.0.0-rc.1
Global: Bump to ng 7.0.0-rc.0
Global: Bump to ng 7.0.0-beta.6
Global: Bump to ng 7.0.0-beta.4
Global: Bump to ng 7.0.0-beta.0
From zero to something: Bump to cli 7.0.1
From zero to something: Bump to cli 6.2.1
From zero to something: Bump to cli 6.2.0-rc.0
Performances: Adds a performances chapter!
Global: Bump to ng 6.1.0
Global: Bump to ng 6.1.0-rx.0
Global: Bump to ng 6.1.0-beta.1
From zero to something: Bump to cli 6.1.0
Pipes: Add the keyvalue pipe introduced in Angular 6.1
Styling components and encapsulation: New ShadowDom encapsulation option with Shadow DOM v1 support (the old and soon deprecated Native option uses Shadow DOM v0)
Router: Adds the Scroll event and scrollPositionRestoration option introduced in 6.1
Advanced observables: Use shareReplay instead of publishReplay and refCount
Global: Bump to ng 6.0.7
From zero to something: Bump to cli 6.0.8
Send and receive data with Http: HTTP tests now use verify every time
Pipes: Show usage of formatting functions available since Angular 6.0
From zero to something: Bump cli to 6.0.7
Internationalization: Update for CLI 6.0 and use a dedicated configuration
Global: Bump to ng 6.0.0
From zero to something: Bump to cli 6.0.0
Dependency Injection: Use providedIn to register services, as recommended for Angular 6.0
Services: Use providedIn to register the service, as recommended for Angular 6.0
Testing your app: Simplify service unit tests now that they use providedIn from ng 6.0
Global: Bump to ng 6.0.0-rc.4
Global: Bump to ng 6.0.0-rc0
Global: Bump to ng 6.0.0-beta.7
Global: Bump to ng 6.0.0-beta.6
Global: Bump to ng 6.0.0-beta.1
Advanced components and directives: Angular 6.0+ allows to type ElementRef
Advanced observables: We now use the imports introduced in RxJS 6.0 (import { Observable, of } from 'rxjs')
From zero to something: The chapter now uses Angular CLI from the start!
Dependency Injection: Updates the dependency injection via token section with a better example
Reactive Programming: We now use the pipeable operators introduced in RxJS 5.5
Advanced observables: We now use the pipeable operators introduced with RxJS 5.5
The Wonderful world of Web Components: Replace customelements.io by webcomponents.org
Global: Bump to ng 5.2.0
Building components and directives: Better lifecycle explanation
Forms: Reintroduce the min and max validators from version 4.2.0, even if they are not available as directives.
Send and receive data with Http: Remove remaining mentions to the deprecated HttpModule and Http
Global: Bump to ng 5.1.0
Global: Bump to ng 5.0.0
Global: Bump to ng 5.0.0-rc.5
Global: Bump to ng 5.0.0-rc.3
Global: Bump to ng 5.0.0-rc.2
Global: Bump to ng 5.0.0-rc.0
Global: Bump to ng 5.0.0-beta.6
Global: Bump to ng 5.0.0-beta.5
Global: Bump to ng 5.0.0-beta.4
Global: Bump to ng 5.0.0-beta.1
Pipes: Use the new i18n pipes introduced in ng 5.0.0
Forms: Add a section on the updateOn: 'blur' option for controls and groups introduced in 5.0
Send and receive data with Http: Use object literals for headers and params for the new http client, introduced in 5.0.0
Router: Adds ng 5.0 ChildActivationStart/ChildActivationEnd to the router events
Internationalization: Remove deprecated i18n comment with ng 5.0.0
Internationalization: Show how to load the locale data as required in ng 5.0.0 and uses the new i18n pipes
Internationalization: Placeholders now displays the interpolation in translation files to help translators
Global: Bump to ng 4.4.1
Forms: Remove the section about combining template-based and code-based approaches
Global: Bump to ng 4.3.0
Send and receive data with Http: Updates the chapter to use the new HttpClientModule introduced in ng 4.3.0.
Router: List the new router events introduced in 4.3.0
Advanced components and directives: Add a section about HostBinding
Advanced components and directives: Add a section about HostListener
Advanced components and directives: New chapter on advanced components, with ViewChild, ContentChild and ng-content!
Global: Bump to ng 4.2.3
Forms: Remove min/max validators mention, as they have been removed temporarily in ng 4.2.3
Global: Bump to ng 4.2.0
Forms: Introduce the min and max validators from version 4.2.0
Angular compiler: Adds a chapter about the Angular compiler and the differences between JiT and AoT.
Global: Bump to ng 4.1.0
Router: New chapter on advanced router usage: protected routes with guards, nested routes, resolvers and lazy-loading!
Global: ๐ŸŽ‰ Bump to stable release 4.0.0 ๐ŸŽ‰
Global: Bump to 4.0.0-rc.6
Global: Bump to 4.0.0-rc.5
Global: Bump to 4.0.0-rc.4
Global: Bump to 4.0.0-rc.3
Global: Bump to 4.0.0-rc.1
Global: Bump to 4.0.0-beta.8
Global: Bump to ng 4.0.0-beta.7 and TS 2.1+ is now required
Global: Bump to 4.0.0-beta.5
Global: Bump to 4.0.0-beta.0
The templating syntax: Use as, introduced in 4.0.0, instead of let for variables in templates
The templating syntax: The template tag is now deprecated in favor of ng-template in 4.0
The templating syntax: Introduces the else syntax from version 4.0.0
Pipes: Introduce the as syntax to store a NgIf or NgFor result, which can be useful with some pipes like slice or async.
Pipes: Adds titlecase pipe introduced in 4.0.0
Services: New Meta service in 4.0.0 to get/set meta tags
Testing your app: overrideTemplate has been added in 4.0.0
Forms: Introduce the email validator from version 4.0.0
Send and receive data with Http: Use params instead of the deprecated search in 4.0.0
Router: Use paramMap introduced in 4.0 instead of params
Advanced observables: Shows the as syntax introduced in 4.0.0 as an alternative for the mulitple async pipe subscriptions problem
Internationalization: Add a new chapter on internationalization (i18n)
Global: Each chapter now has a link to the corresponding exercise of our Pro Pack Chapters are slightly re-ordered to match the exercises order.
Dependency Injection: Fix the Babel 6 config for dependency injection without TypeScript
Global: Bump to 2.4.4
Global: The big rename: "Angular 2" is now known as "Angular"
Forms: Fix the NgModel explanation
Global: Bump to 2.4.0
Forms: Validators.compose() is no longer necessary, we can apply several validators by just passing an array.
Global: Bump to 2.2.0
Forms: Add an async validator example
Forms: Remove the useless (2.2+) .control in templates like username.control.hasError('required').
Router: routerLinkActive can be exported (2.2+).
Advanced observables: New chapter on Advanced Observables!
Global: Bump to 2.1.0
Global: Remove typings and use npm install @types/...
Router: We don't need to unsubscribe from the router params in the ngOnDestroy method.
Global: Use const instead of let and TypeScript type inference whenever possible
Testing your app: Use TestBed.get instead of inject in tests
Global: Bump to 2.0.1
Global: ๐ŸŽ‰ Bump to stable release 2.0.0 ๐ŸŽ‰
Global: Bump to rc.7
Global: Bump to rc.6
From zero to something: Update the SystemJS config for rc.6 and bump the RxJS version
Pipes: Remove the section about the replace pipe, removed in rc.6
Global: Bump to rc.5
Forms: Forms now use the new form API (FormsModule and ReactiveFormsModule).
Services: Add the service to the module's providers
Send and receive data with Http: Add the HttpModule import
Router: Introduce RouterModule
Dependency Injection: Introduce modules and their role in DI. Changed the example to use a custom service instead of Http.
Testing your app: Tests now use the TestBed API instead of the deprecated TestComponentBuilder one.
From zero to something: Small introduction to NgModule when you start your app from scratch
Changelog: Mention free updates and web page for obtaining latest version
Global: Bump to rc.4
Testing your app: Angular 2 does not provide Jasmine wrappers and custom matchers for unit tests in rc.4 anymore
Router: Update the router to the API v3!
Global: Bump to rc.3
Global: Bump to rc.2
The templating syntax: Replace the deprecated ngSwitchWhen with ngSwitchCase
Pipes: Date pipe is now fixed in rc.2, no more problem with Intl API
Forms: Warn about forms module being rewritten (and deprecated)
Send and receive data with Http: http.post() now autodetects the body type, removing the need of using JSON.stringify and setting the ContentType
Router: Warn about router module being rewritten (and deprecated)
Dependency Injection: Remove deprecated provide() method and use {provide: ...} instead
Global: Bump to rc.1
Global: Code examples now follow the official style guide
Styling components and encapsulation: New chapter on styling components and the different encapsulation strategies!
Router: Introduce the new router (previous one is deprecated), and how to use parameters in URLs!
Global: Bump to rc.0. All packages have changed!
Global: Bump to beta.17
The templating syntax: *ngFor now uses let instead of # to declare a variable *ngFor="let pony of ponies"
Testing your app: injectAsync is now deprecated and replaced by async
Zones and the Angular magic: New chapter! Let's talk about how Angular 2 works under the hood! First part is about how AngularJS 1.x used to work, and then we'll see how Angular 2 differs, and uses a new concept called zones.
Global: Bump to beta.15
The templating syntax: *ngFor now also exports a first variable
Pipes: A replace pipe has been introduced
Forms: A pattern validator has been introduced to make sure that the input matches a regexp
Global: Bump to beta.14
Global: Bump to beta.11
Global: Bump to beta.9
Global: Bump to beta.8
Global: Bump to beta.7
Global: Display the Angular 2 version used in the intro and in the chapter "Zero to something".
Global: Bump to beta.6 (beta.4 and beta.5 were broken)
Global: Bump to beta.3
Global: Bump to beta.2
Diving into TypeScript: Use typings instead of tsd.
Dependency Injection: Better explanation of hierarchical injectors
Reactive Programming: Observables are not scheduled for ES7 anymore
Building components and directives: Explain how to remove the compilation warning when using @Input and a setter at the same time
Building components and directives: Add an explanation on isFirstChange for ngOnChanges
Testing your app: Add an example on how to test an event emitter
Forms: Add a mnemonic tip to rememeber the [()] syntax: the banana box!
Forms: Examples use module.id to have a relative templateUrl
Forms: Fix error ng-no-form -> ngNoForm
Forms: Fix errors (ngModel) -> (ngModelChange), is-old-enough -> isOldEnough
Send and receive data with Http: Use JSON.stringify before sending data with a POST
Send and receive data with Http: Add a mention to JSONP_PROVIDERS
Router: RouterOutlet inserts the template of the component just after itself and not inside itself
Global: First public release of the ebook!

You can download the latest version (these updates are free to any buyer!).

Back to ebook details.