Issues upgrading from 2.13 to 3.1

I’m getting two errors when upgrading to the latest version. The error message for the first is below. It gives an error when calling this.get('features'). features is the ember-feature-flags addon. The suggestion from the error is to use a .get which is already being used in the code.

The second comes from accessing controllers. When using ember inspecter, I can see that the application controller is registered.

Thanks in advance!

This is an example of the error message in the second instance

It looks like the Ember container’s own probing for _onLookup is triggering the assertion. Seems like a possible Ember bug to me, please file an issue.

This sounds very similar to what was reported in You attempted to access the `__DESCRIPTOR__` property (of <frontend@service:prototypes::ember581>) · Issue #16263 · emberjs/ember.js · GitHub and fixed by [BUGFIX beta] Ensure accessing a "proxy" itself does not error. by rwjblue · Pull Request #16274 · emberjs/ember.js · GitHub.

I’m not sure why the _onLookup probing didn’t fail those tests…

It looks like the second error is related to: Behavior around `Ember.inject.controller` changed in 2.14 · Issue #15527 · emberjs/ember.js · GitHub Creating an application.js controller has solved it

There is a recently reported issue in Ember regarding _onLookup triggering the proxy assertion when used within an engine. Might be the same as what you were seeing on upgrade.

Would you mind reviewing and chiming in?

I was using ember-feature-flags within an engine and got this error: screen shot 2018-05-02 at 3 17 59 pm

I took a screen shot of where I located the exception here: screen shot 2018-04-30 at 8 22 19 pm

Based on the above info I think ember engines is not compatible with Ember 3.1

I solved the second issue by creating a new component for the missing controller. It looks like something changes between 2.13 and 2.14 where controllers can no longer be implied off the route. That is, I had a route with a model and then I tried to reference the model through an implied controller. The controller needed to be explicitly defined.

We have been working on updating to 3x for a while now. I highly recommend incrementing to 3x bumping ember-cli, ember-data, and ember-source to successive latest minor versions of 2.x. We have found that minor bugs can be solved incrementally this way without so much trouble finding where the problem is.