The Ember Times - Issue No. 188

– By Chris Ng, Isaac Lee, Amy Lam

πŸ‘‹ Emberistas! 🐹

Ember 3.28 and 4.0 Beta Released, open source contributors wanted for Ember v4, reactively handle audio in Octane with ember-stereo, and Twitter thread: Ember is data-first.

πŸŽ‰ Ember 3.28 and 4.0 Beta Released

After 3.5 years and 28 minor releases, Ember 3.28 marks the end of the project's 3.x series. To ensure a smooth upgrade path going into the 4.x series, 3.28 has been declared an LTS (Long Term Support) candidate. In six weeks, the latest patch version of 3.28 will be promoted to be the latest LTS release and replace 3.24-LTS.

We're also announcing the start of the Ember 4.0 beta cycle for all sub-projects. Following the process set in previous major versions, Ember 4.0's beta introduces no new features. Instead, it removes support for deprecated public APIs. We encourage our community (especially addon authors) to help test beta builds and report any bugs before they are published as a stable release in six weeks' time. We also encourage everyone to help maintainers resolve deprecations in their favorite addons. The ember-try addon is a great way to continuously test your projects against the latest Ember releases.

Developers who want to prepare for the upcoming 4.0 version of Ember should work to resolve all deprecation warnings in their apps and addons while using Ember 3.28. An app or addon with no deprecation warnings on Ember 3.28 should be able to upgrade from Ember 4.0 without making significant changes outside of the dependency versions.

You can read more about Ember's plans for 4.0 in The Road to Ember 4.0. Please visit Ember 3.28 and 4.0 Beta Released for the rest of the post, including details on Ember.js, Ember Data, and Ember CLI. Many thanks to Matthew Beale (@mixonic), Jen Weber (@jenweber), and Isaac Lee (@ijlee2) for the excellent and informative writeup!

πŸ“£ Open source contributors wanted for Ember v4

Do you have some time to help out with shipping Ember v4? πŸ”₯ The Learning Team is preparing docs and guides, and we need your brainpower and writing skills!

Help wanted to complete this month:

In addition to commenting on the GitHub issues, we can also chat on #dev-ember-learning on Discord.

🎡 Reactively handle audios in Octane with ember-stereo

Since 2016, Jeff Keen (@jkeen) helped develop the open-source ember-hifi for the New York Public Radio.

Jeff recently released its modern, reactive successor ember-stereo. He has worked hard on making audio manipulation simple and providing extensive examples. We encourage you to have a look!

Out of the box, you will be provided with:

  • stereo service: It manages loading and playing sounds, making sure that only one sound plays at a time, setting volume, and providing system-level events that your application can tie into.
  • Template helpers, which can perform an action on, or retrieve information from, a sound or url stringβ€”something entirely new from how ember-hifi did things!
  • A couple of modifiers, to help control volume and position
  • setupStereoTest(), to help write tests

🐦 Twitter thread: Ember is data-first

Michael Bodnarchuk (@DavertMik) wrote a Twitter thread on how tracked properties in Glimmer components help you build data-oriented components.

Michael mentions that in React you write hooks to update the component's state, while in Ember the component's state is tied to the data. This data first approach makes it so we can pass the reacting class to the root component and we do not need to change any child components to make it work.

Read the full Twitter thread and let us know if you have any thoughts about it too!

πŸ‘ Contributors' corner

This week we'd like to thank Thomas Wang (@xg-wang), Kelly Selden (@kellyselden), Isaac Lee (@ijlee2), Igor Terzic (@igorT), Katie Gengler (@kategengler), Charles Fries (@charlesfries), @NullVoxPopuli, Esquith Allen (@esquith), Bryan Mishkin (@bmish), Chris Ng (@chrisrng), Chris Carini (@ChrisCarini), Sylvain MINA (@sly7-7), Chris Manson (@mansona), Amy Lam (@amyrlam), Robert Wagner (@rwwagner90), Ricardo Mendes (@locks), Alex Kanunnikov (@lifeart), Simon Ihmig (@simonihmig), Gabriela Larregle (@Glarregle), Jen Weber (@jenweber), Anne-Greeth Schot-van Herwijnen (@MinThaMie), Jonas Brusman (@himynameisjonas), Robert Jackson (@rwjblue), Stefan Penner (@stefanpenner), NathanaΓ«l Dekeister (@ndekeister-us), Brenden Palmer (@brendenpalmer), and Giles Thompson (@gilest) for their contributions to Ember and related repositories! πŸ’–

πŸ€“ Connect with us

Office Hours Tomster Mascot

Wondering about something related to Ember, Ember Data, Glimmer, or addons in the Ember ecosystem, but don't know where to ask? Readers’ Questions are just for you!

Submit your own short and sweet question under And don’t worry, there are no silly questions, we appreciate them all - promise! 🀞

Want to write for the Ember Times? Have a suggestion for next week's issue? Join us at #support-ember-times on the Ember Community Discord or ping us @embertimes on Twitter.

Keep on top of what's been going on in Emberland this week by subscribing to our e-mail newsletter! You can also find our posts on the Ember blog. See you in two weeks!

That's another wrap! ✨

Be kind,

Chris Ng, Isaac Lee, Amy Lam, and the Learning Team