react/packages/react-cache
Andrew Clark 4d5cb64aa2
Rewrite ReactFiberScheduler for better integration with Scheduler package (#15151)
* Rewrite ReactFiberScheduler

Adds a new implementation of ReactFiberScheduler behind a feature flag.
We will maintain both implementations in parallel until the new one
is proven stable enough to replace the old one.

The main difference between the implementations is that the new one is
integrated with the Scheduler package's priority levels.

* Conditionally add fields to FiberRoot

Some fields only used by the old scheduler, and some by the new.

* Add separate build that enables new scheduler

* Re-enable skipped test

If synchronous updates are scheduled by a passive effect, that work
should be flushed synchronously, even if flushPassiveEffects is
called inside batchedUpdates.

* Passive effects have same priority as render

* Revert ability to cancel the current callback

React doesn't need this anyway because it never schedules callbacks if
it's already rendering.

* Revert change to FiberDebugPerf

Turns out this isn't neccessary.

* Fix ReactFiberScheduler dead code elimination

Should initialize to nothing, then assign the exports conditionally,
instead of initializing to the old exports and then reassigning to the
new ones.

* Don't yield before commit during sync error retry

* Call Scheduler.flushAll unconditionally in tests

Instead of wrapping in enableNewScheduler flag.
2019-04-02 15:49:07 -07:00
..
npm Rename simple-cache-provider to react-cache (#13755) 2018-10-01 09:07:40 -06:00
src Rewrite ReactFiberScheduler for better integration with Scheduler package (#15151) 2019-04-02 15:49:07 -07:00
index.js Rename simple-cache-provider to react-cache (#13755) 2018-10-01 09:07:40 -06:00
package.json Add directory details to the package.json of all packages (#14628) 2019-01-18 20:21:12 +00:00
README.md Rename simple-cache-provider to react-cache (#13755) 2018-10-01 09:07:40 -06:00

react-cache

A basic cache for React applications. It also serves as a reference for more advanced caching implementations.

This package is meant to be used alongside yet-to-be-released, experimental React features. It's unlikely to be useful in any other context.

Do not use in a real application. We're publishing this early for demonstration purposes.

Use it at your own risk.

No, Really, It Is Unstable

The API may will change wildly between versions.