I'm just going to start this as a thread to give everyone notice of work being put into the core reconciliation algorithm.
This will need to include features like:
If you're working on fixing issues with life-cycles or the core reconciliation parts (like child reconciliation) then you might want to be aware that this is a moving target. There might be requests for changes unrelated to the status quo but related to this future work. It might require a lot of context and commitment to be able to contribute to these parts.
However, if what you're fixing is DOM issues, packaging, builds, diffing of props for styles, react native etc. Then it is probably unrelated to this work and you should feel free to send out PRs.
Really looking forward to how this page changes in the future :smile: https://facebook.github.io/react/docs/reconciliation.html
@timdorr Perhaps ironically, that page is one of the few things that probably won't change. It's just the details of the implementation (specifically with regards to the flow of control) that will change; the high-level description remains the same.
First two are things I'm really missed in React. Will be happy to help with them if I can.
There might be requests for changes unrelated to the status quo but related to this future work. It might require a lot of context and commitment to be able to contribute to these parts
For those of us interested fixing stuff in these areas, or are working on renderers, tooling, or other stuff that requires deep knowledge of the internals, how would we gain this context?
Can this work be done in the open, on the repo? Whether that's via RFC, public branches, live planning meetings, or just a public PR? It would be great to track, engage and contribute from the start instead of towards the end once the code is mostly baked and pushed.
cc: @iamdustan
@jquense Yep, as always, we will do our best to keep the community informed and involved. Currently it's all theoretical discussions about scheduling techniques and tradeoffs. We will certainly continue to post updates as they become available.
:clap: This is an exciting turn of events!
From following along for a while it seems as thouhh GH issues and random Twitter conversation/blog posts have been the primary way of tracking current thinking. Should we expect that this will continue and context gathering will come through PR and issue comments and the like or will there be a more formal design document describing potential paths and tradeoffs as these ideas become more solidified?
Just commenting on this thread to stay informed with updates. This will be a much needed feature.
Edit: @yaycmyk Didn't realize that was a thing, hah. Thanks for the heads up!
For others interested in staying up to date, just click the "Subscribe" button:
is there any resource we can get to know details of the current algorithm's implementation? Or at least, pointing us to that part in the current code base.
@haohcraft
I found this method really useful to understand how reconciliation works today: https://twitter.com/dan_abramov/status/699395627264962561
@gaearon NEAT!!!Thanks
Some initial work started here: https://github.com/facebook/react/pull/6690
Related:
Exciting to see the progress! Awesome to have a chart of tests passing.
While unofficial, this may also be helpful to interested passerby curious what Fiber is:
https://github.com/acdlite/react-fiber-architecture
I think we did it?
React 16 Beta 1 ships with the new algorithm.
https://github.com/facebook/react/issues/10294
This is not the end but a beginning of a new chapter for React.
The basics of all these things are now in place (even though some are not exposed yet), and I鈥檓 excited to see how they will evolve over time.
Most helpful comment
I think we did it?
React 16 Beta 1 ships with the new algorithm.
https://github.com/facebook/react/issues/10294
This is not the end but a beginning of a new chapter for React.
The basics of all these things are now in place (even though some are not exposed yet), and I鈥檓 excited to see how they will evolve over time.