Novice translator, light spray (not pour)

Our latest release fixes some bugs with React.lazy. Although there were no API changes, we released a new version, not a patch, but a minor version. (Note: The patch version is V16.6.1, and the minor version is V16.7.)


Why the minor version and not the patch version?

React version numbers have special semantics. Usually, we use a patched version to fix bugs (V16.6.x) and a minor version to release new features (non-destructive V16.x, destructive estimate is V17). However, we have retained the option to release a minor version, even if no new features are included. This is done to preserve patches of change that have a very low chance of causing conflicts. Patches are the most important releases, because they sometimes contain critical bug fixes. This means patched versions are more reliable. The introduction of other bugs is the worst part of the fix, because if people start to distrust the patch, it affects our ability to fix, for example, security holes when critical bugs occur. We never intend to release bugs. React has a reputation for stability, and we want to keep it that way. We do thorough testing before each release. This includes unit testing, build (fuzzy) testing, integration testing, and internal testing of tens of thousands of components. However, we also make mistakes. That’s why we’re releasing minor releases. Our policy is to release a minor version if it contains large and unusual changes, even if its external behavior does not change. When we change the UNstable_ prefix API, we will also release a minor version.

Can I use Hooks now?

Not yet, but soon. In the React Conf, we announced that v16.7 will add Hooks for the first time. We were wrong. We should not bind an unreleased feature to a specific version number. We’ll make sure it doesn’t happen again. Although V16.7 does not contain Hooks, please do not have any doubt about our Hooks, our plans have never changed.

  • Adopt some Hooks proposals (minor planning changes based on feedback).
  • This implementation is incorporated into the React Repo (after the function flag).
  • We are currently in beta, and you should get the official release in a few months.

We’ve heard a lot about people wanting to start using Hooks in their apps, and we can’t wait! But Hooks have changed the way we write components, and we need extra time to get the details right. We hope you will be patient enough to make this exciting new feature widely available. Learn more about our roadmap in our previous post.