This week we have a fresh new proposal for HTML attributes & properties in Ember to present to you, some cute Mascot updates and last but not least, several ways for you to get started in contributing to Ember and its ecosystem: 🐹
Over the past few years, working with some native elements in Ember has been a bit challenging. At times your intention may be to set the elements attribute, but you find you have really set its property. Conversely, you are looking to set an elements property. Bewildered and confused, you have actually set its attribute. In desperation, you reach out on ember’s Github page to file an issue only to learn it was designed that way.
But why? Is there some rhyme or reason for this behavior? The answer is yes, but it all depends on the value being dynamic or not. Is there a clearer way to set your attributes and properties and still know what’s going on?
Chad Hietala has introduced an RFC to make setting attributes and properties on HTML elements to be consistent and explicit. The RFC borrows from the current HTML semantics by always setting the attribute. Additionally the rfc proposes 2 new element modifiers, {{ opening_double_curly() }}prop{{ closing_double_curly() }} and {{ opening_double_curly() }}on{{ closing_double_curly() }}, to help clarify and address the perplexity surrounding how to set a property on an element. Furthermore, by adopting these more explicit conventions, the RFC makes it possible for Ember to integrate with Custom Elements while also addressing HTML serialization issues for server-side rendering
The RFC is still in its infancy and there are still many unanswered questions. Are there drawbacks to this approach? Maybe there is an alternative way to reach the same goals?
If you tried to make an Ember application speak in multiple languages and locales, you might have been one of the many users of ember-i18n and ember-intl- the two most popular packages for internationalization in the Ember addon ecosystem.
Although the overlap in functionality between the two projects has been quite immense for years, the fact that the younger ember-intl addon not only makes use of the native web standard, but also supports the well-adopted ICU message syntax makes it a good candidate to become the gold standard for localizing Ember apps.
Now there’s a question about the deprecation of the alternative ember-i18n, and a process about how apps nowadays could migrate safely over to ember-intl.
Join the discussion and let the community know about your use cases for ember-i18n and what your thoughts on the plans for deprecation are.
If you’ve already become a fan of ember-concurrency, this issue might be just for you. Maintainer @machty discusses a possible roadmap for the first major release of the addon. He not only talks about his own suggestions for future improvements for ember-concurrency 1.0, but also invites the community (yes, that’s you!) to add their own items to the wish list of features and improvements.
Check out the issue today and write down your thoughts regarding the future roadmap for ember-concurrency in the comments section.
Another straightforward quest issue- a major task which is broken down into easy to digest sub tasks- has been created this week to clean up the test output for the emberjs/ember.js project. Currently, the logs for the passing build are cluttered with deprecation warnings and not-so-relevant error messages and your help is needed to make it nice and easy to read again.
This is an excellent issue for first time contributors who want to get into open-source work - so if you’re curious, check out the detailed task description in the issue itself and claim one (or several, if you’re feeling ambitious! ✨) sub task(s) in the comments below.
With everyone still recovering from all the buzz from EmberConf, we want to take another chance to first, point you to the great answers to previous questions by Ember.js Times readers:
And second, we’d like to ask you for many more questions to be answered in future editions of the Ember.js Times!
Submit your own short and sweet question under bit.ly/ask-ember-core. And don’t worry, there are no silly questions, we appreciate them all- promise! 🤞