Yesterday, the Ember project announced the release of version 3.4 of the three core sub-projects: Ember.js, Ember Data, and Ember CLI.
Ember is an open source JavaScript frontend framework, which is based on Model-View-Viewmodel (MVVM) pattern. It enables developers to create scalable single-page web applications by incorporating common idioms and best practices into the framework.
Ember.js 3.4 is an incremental, backward compatible release of Ember with bug fixes, performance improvements, and minor deprecations.
You can now use angle bracket invocation instead of the classic invocation syntax. For example:
Instead of using the following syntax:
You can use:
This release does not deprecate the classic invocation syntax, but using angle bracket invocation will provide more syntax clarity. As component invocation is often encapsulating important pieces of UI, a dedicated syntax would help visually distinguish them from other handlebars constructs, such as control flow and dynamic values.
This version comes with the new Custom Component Manager feature enabled by default. This allows addon authors to access a low-level API for creating component bases classes which addon users can re-use and extend components from.
When using sendAction, the developer passes the name of an action. When sendAction is called, Ember.js would look up that action in the parent context and invoke if it exists. This poses a few problems, such as:
Closure actions solve these problems and are also more intuitive to use.
This is the last version that will work with the polyfill addon for features that were deprecated in 2.x. If you have been using ember-2-legacy, it's time to upgrade.
Ember Data is the data-persistence library that provides many of the facilities of an object-relational mapping (ORM).
Ember Data 3.4 is the first Ember Data LTS release. This release has received a ton of bug fixes to address many known issues that have been reported over the last several months. Some of them are listed here:
Ember CLI is the command line interface to create, develop, and build Ember.js applications. Ember CLI 3.4 is an LTS release candidate. It will receive critical bug fixes for the upcoming 6 release cycles, as well as security patches for the next 10 release cycles.
Support has been added for Node 10 and support for Node 4 has been dropped from Ember CLI's support matrix. When upgrading to Ember CLI 3.4, make sure to use it together with Node 6 and above.
Automatic template linting is added to your application via ember-template-lint according to the recommended list of rules. Ember CLI will generate a TemplateLint test file for each of your templates to your test suite automatically to be run via ember test.
To run the linter you can also use the new command npm run lint:hbs or yarn run lint:hbs respectively.
Read the full list of changes on Ember’s official website and also check out its GitHub repository.
Ember project releases v3.2.0 of Ember.js, Ember Data, and Ember CLI
Getting started with Ember.js – Part 1
Getting started with Ember.js – Part 2