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

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 by
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: 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 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.