Ember 4.3 Released
Today the Ember project is releasing version 4.3 of Ember.js, Ember Data, and Ember CLI.
This release kicks off the 4.4 beta cycle for all sub-projects. We encourage our community (especially addon authors) to help test these beta builds and report any bugs before they are published as a final release in six weeks' time. The ember-try addon is a great way to continuously test your projects against the latest Ember releases.
You can read more about our general release process here:
Ember.js
Ember.js is the core framework for building ambitious web applications.
Changes in Ember.js 4.3
Ember.js 4.3 is an incremental, backwards compatible release of Ember with bug fixes, performance improvements, and minor deprecations.
Bug Fixes
Ember.js 4.3 introduced 3 bug fixes.
- A memory leak in the Router Service class is fixed (#20025). It was affecting tests and FastBoot apps.
- Using
RouterService#transitionTo
no longer adds unspecified default query parameters to the URL (#19971). FactoryManager
correctly associate props with factory and owner (#20024).
Features
Ember.js 4.3 introduced 0 features.
Deprecations
Ember.js 4.3 introduced 0 deprecations.
For more details on changes in Ember.js 4.3, please review the Ember.js 4.3.0 release page.
Ember Data
Ember Data is the official data persistence library for Ember.js applications.
Changes in Ember Data 4.3
Bug Fixes
Ember Data 4.3 introduced many bug fixes! Contributors to the project
were hard at work to address things that were reported between v3.28
and
v4.2
.
Many of the bugfixes listed below have been backported to
v3.28
. That means if you get the latest patch release of v3.28-v4.2
,
you will get these benefits too.
The list below covers highlights only. See the commit history for a comprehensive list.
- Pushing records with duplicate identifiers does not cause duplicate records #7801.
- Fix a bug with encoding space characters when serializing query params #7834.
- Fix a regression where
createRecord
crashed when a setter which sets an attribute is involved in thecreateRecord
. - Fix a regression to support
await
for loading relationships #7684. - …and more!
Features
Ember Data 4.3 introduced 4 features.
- Better debuggability! When your
app is in
DEBUG
mode, it is now easier to dig intoStore
,Symbol
, andRecordReference
. - Add support for Customizeable test setups as described in RFC 637.
- The Reference API is now compatible with autotracking.
attributesDefinitionFor
andrelationshipsDefinitionFor
have a simpler API, following RFC 794.
Deprecations
Ember Data 4.3 introduced 0 deprecations.
Support for the toJSON
method on Ember Data records has been removed. It was deprecated in 3.x
and slated for removal in 4.x
.
If your app uses this method, follow the deprecation guide.
Some more previously-deprecated APIs were slated for removal in the 4.x
series, and have now been removed:
- Evented.
- Lifecycle events like
didCreate
. - Default adapter. Adapter type must be specified now.
- Test registrations.
belongs-to-push
of record.mismatched-inverse
.
For more details on changes in Ember Data 4.3, please review the Ember Data 4.3.0 commits.
Ember CLI
Ember CLI is the command line interface for managing and packaging Ember.js applications.
Upgrading Ember CLI
You may upgrade Ember CLI using the ember-cli-update
project:
npx ember-cli-update
This utility will help you to update your app or addon to the latest Ember CLI version. You will probably encounter merge conflicts, in which the default behavior is to let you resolve conflicts on your own. For more information on the ember-cli-update
project, see the GitHub README.
While it is recommended to keep Ember CLI versions in sync with Ember and Ember Data, this is not required. After updating ember-cli, you can keep your current version(s) of Ember or Ember Data by editing package.json
to revert the changes to the lines containing ember-source
and ember-data
.
Changes in Ember CLI 4.3
Bug Fixes
Ember CLI 4.3 introduced 1 bug fix.
- The broccoli debug folder is added to the
gitignore
file (#9680).
Features
Ember CLI 4.3 introduced 2 features.
- Customisation of setupTest* functions (#9803). This adds a
tests/helpers/index.js
file wheresetupApplicationTest
,setupRenderingTest
, andsetupTest
functions will be wrapped and exported, creating a single place to edit for each type of test setup. Tests generated usingember generate
will import the setup functions from that file. - Add support for specifying a path for the
ember generate
command (#9387). This allows you to runember g ../../../node_modules/ember-source/blueprints/component
to generate a component.
Deprecations
Ember CLI 4.3 introduced 1 deprecation.
For more details on the changes in Ember CLI 4.3 and detailed upgrade instructions, please review the Ember CLI 4.3.0 release page.
Thank You!
As a community-driven open-source project with an ambitious scope, each of these releases serves as a reminder that the Ember project would not have been possible without your continued support. We are extremely grateful to our contributors for their efforts.