Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When will react-fiber be officially released? #9463

Closed
shweta-code opened this issue Apr 20, 2017 · 8 comments

Comments

@shweta-code
Copy link

commented Apr 20, 2017

We want to start a new project . We did POC for about a month on choice of frameworks. We chose React for building our application. So what is the plan on officially releasing React-fiber because we dont want to be doomed.

@RyanGosden

This comment has been minimized.

Copy link

commented Apr 20, 2017

We are in the same boat. We would love to have a more specific date so we know where we stand.

@ramesaliyev

This comment has been minimized.

Copy link

commented Apr 20, 2017

We're also waiting for it. And react-fiber will not be optional right? 16. version of react will be fiber? am i right?

@TrySound

This comment has been minimized.

Copy link
Contributor

commented Apr 20, 2017

You all can start with 15.5 release. There won't be notable breaking changes in API except async setState. You just need to follow recomentation about it.

@gaearon

This comment has been minimized.

Copy link
Member

commented Apr 20, 2017

Hey!

I wonder if there’s any specific place these concerns are coming from? If there’s a blog post raising panic we’d like to know 😄

And react-fiber will not be optional right? 16. version of react will be fiber?

Yes, React 16 is using Fiber, but in a compatibility mode. All async features are disabled for better compatibility.

There won't be notable breaking changes in API except async setState.

This is incorrect by the way. React 16 operates in compatibility mode. There are no changes to setState in it.

So what is the plan on officially releasing React-fiber because we dont want to be doomed.

Fiber is not a new React API. The internals have changed, but the API stays the same. There are virtually no breaking changes in React 16 associated with Fiber itself.

We do have some breaking changes in React 16 (such as moving createClass to another package). They are completely unrelated to Fiber, and are part of our regular deprecation cycle. As described in the 15.5.0 blog post, we provide automatic scripts (“codemods”) to update your code from deprecating APIs, and give you time to migrate. If you don’t see any warnings when using 15.x, it means your code is ready for React 16 when it comes out.

So what is the plan on officially releasing React-fiber because we dont want to be doomed.

You won’t be “doomed”. If Fiber works out of the box for 30,000 existing components in Facebook codebase, it will likely work for your codebase too. 😉 Start with React 15, fix deprecation warnings if you see any (or wait for third party components to fix them), and when you’re ready, jump ahead to React 16, and your app will just work.

We would love to have a more specific date so we know where we stand.

There is no specific date. It is likely going to be released this summer but we don’t know exactly. But there is no point in waiting for it, just like there was no point in waiting for React 0.14, or React 15. This is just a regular version update, and it works the same way as before.

Further reading:

Hope this addresses your concerns!

@gaearon gaearon closed this Apr 20, 2017

@slorber

This comment has been minimized.

Copy link
Contributor

commented Apr 20, 2017

As far as I can tell, using React since 0.5.2, the core API has always been very stable because the underlying principles remained the same over time.

Except few breaking changes mostly due to language evolutions (like createClass/mixins => ES6 class) you can probably start at React n and migrate to React n+3 without too much pain. I expect this to remain true in the future as well. Bonus: codemods are provided to help so sometimes a migration can be done in 5 minutes.

@petrbela

This comment has been minimized.

Copy link

commented Apr 20, 2017

I can attest to that. I've been using React for almost two years and there has never been a breaking change. Old features are deprecated in the next release but continue to work, and then removed in next+1 release (which is usually at least 6 months later). So you can always upgrade to latest version and have a couple of months to gradually update your code (which is relatively simple thanks to codemods and warnings that tell you exactly what to change).

Compare that, for example, with Angular where major releases require you to update your entire app at once (or be stuck with the old version).

@SavePointSam

This comment has been minimized.

Copy link
Contributor

commented Apr 20, 2017

Question @gaearon,

Yes, React 16 is using Fiber, but in a compatibility mode. All async features are disabled for better compatibility.

Will there be a way to enable async features for even more forward leaning codebases, or are they/their documentation incomplete for React 16?

@gaearon

This comment has been minimized.

Copy link
Member

commented Apr 20, 2017

Will there be a way to enable async features for even more forward leaning codebases

We are still figuring it out for our own codebases. There will likely be some unstable API, you can track #9448 for the discussion.

As of now, there are known bugs in async mode.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants
You can’t perform that action at this time.