Relay: childContextTypes cannot be defined on a functional component.

Created on 4 Jul 2016  路  6Comments  路  Source: facebook/relay

I'm upgrading a React Native app, now whenever a render happens I'm seeing this in the logcat :

ReactNativeJS: Warning: RelayRootContainer(...): childContextTypes cannot be defined on a functional component.

I assume the warning is related to this : https://github.com/facebook/react/pull/6933
Is anybody else seeing those ?

Most helpful comment

Yup, this wasn't a breaking change. RelayRootContainer is still supported and not officially deprecated. We'll have a bug fix to avoid the warning in the next release.

All 6 comments

Looks like I simply needed to move from Relay.RootContainer to Relay.Renderer.
My bad, sorry for the noise.

I'm seeing this. Is RootContainer no longer supported? If it is this ticket should be re-opened.

My understanding is that they are slowly transitioning to Relay.Renderer :
https://facebook.github.io/relay/docs/api-reference-relay-renderer.html#content

The APIs are similar, it was quite easy to move from Relay.RootContainer to Relay.Renderer.

I also got bit by this. Is there any way to know about these breaking changes beforehand? Where do they get announced?

You might want to read the release notes : https://github.com/facebook/relay/releases

This particular change was introduced in v0.8.0 : https://github.com/facebook/relay/releases/tag/v0.8.0

This doesn't really qualify as a breaking change since it's just a warning and the old API still works.
However, I'd say Relay (along with GraphQL, React and React-Native) is one of the few tools where it's a good idea to read the changelog before upgrading because the API is still evolving.

Yup, this wasn't a breaking change. RelayRootContainer is still supported and not officially deprecated. We'll have a bug fix to avoid the warning in the next release.

Was this page helpful?
0 / 5 - 0 ratings