Loading...

Follow Ember Blog on Feedspot

Continue with Google
Continue with Facebook
or

Valid
Ember Blog by Ember - 2d ago

Today the Ember project is releasing version 3.10 of Ember.js, Ember Data, and Ember CLI. This release kicks off the 3.11 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 3.10

Ember.js 3.10 is an incremental, backwards compatible release of Ember with bugfixes, performance improvements, and minor deprecations. There are four (4) new features, one (1) deprecations, and seventeen (17) bugfixes in this version.

New Features (4)

Angle Bracket Invocation for Nested Components (1 of 4)

From Ember 3.10 onwards you can use angle bracket invocation syntax for nested components. Nested components are components which are defined in a nested directory structure of your application.

For example, if you had a component nested in your app/ directory as follows:

1
2
3
4
5
6
7
8
-- app/
  |-- components/
     |-- blog/
        |-- post-item.js
  |-- templates/
     |-- components/
        |-- blog/
           |-- post-item.hbs

you had to invoke the component in your template using the classic curly invocation syntax up until Ember 3.9. You can do so as follows:

1
2
3
4
5
6
7
{{! simple invocation }}
{{blog/post-item}}

{{! invocation with block }}
{{#blog/post-item}}
  <span>block example</span>
{{/blog/post-item}}

With Ember 3.10 you can alternatively invoke the same, nested component in your template with angle bracket invocation syntax:

1
2
3
4
5
6
7
{{! simple invocation }}
<Blog::PostItem />

{{! invocation with block }}
<Blog::PostItem>
  <span>block example</span>
</Blog::PostItem>

Use the :: separator in the component's tag name to separate directory names and component title as seen in the example above.

This feature has no impact on the way components are looked up on the container of your application. If e.g. you want to lookup the factory of a component using the owner API, you can continue using the traditional syntax (component:blog/post-item).

You can read more about this feature in the original Request for Comments (RFC).

Angle Bracket Invocation for Built-In Components (2 of 4)

With Ember 3.10+ you can use angle bracket invocation syntax for the three built-in components that Ember itself provides to your application automatically: input, link-to and textarea. This version of Ember aligns the API of these built-ins with the requirements of the angle bracket invocation syntax.

Previously, you were only able to invoke built-ins in your template using the classic, curly braces syntax:

1
2
3
4
5
{{input type="text" value="Katie Gengler"}}

{{link-to "photos.edit" photo}}

{{textarea value=postComment cols="20" rows="6"}}

With Ember 3.10 and higher, you may alternatively use the angle bracket invocation syntax as follows:

1
2
3
4
5
6
7
8
9
<Input @type="text" @value="Katie Gengler" />

{{! link-to with a single model }}
<LinkTo @route="photos.edit" @model={{photo}} />

{{! link-to with several models }}
<LinkTo @route="photos.edit" @models={{array photo anotherPhoto}} />

<Textarea @value={{this.postComment}} @cols="20" @rows="6" />

You can read more about the API of built-in components when used with angle bracket invocation syntax in the original RFC.

RouteInfo Metadata (3 of 4)

An Ember application provides information about routes via the RouteInfo object. For example, the Transition object that is provided to event listeners for route changes provides a from and to property representing a RouteInfo object. These provide information about the former and the entry route.

With the new RouteInfo Metadata feature released in Ember 3.10 you can bind application-specific information to RouteInfo objects. Despite being a low-level primitive, this new API is not only useful for addon authors, but also for Ember application developers in general.

The RouteInfo Metadata feature adds a buildRouteInfoMetadata method to the Route API whose return value will be added to the respective RouteInfo object as a metadata property.

If, for example, you wanted to track a user's details together with a tracking event for visiting the profile page, you could leverage the RouteInfo's metadata as follows:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// app/route/profile.js
import Route from '@ember/routing/route';
import { inject } from '@ember/service';

export default Route.extend({
  user: inject('user'),
  buildRouteInfoMetadata() {
    return {
      trackingKey: 'page_profile',
      user: {
        id: this.user.id,
        type: this.user.type
      }
    }
  }
  // ...
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// app/services/analytics.js
import Service, { inject } from '@ember/service';

export default Service.extend({
  router: inject('router'),
  init() {
    this._super(...arguments);
    this.router.on('routeDidUpdate', (transition) => {
      let { to, from } = transition;
      let fromMeta = from.metadata;
      let toMeta = to.metadata;
      ga.sendEvent('pageView', {
        from: fromMeta,
        to: toMeta,
        timestamp: Date.now(),
      })
    })
  },
  // ...
});

We encourage you to give the original RFC a read for more details about the API and other interesting use cases for RouteInfo metadata in your application.

Native Decorator Support (4 of 4)

With Ember.js 3.10 you get the possibility to use native decorators in your application. To learn how to get started using native decorators, have a look at the original RFC.

Deprecations (1)

Deprecations are added to Ember.js when an API will be removed at a later date. Each deprecation has an entry in the deprecation guide describing the migration path to a more stable API. Deprecated public APIs are not removed until a major release of the framework.

Consider using the ember-cli-deprecation-workflow addon if you would like to upgrade your application without immediately addressing deprecations.

For more details on changes in Ember.js 3.10, please review the Ember.js 3.10.0 release page.

Application Controller Router Properties (1 of 1)

ApplicationController#currentPath and ApplicationController#currentRouteName are deprecated in Ember.js 3.10. They are no longer needed since the RouterService now has RouterService#currentPath and RouterService#currentRouteName.

If you still rely on these deprecated APIs then please have a look at the deprecation app to see how you can get the same functionality from the Router service.

Ember Data

Ember Data is the official data persistence library for Ember.js applications.

There are no changes in 3.10. It is a re-release of 3.9.3 to allow for an extended stabilization period for the Packages RFC. You can follow along with the remaining packages work here.

This information is also available on the Ember Data 3.10.0 release page.

Ember CLI

Ember CLI is the command line interface for managing and packaging Ember.js applications. 3.10.0 had a small bug with blueprints that caused CI trouble for some platforms, which is fixed by a patch in version 3.10.1.

Upgrading Ember CLI

You may upgrade Ember CLI easily using the ember-cli-update project:

1
2
npm install -g ember-cli-update
ember-cli-update

This utility will help you to update your app or add-on 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 3.10 New Features (2)

Native Decorator Support (1 of 2)

As with Ember.js, Ember CLI now supports native decorators.

Drop Node 6 support (2 of 2)

Ember CLI 3.10 officially drops support for Node 6. Ember.js still supports it until all the blueprints are updated. Maintainers of addons are encouraged to make a major version release of their addons when upgrading to 3.10, since dropping Node 6 support may be a breaking change for some of their library's users.

Deprecations (0)

There are no deprecations in Ember CLI 3.10.

For more details on the changes in Ember CLI 3.10 and detailed upgrade instructions, please review the Ember CLI 3.10.0 release page.

Thank You!

As a community-driven open-source project with an ambitious scope, each of these releases serve 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.

Read Full Article
  • Show original
  • .
  • Share
  • .
  • Favorite
  • .
  • Email
  • .
  • Add Tags 

Ember in 2018 (and 2019) has been more exciting than ever! We've been working diligently to advance the project based on our 2018 Roadmap, but while we work on that, it is time to think about the future.

The Ember team would like you to write a blog post to propose goals and direction for Ember for the next year. The content of these posts will help us to draft our next Roadmap RFC.

What's a Roadmap RFC?

The Roadmap will outline the community's priorities for the next year. It will be presented as an RFC and follow the normal RFC process. The RFC will be written based on community input--the blog posts we've requested and other community discussion--and curation from the core teams.

This is will be our second annual Roadmap RFC. To see the results of the process, see the 2018 Roadmap RFC.

The 2018 Roadmap led to the "Octane Edition" of Ember, currently in preview. Octane includes many features, most of which have already landed in a stable release. As the edition nears completion, we want the community to think beyond Octane to the next steps for Ember. The resulting Roadmap for 2019 will not necessarily include an edition but will outline what we will be working toward.

The Roadmap process is part of our on-going effort to have shared, clear, and published project-wide goals.

#EmberJS2019

To contribute a post: Tweet a link to the post with the hashtag #EmberJS2019 or email a link to roadmap@emberjs.com. These posts will be collected and categorized, and each one will be read by those working to draft the Roadmap RFC.

Format

Your post can be on any online writing platform, but we suggest:

Topic ideas

We'd like to hear about any aspect of Ember you have hopes for in 2019--not just about the Ember.js framework. Please include your desires for Ember Data, Ember CLI, learning, tooling, the community, addons, and anything else Ember-related.

Here are some broad ideas that might help you get started:

  • Ideas for community programs
  • Framework features
  • Documentation improvements
  • Ecosystem needs
  • Tooling enhancements

We strongly encourage posts replying to or building off of others' posts. Please try to keep the discussion in the form of blog posts.

To kickoff the process, we've collected some early posts:

Preliminary Timeline

Dates may change, but this is a general overview of the upcoming process:

May 20: call for posts!

Throughout May and early June: read posts, draft Roadmap RFC

June 17: cutoff for posts--you can still write them (please do!), but we cannot guarantee they'll be read before the Roadmap creation

Late June: Post the Roadmap RFC on GitHub

Mid July: assuming we've reached consensus, and following the normal RFC process, accept final Roadmap

This is our second call for blog posts. For inspiration, or to better understand the process, you may want to look at the 2018 blog posts, as collected by community member Lennex Zinyando or directly on twitter, and the 2018 Roadmap RFC.

Thanks

Many thanks also to the Rust Core team and the Rust community, from whom we are still learning and adapting process.

Read Full Article
  • Show original
  • .
  • Share
  • .
  • Favorite
  • .
  • Email
  • .
  • Add Tags 

Goeie dag Emberistas! ๐Ÿน

This week: model hook illuminated in Ember.js Guides ๐Ÿ’ก, EmberCamp CFP open ๐Ÿ•, Ember podcasts to keep us happy ๐Ÿ“ป๐Ÿฉ๐ŸŽง, a proposal to use Empress to render the Ember RFCs ๐Ÿ“ƒ, a new release of the ember-shepherd addon ๐Ÿšข, the new EmberWork.com โœŒ๏ธ, FAQs about Ember.js in 2019 ๐Ÿ™‹โ€โ™€๏ธ๐Ÿ™‹โ€โ™‚๏ธ, and last, but not least, trapping focus ๐Ÿ’ฅ for better a11y in your Ember apps!

model Hook, Illuminated in Ember.js Guides ๐Ÿ’ก

If you haven't yet, please revisit and share the latest Ember.js Guides on Specifying a Route's Model! You will find beginner-friendly, comprehensive explanation of what you can do in a route's model hook. ๐Ÿ’–

In particular, our guide now shows:

  • Why we want to use the model hook
  • How to use model, depending on your use case and knowledge of Ember
  • How to use dynamic segments in model
  • How to debug model

These updates are stepping stones to @jenweber's major initiative to help developers learn Ember Data easily. Please thank Jen for her positive work, as well as @acorncom, @lisaychuang, @mike-north, and @zachgarwood for their help with reviews!

EmberCamp CFP Open ๐Ÿ•

Join us on September 16th for the second annual EmberCamp Chicago! Weโ€™ll be hosting 150+ of the worldโ€™s top Ember developers for a full day of Ember talks. Have a talk idea? The EmberCamp Call For Proposals (CFP) is open now through June 15th. If you submit early, you'll be able to receive feedback before the CFP closes!

Proposal types:

  • 30 minute talks
  • 10 minute talks
  • 30-90 minute workshops
  • 30-90 minute activities (new this year!)

Whether you want to come enjoy the breathtaking views, make new Ember friends, or get the scoop on what's coming nextโ€”EmberCamp Chicago is the place to be!

Jabber Away about Javascript ๐Ÿ“ป

A new podcast episode of Javascript Jabber has been released in which Sam Selikoff is interviewed by AJ ONeal about Ember. ๐Ÿน They go into detail regarding how Sam got started working with Ember and they also talked a little bit about the history of the Ember framework.

From the shownotes:

Sam mentions some of the biggest advantages in using Ember, and what it should and should not be used for. He explains the architecture of Ember apps, addresses some of the performance concerns and then goes into Octane in detail.

So make sure to give it a listen! ๐ŸŽง You can tell us, and Sam, what you thought on the #media channel on Discord.

Do or Donut, There is No Sizzlepie ๐Ÿฉ

The Ember Weekend Podcast released an episode last month in which Chase, Robert, and Jonathan chat about various topics such as: an EmberConf recap (including secret donut info and Sizzlepies! ๐Ÿฅง), the Octane preview (including a video by @gavinjoyce), Embroider, as well as an EmberMap video "An Intro to Broccoli.js".

Check it out here! ๐ŸŽ™ And pop into #media to share your thoughts with the community and the hosts!

Use Empress to Render the Ember RFCs ๐Ÿ“ƒ

@mansona proposed an implementation change to how we currently "render" our RFCs in the website. The proposed change is to move from using mdbook, which provides better formatting for markdown files, to employing Empress techniques to render the RFC pages.

In the same proposal, the official URL of an RFC was proposed to move from https://emberjs.github.io/rfcs/0425-website-redesign.html to https://rfcs.emberjs.com/0425-website-redesign/. This would then be considered a stable URL and will require us to maintain redirects if we ever change them.

Read and comment more on GitHub about the proposed change!

A New Version of the ember-shepherd Addon ๐Ÿš€

@rwwagner90 and the crew at Ship Shape have released ๐Ÿšข version 5.0.0 of the ember-shepherd addon, an awesome site tour library. The updated version includes improved loading speedsโšก๏ธ due to lazy loading with ember-auto-import.

In related news, Shepherd, the JavaScript library that underlies the ember addon that Ship Shape also maintains, has been trending ๐Ÿ“ˆ on Github!

Check out the new release of ember-shepherd here.

EmberWork.com โœŒ๏ธ

We often hear folks say they want to work in Ember, but they can't find an Ember role! There's a new community resource for thatโ€”Ember Work. Ember Work was built to make things a little easier on you. No more scouring LinkedIn or other sources. And no more jobs that are not quite Ember.

Have an open role on your team? Share it on Ember Work for free. (While you're at it, post it on #ember-jobs on Discord too!) Thanks @herzzanu and @Exelord for building this resource for the community. ๐Ÿ’ผ

FAQs about Ember.js in 2019 ๐Ÿ™‹โ€โ™€๏ธ๐Ÿ™‹โ€โ™‚๏ธ

As developers who have worked with Ember for years, we can sometimes forget that we had once approached Ember with a bit of curiosity ๐Ÿ˜‹, a bit of caution ๐Ÿ˜ง, and a bit of confusion ๐Ÿค•. As Ember approaches its 8th birthday, we want to continue to reach out to the wider JavaScript community, welcome new developers, and help out with their questions.

This week, @jenweber took her time to engage a wide audience on Medium and answer commonly asked questions about Ember. What companies use Ember? What is Octane? How can I get started with learning Ember?

We encourage you to read and share the blog post! If you have time, we encourage you to pen and share your Ember article as well. ๐Ÿ™

Intentional Element Focus with Ember Focus Trap ๐Ÿ’ฅ

On May 16th, Global Accessibility Awareness Day (GAAD) inspired developers all around the world to reflect on the way they use and build applications for the web. In her recent call-to-action for GAAD ๐Ÿ“ฃ, @MelSumner encouraged the Ember community to take the time to browse the web using keyboard or an assistive technology, and to spend time to improve accessibility in their own projects.

Addon author @josemarluedke followed this call-to-action and just published Ember Focus Trap! It's based on the JavaScript library Focus Trap that helps you to intentionally trap focus in certain DOM nodes. This makes it easy for you to improve the keyboard accessibility of otherwise inaccessible elements such as modal dialogs.

With Ember Focus Trap, adding focus to interactive elements in your Ember app is only an ember install away. Check it out today!

Contributors' Corner ๐Ÿ‘

This week we'd like to thank @jenweber, @sivakumar-kailasam, @tendermario, @vasind, @locks, @maurodibert, @2hu12, @Turbo87, @rwjblue, @NullVoxPopuli, @chiragpat, @pete-the-pete, @runspired, @rwwagner90, @scalvert, @igorT, @maxfierke, @jessica-jordan, @jamescdavis, @kellyselden and @ef4 for their contributions to Ember and related repositories! ๐Ÿ’–

Got a Question? Ask Readers' Questions! ๐Ÿค“

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 bit.ly/ask-ember-core. And donโ€™t worry, there are no silly questions, we appreciate them all - promise! ๐Ÿคž

#embertimes ๐Ÿ“ฐ

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.

That's another wrap! โœจ

Be kind,

Chris Ng, Isaac Lee, Amy Lam, Alon Bukai, Jared Galanis, Jessica Jordan and the Learning Team

Read Full Article
  • Show original
  • .
  • Share
  • .
  • Favorite
  • .
  • Email
  • .
  • Add Tags 

May 16th is the 8th annual Global Accessibility Awareness Day (GAAD) - so why am I writing this blog post today instead of then? Well, this year I am calling the Ember community to take action on May 16th.

My goal is that after you read this blog post, you will block off some amount of time on your calendar for Thursday, May 16th. I am going to provide a few ideas that will take different amounts of time, so that no matter what kind of time you have available, you will be able to participate.

5-30 minutes
  • Visibly support accessibility efforts on your social media platform of choice. Here are some ideas:
    • Share the link to GAAD, and vocalize that all websites should be accessible. Make sure to include the hashtag A11y (#A11y).
    • Start following (if you aren't already) prominent Accessibility Advocates & Engineers. Programmers like Lรฉonie Watson, Scott O'Hara, Marcy Sutton, Eric Bailey, Carie Fisher, and Zoรซ Bijl are all a great place to start!
    • Share your own advice on how to get started with digital accessibility.
  • Find the existing keyboard shortcuts for your operating system, and schedule time to become more familiar with them, via https://dequeuniversity.com/screenreaders/.
30-60 minutes
  • Go mouseless: using only your keyboard, visit a website that you helped build (even if it's just a local build) and try to navigate around the app with only your keyboard. Don't have a website to visit? Visit our own website (emberjs.com) and try it out - and if you find things that don't work, file an issue or submit a PR!
  • Check the modals/dialogs/popups in your application. Do they trap focus? File an issue or submit a PR if they do not. Not sure what that means? Check out this simple modal addon for a demonstration.
60+ minutes

As for me, I'll be spending May 16th in the #topic-a11y channel on the Ember Community Discord chat server - ready to help you with whatever accessibility questions you might have. If you are able to help answer questions and knowledge share that day as well, please do join in!

Everything you do matters. Our community is well-known for being inclusive- let's make sure that our commitment to inclusion includes the digital accessibility of not only Ember.js, but the products we build with it.

Do you have something planned for Thursday? I'd love to hear from you!

Read Full Article
  • Show original
  • .
  • Share
  • .
  • Favorite
  • .
  • Email
  • .
  • Add Tags 
Ember Blog by Ember - 1M ago

Today the Ember project is releasing version 3.9 of Ember.js, Ember Data, and Ember CLI. This release kicks off the 3.10 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:

Additionally, versions 3.8 of Ember and Ember Data are now promoted to LTS, which stands for Long Term Support. An LTS version of Ember continues to receive security updates for 9 release cycles (54 weeks) and bugfixes for 6 cycles (36 weeks). LTS releases typically occur every four minor versions. The previous LTS version for Ember was 3.4.

Ember.js

Ember.js is the core framework for building ambitious web applications.

Changes in Ember.js 3.9

Ember.js 3.9 is an incremental, backwards compatible release of Ember with bugfixes, performance improvements, and minor deprecations. There are zero (0) new features, four (4) deprecations, and eight (8) bugfixes in this version.

New Features (0)

No new features introduced in Ember.js 3.9.

Deprecations (4)

Deprecations are added to Ember.js when an API will be removed at a later date. Each deprecation has an entry in the deprecation guide describing the migration path to a more stable API. Deprecated public APIs are not removed until a major release of the framework.

Consider using the ember-cli-deprecation-workflow addon if you would like to upgrade your application without immediately addressing deprecations.

For more details on changes in Ember.js 3.9, please review the Ember.js 3.9.0 release page.

Computed Property Overridability (1 of 4)

Ember's computed properties are overridable by default if no setter is defined. This behavior is bug prone and has been deprecated. readOnly(), the modifier that prevents this behavior, will be deprecated once overridability has been removed. Please have a look at the deprecations app for more information on this deprecation.

Computed Property .property() Modifier (2 of 4)

.property() is a modifier that adds additional property dependencies to an existing computed property. To update, move the dependencies to the main computed property definition and you shouldn't see a deprecation warning any more. For more information please refer to the deprecations app.

Computed Property Volatility (3 of 4)

.volatile() is a computed property modifier which makes a computed property recalculate every time it is accessed, instead of caching. It also prevents property notifications from ever occuring on the property, which is generally not the behavior that developers are after. Volatile properties are usually used to simulate the behavior of native getters, which means that they would otherwise behave like normal properties.

To update, consider upgrading to native class syntax and using native getters directly instead. There's guide on how to do this in the deprecations app.

Deprecate @ember/object#aliasMethod (4 of 4)

@ember/object#aliasMethod is a little known and rarely used method that allows user's to add aliases to objects defined with EmberObject. The deprecation warning can be removed by refactoring it into having one function call the other directly. To see how to do this, please refer to the deprecations app

Ember Data

Ember Data is the official data persistence library for Ember.js applications.

Changes in Ember Data 3.9 New Features (1)

Replace jQuery with fetch (1 of 1)

As part of the RFC for removing jQuery by default, Ember Data has now replaced all internal uses of jQuery and replaced it with fetch instead.

You can follow the progress of the RFC on the RFC-tracking page.

Deprecations (0)

No new deprecations introduced in Ember Data 3.9.

For more details on changes in Ember Data 3.9, please review the Ember Data 3.9.0 release page.

Ember CLI

Ember CLI is the command line interface for managing and packaging Ember.js applications.

Upgrading Ember CLI

You may upgrade Ember CLI easily using the ember-cli-update project:

1
2
npm install -g ember-cli-update
ember-cli-update

This utility will help you to update your app or add-on 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 3.9

There are two (2) new features and one (1) bugfix.

New Features (2)

ember-welcome-page updated to use angle bracket invocation syntax (1 of 2)

The welcome page that is generated in new Ember apps is now converted to use the angle bracket invocation syntax. This means that instead of adding {{welcome-page}} to application.hbs we now add <WelcomePage />.

Support for Node 11 (2 of 2)

Ember CLI is now tested against Node 11. If developers use it for their apps and addons, the CLI will not show a warning anymore.

Bugfixes (1)

Module unification blueprint updates (1 of 1)

The "Module Unification" blueprints have received several bugfixes and enhancements. For more details have a look at the release notes.

Deprecations (0)

No new deprecations introduced in Ember CLI 3.9.

For more details on the changes in Ember CLI 3.9 and detailed upgrade instructions, please review the Ember CLI 3.9.0 release page.

Thank You!

As a community-driven open-source project with an ambitious scope, each of these releases serve 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.

Read Full Article
  • Show original
  • .
  • Share
  • .
  • Favorite
  • .
  • Email
  • .
  • Add Tags 

Separate tags by commas
To access this feature, please upgrade your account.
Start your free month
Free Preview