Ember 7.0 Released
#Frontend

Ember 7.0 Released

Startups Reporter
3 min read

Ember.js version 7.0 focuses on cleaning up deprecated APIs while establishing version 6.12 as the new Long Term Support release, maintaining the framework's commitment to stable, incremental improvements.

Featured image

Ember.js, the comprehensive JavaScript framework for building ambitious web applications, has released version 7.0, a major update that primarily removes deprecated features from the 6.x cycle while establishing version 6.12 as the new Long Term Support (LTS) release. This release continues Ember's unique approach to versioning that prioritizes stability and incremental improvements over disruptive changes with each major version.

Ember's versioning philosophy stands apart from many other JavaScript frameworks. Instead of packing major releases with new features that often require significant refactoring, Ember typically introduces new capabilities in minor releases while maintaining backward compatibility. This approach reduces upgrade challenges for development teams and allows for more predictable long-term planning.

The significance of Ember 7.0 lies not in what it adds, but in what it removes. By systematically eliminating deprecated APIs from the 6.x cycle, the Ember team continues to streamline the framework, removing technical debt and preparing for future innovations. This cleanup process is essential for maintaining Ember's performance and developer experience over the long term.

Looking back at the 6.x series, particularly version 6.8, we see some of the most significant changes in Ember's recent history. The framework transitioned to an Embroider and Vite-based build system as the default, representing a modernization of the development experience. This change was accompanied by the adoption of strict-mode (template-tag) component authoring as the default, aligning Ember with modern JavaScript practices.

The 6.8 release also introduced several developer-friendly features:

  • A new renderComponent API that allows rendering individual components without requiring a full project
  • Tracked versions of JavaScript's native collection types (trackedArray, trackedObject, trackedMap, trackedSet, trackedWeakMap, and trackedWeakSet)
  • Support for template-tag components as route templates

These improvements represent a substantial evolution of Ember's capabilities while maintaining the framework's core principles of stability and developer productivity.

Behind the scenes, the Ember team has been working on foundational improvements that will support the framework's future development. Notable efforts include merging the glimmer-vm monorepo into ember.js to facilitate faster iteration on the rendering engine, and integrating the router.js repo to prepare for experimentation with new router architectures.

The team has also focused on improving the developer experience through tooling updates:

  • Released Glint v2, enabling the template-tag component authoring format
  • Created codemods to help with migration to the new build system and component authoring format
  • Maintained support for legacy Classic Blueprint for projects not ready to transition to the new build system

Ember 7.0 removes several APIs that were deprecated during the 6.x cycle:

  • The ability to import Ember directly with import Ember from 'ember'
  • Publication of AMD bundles by ember-source
  • The previous method of injecting services with import inject from @ember/service (now requires import { service } from '@ember/service')

For developers looking to upgrade, the recommended path is to first upgrade to Ember 6.12, resolve all deprecation warnings, and then upgrade to 7.0. For applications on earlier versions of 6.x, the team recommends upgrading incrementally through the LTS versions: 6.4, 6.8, and then 6.12 before moving to 7.0.

The Ember 7.0 release also includes numerous bug fixes that address issues with the runtime template compiler, tracked collections, LinkTo components, and form inputs. These fixes improve the reliability and consistency of the framework, further enhancing the developer experience.

Ember CLI, the command-line tool for Ember development, also received a version 7.0 update that mirrors the framework's release, removing deprecated APIs without introducing new features or deprecations.

As a community-driven open-source project, Ember's continued development relies on the contributions of its dedicated community. The release of version 7.0 stands as a testament to the collective effort of the Ember team and its contributors in maintaining a stable, evolving framework that serves the needs of developers building ambitious web applications.

The Ember project's approach to versioning and feature releases demonstrates a commitment to sustainable development practices that prioritize long-term stability over short-term hype. This philosophy has allowed Ember to maintain a dedicated user base that values reliability and predictability in their web application development.

For more information about upgrading to Ember 7.0 or exploring the framework's capabilities, developers can visit the official Ember.js website or consult the Ember deprecation guide for detailed migration instructions.

Comments

Loading comments...