[Bugfix] Infinite uDV loop in popstate event by acdlite · Pull Request #32821 · facebook/react (original) (raw)

@acdlite

Found a bug that occurs during a specific combination of very subtle implementation details.

It occurs sometimes (not always) when 1) a transition is scheduled during a popstate event, and 2) as a result, a new value is passed to an already-mounted useDeferredValue hook.

The fix is relatively straightforward, and I found it almost immediately; it took a bit longer to figure out exactly how the scenario occurred in production and create a test case to simulate it.

Rather than couple the test to the implementation details, I've chosen to keep it as high-level as possible so that it doesn't break if the details change. In the future, it might not be trigger the exact set of internal circumstances anymore, but it could be useful for catching similar bugs because it represents a realistic real world situation — namely, switching tabs repeatedly in an app that uses useDeferredValue.

sebmarkbage

rickhanlonii

github-actions bot pushed a commit that referenced this pull request

Apr 5, 2025

@acdlite

Found a bug that occurs during a specific combination of very subtle implementation details.

It occurs sometimes (not always) when 1) a transition is scheduled during a popstate event, and 2) as a result, a new value is passed to an already-mounted useDeferredValue hook.

The fix is relatively straightforward, and I found it almost immediately; it took a bit longer to figure out exactly how the scenario occurred in production and create a test case to simulate it.

Rather than couple the test to the implementation details, I've chosen to keep it as high-level as possible so that it doesn't break if the details change. In the future, it might not be trigger the exact set of internal circumstances anymore, but it could be useful for catching similar bugs because it represents a realistic real world situation — namely, switching tabs repeatedly in an app that uses useDeferredValue.

DiffTrain build for 6a7650c

github-actions bot pushed a commit that referenced this pull request

Apr 5, 2025

@acdlite

Found a bug that occurs during a specific combination of very subtle implementation details.

It occurs sometimes (not always) when 1) a transition is scheduled during a popstate event, and 2) as a result, a new value is passed to an already-mounted useDeferredValue hook.

The fix is relatively straightforward, and I found it almost immediately; it took a bit longer to figure out exactly how the scenario occurred in production and create a test case to simulate it.

Rather than couple the test to the implementation details, I've chosen to keep it as high-level as possible so that it doesn't break if the details change. In the future, it might not be trigger the exact set of internal circumstances anymore, but it could be useful for catching similar bugs because it represents a realistic real world situation — namely, switching tabs repeatedly in an app that uses useDeferredValue.

DiffTrain build for 6a7650c

acdlite added a commit to acdlite/next.js that referenced this pull request

Apr 5, 2025

@acdlite

acdlite pushed a commit to vercel/next.js that referenced this pull request

Apr 7, 2025

@vercel-release-bot

acdlite added a commit to acdlite/prefetch-test that referenced this pull request

Apr 7, 2025

@acdlite

This includes a React bugfix to popstate transitions. (See: facebook/react#32821.) Seems to fix the crashes on back/forward we were seeing.

feedthejim pushed a commit to vercel/next.js that referenced this pull request

May 14, 2025

@vercel-release-bot @feedthejim

This was referenced

Oct 2, 2025

This was referenced

Oct 20, 2025

@doums doums mentioned this pull request

Oct 31, 2025

ch4og pushed a commit to csmplay/mapban that referenced this pull request

Nov 18, 2025

@ch4og

This PR contains the following updates:

Package Change Age Confidence
@types/react (source) 19.1.10 -> 19.2.6 age](https://docs.renovatebot.com/merge-confidence/) confidence](https://docs.renovatebot.com/merge-confidence/)
@types/react-dom (source) 19.1.7 -> 19.2.3 age](https://docs.renovatebot.com/merge-confidence/) confidence](https://docs.renovatebot.com/merge-confidence/)
react (source) 19.1.1 -> 19.2.0 age](https://docs.renovatebot.com/merge-confidence/) confidence](https://docs.renovatebot.com/merge-confidence/)
react-dom (source) 19.1.1 -> 19.2.0 age](https://docs.renovatebot.com/merge-confidence/) confidence](https://docs.renovatebot.com/merge-confidence/)

Release Notes

facebook/react (react)

v19.2.0

Compare Source

Below is a list of all new features, APIs, and bug fixes.

Read the React 19.2 release post for more information.

New React Features
New React DOM Features
Notable changes
All Changes
React
React DOM
React Server Components
React Reconciler

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.



This PR has been generated by Renovate Bot.

Reviewed-on: https://git.in.csmpro.ru/csmpro/csm-mapban/pulls/36 Co-authored-by: Renovate Bot renovate@csmpro.ru Co-committed-by: Renovate Bot renovate@csmpro.ru

@claude claude bot mentioned this pull request

Dec 8, 2025

1 task

mattdanielbrown added a commit to mattdanielbrown/netlify-faunadb-example-todo-app that referenced this pull request

Jan 14, 2026

@mattdanielbrown

snyk-top-banner

Snyk has created this PR to upgrade react from 16.14.0 to 19.2.3.

:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


Release notes
Package name: react
  • 19.2.3 - 2025-12-11

    React Server Components

  • 19.2.2 - 2025-12-11

    React Server Components

  • 19.2.1 - 2025-12-03

    React Server Components

  • 19.2.0 - 2025-10-01

    Below is a list of all new features, APIs, and bug fixes.

    Read the React 19.2 release post for more information.

    New React Features

    • <Activity>: A new API to hide and restore the UI and internal state of its children.
    • useEffectEvent is a React Hook that lets you extract non-reactive logic into an Effect Event.
    • cacheSignal (for RSCs) lets your know when the cache() lifetime is over.
    • React Performance tracks appear on the Performance panel’s timeline in your browser developer tools

    New React DOM Features

    • Added resume APIs for partial pre-rendering with Web Streams:
    • Added resume APIs for partial pre-rendering with Node Streams:
    • Updated prerender APIs to return a postponed state that can be passed to the resume APIs.

    Notable changes

    • React DOM now batches suspense boundary reveals, matching the behavior of client side rendering. This change is especially noticeable when animating the reveal of Suspense boundaries e.g. with the upcoming <ViewTransition> Component. React will batch as much reveals as possible before the first paint while trying to hit popular first-contentful paint metrics.
    • Add Node Web Streams (prerender, renderToReadableStream) to server-side-rendering APIs for Node.js
    • Use underscore instead of : IDs generated by useId

    All Changes

    React

    React DOM

    React Server Components

    React Reconciler

    eslint-plugin-react-hooks@6.1.0

    Note: Version 6.0.0 was mistakenly released and immediately deprecated and untagged on npm. This is the first official 6.x major release and includes breaking changes.

    • Breaking: Require Node.js 18 or newer. (@ michaelfaith in #32458)
    • Breaking: Flat config is now the default recommended preset. Legacy config moved to recommended-legacy. (@ michaelfaith in #32457)
    • New Violations: Disallow calling use within try/catch blocks. (@ poteto in #34040)
    • New Violations: Disallow calling useEffectEvent functions in arbitrary closures. (@ jbrown215 in #33544)
    • Handle React.useEffect in addition to useEffect in rules-of-hooks. (@ Ayc0 in #34076)
    • Added react-hooks settings config option that to accept additionalEffectHooks that are used across exhaustive-deps and rules-of-hooks rules. (@ jbrown215) in #34497
  • 19.2.0-canary-fa3feba6-20250623 - 2025-06-23
  • 19.2.0-canary-f9ae0a4c-20250527 - 2025-05-27
  • 19.2.0-canary-f7396427-20250501 - 2025-05-02
  • 19.2.0-canary-f508edc8-20250818 - 2025-08-18
  • 19.2.0-canary-f3a80361-20250911 - 2025-09-11
  • 19.2.0-canary-f1e70b5e-20250811 - 2025-08-11
  • 19.2.0-canary-f1222f76-20250812 - 2025-08-13
  • 19.2.0-canary-ef8b6fa2-20250702 - 2025-07-03
  • 19.2.0-canary-ef889445-20250930 - 2025-09-30
  • 19.2.0-canary-edac0dde-20250723 - 2025-07-23
  • 19.2.0-canary-eaee5308-20250728 - 2025-07-28
  • 19.2.0-canary-ea05b750-20250408 - 2025-04-09
  • 19.2.0-canary-e9db3cc2-20250501 - 2025-05-01
  • 19.2.0-canary-e9638c33-20250721 - 2025-07-21
  • 19.2.0-canary-e6dc25da-20250709 - 2025-07-09
  • 19.2.0-canary-e5dd82a7-20250401 - 2025-04-01
  • 19.2.0-canary-e2332183-20250924 - 2025-09-24
  • 19.2.0-canary-dffacc7b-20250717 - 2025-07-17
  • 19.2.0-canary-df38ac9a-20250926 - 2025-09-26
  • 19.2.0-canary-de5a1b20-20250905 - 2025-09-05
  • 19.2.0-canary-d92056ef-20250627 - 2025-06-27
  • 19.2.0-canary-d85f86cf-20250514 - 2025-05-14
  • 19.2.0-canary-d85ec5f5-20250716 - 2025-07-16
  • 19.2.0-canary-d415fd3e-20250919 - 2025-09-19
  • 19.2.0-canary-d15d7fd7-20250929 - 2025-09-29
  • 19.2.0-canary-cee7939b-20250625 - 2025-06-25
  • 19.2.0-canary-c498bfce-20250426 - 2025-04-28
  • 19.2.0-canary-c4676e72-20250520 - 2025-05-20
  • 19.2.0-canary-c44e4a25-20250409 - 2025-04-10
  • 19.2.0-canary-c260b38d-20250731 - 2025-07-31
  • 19.2.0-canary-c129c242-20250505 - 2025-05-05
  • 19.2.0-canary-c0464aed-20250523 - 2025-05-26
  • 19.2.0-canary-befc1246-20250708 - 2025-07-08
  • 19.2.0-canary-be11cb5c-20250804 - 2025-08-04
  • 19.2.0-canary-bdb4a96f-20250801 - 2025-08-01
  • 19.2.0-canary-bc6184dd-20250417 - 2025-04-18
  • 19.2.0-canary-bbc13fa1-20250624 - 2025-06-24
  • 19.2.0-canary-bb6f0c8d-20250901 - 2025-09-01
  • 19.2.0-canary-b9cfa0d3-20250505 - 2025-05-05
  • 19.2.0-canary-b9a04536-20250904 - 2025-09-04
  • 19.2.0-canary-b94603b9-20250513 - 2025-05-13
  • 19.2.0-canary-b7e2de63-20250611 - 2025-06-11
  • 19.2.0-canary-b6c0aa88-20250609 - 2025-06-09
  • 19.2.0-canary-b4477d38-20250605 - 2025-06-05
  • 19.2.0-canary-b1b0955f-20250901 - 2025-09-01
  • 19.2.0-canary-b10cb4c0-20250403 - 2025-04-03
  • 19.2.0-canary-b0c1dc01-20250925 - 2025-09-25
  • 19.2.0-canary-b07717d8-20250528 - 2025-05-28
  • 19.2.0-canary-b04254fd-20250415 - 2025-04-16
  • 19.2.0-canary-ac7820a9-20250811 - 2025-08-11
  • 19.2.0-canary-ab859e31-20250606 - 2025-06-06
  • 19.2.0-canary-aad7c664-20250829 - 2025-08-29
  • 19.2.0-canary-a96a0f39-20250815 - 2025-08-15
  • 19.2.0-canary-a7a11657-20250708 - 2025-07-08
  • 19.2.0-canary-a00ca6f6-20250611 - 2025-06-11
  • 19.2.0-canary-9be531cd-20250729 - 2025-07-29
  • 19.2.0-canary-99efc627-20250523 - 2025-05-23
  • 19.2.0-canary-97cdd5d3-20250710 - 2025-07-11
  • 19.2.0-canary-9784cb37-20250730 - 2025-07-30
  • 19.2.0-canary-96c61b7f-20250709 - 2025-07-10
  • 19.2.0-canary-93d7aa69-20250912 - 2025-09-12
  • 19.2.0-canary-914319ae-20250423 - 2025-04-23
  • 19.2.0-canary-8e60cb7e-20250902 - 2025-09-02
  • 19.2.0-canary-8d7b5e49-20250827 - 2025-08-28
  • 19.2.0-canary-8ce15b0f-20250522 - 2025-05-22
  • 19.2.0-canary-8bb7241f-20250926 - 2025-09-26
  • 19.2.0-canary-8a8e9a7e-20250912 - 2025-09-12
  • 19.2.0-canary-89a803fc-20250828 - 2025-08-28
  • 19.2.0-canary-886b3d36-20250910 - 2025-09-10
  • 19.2.0-canary-873f7112-20250821 - 2025-08-21
  • 19.2.0-canary-86181134-20251001 - 2025-10-01
  • 19.2.0-canary-84af9085-20250917 - 2025-09-18
  • 19.2.0-canary-83c88ad4-20250923 - 2025-09-23
  • 19.2.0-canary-7deda941-20250804 - 2025-08-05
  • 19.2.0-canary-7a2c7045-20250506 - 2025-05-06
  • 19.2.0-canary-79d9aed7-20250620 - 2025-06-20
  • 19.2.0-canary-7513996f-20250722 - 2025-07-22
  • 19.2.0-canary-73aa744b-20250702 - 2025-07-02
  • 19.2.0-canary-7216c0f0-20250630 - 2025-07-01
  • 19.2.0-canary-72135096-20250421 - 2025-04-22
  • 19.2.0-canary-6eda5347-20250918 - 2025-09-19
  • 19.2.0-canary-6de32a5a-20250822 - 2025-08-22
  • 19.2.0-canary-6b70072c-20250909 - 2025-09-09
  • 19.2.0-canary-6a7650c7-20250405 - 2025-04-05
  • 19.2.0-canary-67a44bcd-20250915 - 2025-09-15
  • 19.2.0-canary-66f09bd0-20250806 - 2025-08-06
  • 19.2.0-canary-65c4decb-20250630 - 2025-06-30
  • 19.2.0-canary-63779030-20250328 - 2025-03-31
  • 19.2.0-canary-60b5271a-20250709 - 2025-07-09
  • 19.2.0-canary-5e0c951b-20250916 - 2025-09-16
  • 19.2.0-canary-5dc00d6b-20250428 - 2025-04-28
  • 19.2.0-canary-5d87cd22-20250704 - 2025-07-04
  • 19.2.0-canary-56408a5b-20250610 - 2025-06-10
  • 19.2.0-canary-548235db-20251001 - 2025-10-01
  • 19.2.0-canary-540cd652-20250403 - 2025-04-04
  • 19.2.0-canary-534bed5f-20250813 - 2025-08-13
  • 19.2.0-canary-526dd340-20250602 - 2025-06-02
  • 19.2.0-canary-4db4b21c-20250626 - 2025-06-26
  • 19.2.0-canary-4a45ba92-20250515 - 2025-05-15
  • 19.2.0-canary-4a36d3ea-20250416 - 2025-04-17
  • 19.2.0-canary-462d08f9-20250517 - 2025-05-19
  • 19.2.0-canary-4448b187-20250515 - 2025-05-16
  • 19.2.0-canary-4123f6b7-20250826 - 2025-08-26
  • 19.2.0-canary-408d055a-20250430 - 2025-04-30
  • 19.2.0-canary-3fbfb9ba-20250409 - 2025-04-09
  • 19.2.0-canary-3fb190f7-20250908 - 2025-09-08
  • 19.2.0-canary-3d14fcf0-20250724 - 2025-07-24
  • 19.2.0-canary-39cad7af-20250411 - 2025-04-14
  • 19.2.0-canary-3958d5d8-20250807 - 2025-08-07
  • 19.2.0-canary-38ef6550-20250508 - 2025-05-08
  • 19.2.0-canary-3820740a-20250509 - 2025-05-12
  • 19.2.0-canary-379a083b-20250813 - 2025-08-14
  • 19.2.0-canary-37054867-20250604 - 2025-06-04
  • 19.2.0-canary-33a1095d-20250827 - 2025-08-27
  • 19.2.0-canary-33661467-20250407 - 2025-04-07
  • 19.2.0-canary-3302d1f7-20250903 - 2025-09-03
  • 19.2.0-canary-2f0e7e57-20250715 - 2025-07-15
  • 19.2.0-canary-280ff6fe-20250606 - 2025-06-06
  • 19.2.0-canary-2805f0ed-20250903 - 2025-09-03
  • 19.2.0-canary-23884812-20250520 - 2025-05-21
  • 19.2.0-canary-223f81d8-20250707 - 2025-07-07
  • 19.2.0-canary-21fdf308-20250508 - 2025-05-09
  • 19.2.0-canary-1eca9a27-20250922 - 2025-09-22
  • 19.2.0-canary-1dc3bdea-20250812 - 2025-08-12
  • 19.2.0-canary-1d6c8168-20250411 - 2025-04-11
  • 19.2.0-canary-1bd1f01f-20251001 - 2025-10-01
  • 19.2.0-canary-1ae0a845-20250603 - 2025-06-03
  • 19.2.0-canary-19baee81-20250725 - 2025-07-25
  • 19.2.0-canary-197d6a04-20250424 - 2025-04-24
  • 19.2.0-canary-143d3e1b-20250425 - 2025-04-25
  • 19.2.0-canary-14094f80-20250529 - 2025-05-29
  • 19.2.0-canary-12bc60f5-20250613 - 2025-06-13
  • 19.2.0-canary-128abcfa-20250917 - 2025-09-17
  • 19.2.0-canary-0ff1d13b-20250507 - 2025-05-07
  • 19.2.0-canary-0bdb9206-20250818 - 2025-08-19
  • 19.2.0-canary-06e89951-20250620 - 2025-06-20
  • 19.2.0-canary-040f8286-20250402 - 2025-04-02
  • 19.2.0-canary-03fda05d-20250820 - 2025-08-20
  • 19.2.0-canary-0038c501-20250429 - 2025-04-29
  • 19.1.4 - 2025-12-11
  • 19.1.3 - 2025-12-11

    React Server Components

  • 19.1.2 - 2025-12-03

    React Server Components

  • 19.1.1 - 2025-07-28

    React

    • Fixed Owner Stacks to work with ES2015 function.name semantics (#33680 by @ hoxyq)
  • 19.1.0 - 2025-03-28
  • 19.1.0-canary-ff628334-20250205 - 2025-02-06
  • 19.1.0-canary-fcb4e0f1-20250219 - 2025-02-20
  • 19.1.0-canary-fc8a898d-20241226 - 2024-12-27
  • 19.1.0-canary-fbcda19a-20250317 - 2025-03-17
  • 19.1.0-canary-f9d78089-20250306 - 2025-03-07
  • 19.1.0-canary-f83903bf-20250212 - 2025-02-12
  • 19.1.0-canary-f457d0b4-20250313 - 2025-03-13
  • 19.1.0-canary-f0edf41e-20250115 - 2025-01-14
  • 19.1.0-canary-ef979d47-20241218 - 2024-12-18
  • 19.1.0-canary-ef4bc8b4-20250328 - 2025-03-28
  • 19.1.0-canary-ebc22ef7-20250225 - 2025-02-26
  • 19.1.0-canary-e670e72f-20250214 - 2025-02-14
  • 19.1.0-canary-e1e74071-20250321 - 2025-03-21
  • 19.1.0-canary-e06c72fc-20241215 - 2024-12-16
  • 19.1.0-canary-e03ac20f-20250305 - 2025-03-05
  • 19.1.0-canary-de82912e-20241220 - 2024-12-20
  • 19.1.0-canary-de1eaa26-20250124 - 2025-01-24
  • 19.1.0-canary-db7dfe05-20250319 - 2025-03-19
  • 19.1.0-canary-d85cf3e5-20250205 - 2025-02-05
  • 19.1.0-canary-d55cc79b-20250228 - 2025-02-28
  • 19.1.0-canary-d46b04a2-20250117 - 2025-01-17
  • 19.1.0-canary-d4287258-20241217 - 2024-12-17
  • 19.1.0-canary-d331ba04-20250307 - 2025-03-10
  • 19.1.0-canary-cd90a4d8-20250210 - 2025-02-11
  • 19.1.0-canary-cbbe8666-20250213 - 2025-02-13
  • 19.1.0-canary-cabd8a0e-20250113 - 2025-01-13
  • 19.1.0-canary-c69a5fc5-20250318 - 2025-03-18
  • 19.1.0-canary-c492f975-20250128 - 2025-01-29
  • 19.1.0-canary-c01b8058-20241229 - 2024-12-30
  • 19.1.0-canary-bb9a24d9-20250130 - 2025-01-30
  • 19.1.0-canary-b3a95caf-20250113 - 2025-01-14
  • 19.1.0-canary-b158439a-20250115 - 2025-01-15
  • 19.1.0-canary-ae9017ce-20250122 - 2025-01-23
  • 19.1.0-canary-a84862db-20250218 - 2025-02-19
  • 19.1.0-canary-a4f9bd58-20250319 - 2025-03-20
  • 19.1.0-canary-a4b2d0d5-20250203 - 2025-02-03
  • 19.1.0-canary-9ff42a87-20250130 - 2025-01-31
  • 19.1.0-canary-9eabb373-20250124 - 2025-01-27
  • 19.1.0-canary-9b62ee71-20250122 - 2025-01-22
  • 19.1.0-canary-97d79495-20241223 - 2024-12-24
  • 19.1.0-canary-9463d51e-20241219 - 2024-12-19
  • 19.1.0-canary-93b58361-20250209 - 2025-02-10
  • 19.1.0-canary-8a7b487e-20250218 - 2025-02-18
  • 19.1.0-canary-8759c5c8-20250207 - 2025-02-07
  • 19.1.0-canary-7eb8234f-20241218 - 2024-12-18
  • 19.1.0-canary-7b402084-20250107 - 2025-01-07
  • 19.1.0-canary-74ea0c73-20250109 - 2025-01-09
  • 19.1.0-canary-740a4f7a-20250325 - 2025-03-25
  • 19.1.0-canary-7130d0c6-20241212 - 2024-12-12
  • 19.1.0-canary-6aa8254b-20250312 - 2025-03-12
  • 19.1.0-canary-694d3e1a-20241231 - 2025-01-01
  • 19.1.0-canary-6907aa2a-20241220 - 2024-12-23
  • 19.1.0-canary-662957cc-20250221 - 2025-02-21
  • 19.1.0-canary-62208bee-20250102 - 2025-01-02
  • 19.1.0-canary-5b51a2b9-20250116 - 2025-01-16
  • 19.1.0-canary-540efebc-20250112 - 2025-01-12
  • 19.1.0-canary-5398b711-20250314 - 2025-03-14
  • 19.1.0-canary-518d06d2-20241219 - 2024-12-19
  • 19.1.0-canary-4dff0e62-20241213 - 2024-12-13
  • 19.1.0-canary-4632e36a-20250216 - 2025-02-17
  • 19.1.0-canary-443b7ff2-20250303 - 2025-03-04
  • 19.1.0-canary-4280563b-20250326 - 2025-03-27
  • 19.1.0-canary-42687267-20250108 - 2025-01-08
  • 19.1.0-canary-3ce77d55-20250106 - 2025-01-06
  • 19.1.0-canary-3b009b4c-20250102 - 2025-01-03
  • 19.1.0-canary-37906d4d-20250127 - 2025-01-28
  • 19.1.0-canary-32b0cad8-20250213 - 2025-02-13
  • 19.1.0-canary-313332d1-20250326 - 2025-03-26
  • 19.1.0-canary-2980f277-20250301 - 2025-03-03
  • 19.1.0-canary-25677265-20250224 - 2025-02-24
  • 19.1.0-canary-22e39ea7-20250225 - 2025-02-25
  • 19.1.0-canary-18eaf51b-20250118 - 2025-01-20
  • 19.1.0-canary-130095f7-20241212 - 2024-12-12
  • 19.1.0-canary-0ca3deeb-20250311 - 2025-03-11
  • 19.1.0-canary-0a82580b-20250203 - 2025-02-04
  • 19.1.0-canary-056073de-20250109 - 2025-01-10
  • 19.1.0-canary-029e8bd6-20250306 - 2025-03-06
  • 19.0.3 - 2025-12-11

    React Server Components

  • 19.0.2 - 2025-12-11

    React Server Components

  • 19.0.1 - 2025-12-03

    React Server Components

  • 19.0.0 - 2024-12-05
  • 19.0.0-rc-fb9a90fa48-20240614 - 2024-06-14
  • 19.0.0-rc-fa6eab58-20240815 - 2024-08-16
  • 19.0.0-rc-f9ebd85a-20240925 - 2024-09-25
  • 19.0.0-rc-f994737d14-20240522 - 2024-05-22
  • 19.0.0-rc-f90a6bcc-20240827 - 2024-08-27
  • 19.0.0-rc-f6cce072-20240723 - 2024-07-23
  • 19.0.0-rc-f65ac7bd-20240826 - 2024-08-27
  • 19.0.0-rc-f3e09d6328-20240612 - 2024-06-12
  • 19.0.0-rc-f38c22b244-20240704 - 2024-07-05
  • 19.0.0-rc-f2df5694-20240916 - 2024-09-16
  • 19.0.0-rc-ee1a403a-20240916 - 2024-09-16
  • 19.0.0-rc-ed966dac-20241007 - 2024-10-08
  • 19.0.0-rc-ed15d500-20241110 - 2024-11-11
  • 19.0.0-rc-eb3ad065-20240822 - 2024-08-22
  • 19.0.0-rc-eb259b5d3b-20240605 - 2024-06-05
  • 19.0.0-rc-e948a5ac-20240807 - 2024-08-07
  • 19.0.0-rc-e740d4b1-20240919 - 2024-09-19
  • 19.0.0-rc-e684ca66ab-20240619 - 2024-06-19
  • 19.0.0-rc-e56f4ae3-20240830 - 2024-08-30
  • 19.0.0-rc-e4953922-20240919 - 2024-09-20
  • 19.0.0-rc-e210d081-20240909 - 2024-09-09
  • 19.0.0-rc-e1ef8c95-20241115 - 2024-11-15
  • 19.0.0-rc-e02baf6c92-20240627 - 2024-06-27
  • 19.0.0-rc-dfd30974ab-20240613 - 2024-06-13
  • 19.0.0-rc-df783f9ea1-20240708 - 2024-07-08
  • 19.0.0-rc-df5f2736-20240712 - 2024-07-12
  • 19.0.0-rc-de68d2f4-20241204 - 2024-12-04
  • 19.0.0-rc-d8c90fa4-20241001 - 2024-10-01
  • 19.0.0-rc-d6cb4e77-20240911 - 2024-09-11
  • 19.0.0-rc-d5bba18b-20241009 - 2024-10-09
  • 19.0.0-rc-d49123f7-20241019 - 2024-10-20
  • 19.0.0-rc-d48603a5-20240813 - 2024-08-13
  • 19.0.0-rc-d3ce0d3ea9-20240520 - 2024-05-20
  • 19.0.0-rc-d1afcb43-20240903 - 2024-09-04
  • 19.0.0-rc-d025ddd3-20240722 - 2024-07-22
  • 19.0.0-rc-cd22717c-20241013 - 2024-10-13
  • 19.0.0-rc-cc1ec60d0d-20240607 - 2024-06-07
  • 19.0.0-rc-cae764ce-20241025 - 2024-10-25
  • 19.0.0-rc-ca587425-20241211 - 2024-12-12
  • 19.0.0-rc-c3cdbec0a7-20240708 - 2024-07-09
  • 19.0.0-rc-c21bcd627b-20240624 - 2024-06-24
  • 19.0.0-rc-c1e1358b-20241020 - 2024-10-20
  • 19.0.0-rc-c11c9510-20241120 - 2024-11-21
  • 19.0.0-rc-bf7e210c-20241017 - 2024-10-17
  • 19.0.0-rc-bf3a29d097-20240603 - 2024-06-04
  • 19.0.0-rc-b8ae38f8-20241018 - 2024-10-18
  • 19.0.0-rc-b7e21579-20241031 - 2024-11-01
  • 19.0.0-rc-b57d2823-20240822 - 2024-08-23
  • 19.0.0-rc-b01722d5-20241114 - 2024-11-14
  • 19.0.0-rc-ab7c1663-20240730 - 2024-07-30
  • 19.0.0-rc-ab2135c7-20240724 - 2024-07-24
  • 19.0.0-rc-a99d8e8d-20240916 - 2024-09-17
  • 19.0.0-rc-a960b92c-20240819 - 2024-08-20
  • 19.0.0-rc-a7d1240c-20240731 - 2024-07-31
  • 19.0.0-rc-a532d91d01-20240610 - 2024-06-10
  • 19.0.0-rc-a26e3f403e-20240611 - 2024-06-11
  • 19.0.0-rc-a19a8ab4-20240829 - 2024-08-29
  • 19.0.0-rc-a03254bc-20240905 - 2024-09-06
  • 19.0.0-rc-9d4fba0788-20240530 - 2024-05-30
  • 19.0.0-rc-9d2da591-20240808 - 2024-08-08
  • 19.0.0-rc-9c6806964f-20240703 - 2024-07-03
  • 19.0.0-rc-99da76f23a-20240606 - 2024-06-06
  • 19.0.0-rc-9598c41a20-20240603 - 2024-06-03
  • 19.0.0-rc-94e652d5-20240912 - 2024-09-12
  • 19.0.0-rc-941e1b4a-20240729 - 2024-07-29
  • 19.0.0-rc-935180c7e0-20240524 - 2024-05-24
  • 19.0.0-rc-915b914b3a-20240515 - 2024-05-15
  • 19.0.0-rc-91061073-20241121 - 2024-11-22
  • 19.0.0-rc-8f3c0525f9-20240521 - 2024-05-21
  • 19.0.0-rc-8b08e99e-20240713 - 2024-07-15
  • 19.0.0-rc-8971381549-20240625 - 2024-06-25
  • 19.0.0-rc-85acf2d195-20240711 - 2024-07-11
  • 19.0.0-rc-83825814-20241015 - 2024-10-15
  • 19.0.0-rc-827cbea417-20240606 - 2024-06-07
  • 19.0.0-rc-8269d55d-20240802 - 2024-08-02
  • 19.0.0-rc-81c5ff2e04-20240521 - 2024-05-21
  • 19.0.0-rc-7c8e5e7a-20241101 - 2024-11-01
  • 19.0.0-rc-7ac8e612-20241113 - 2024-11-13
  • 19.0.0-rc-79ddf5b5-20241210 - 2024-12-11
  • 19.0.0-rc-77f43893-20241010 - 2024-10-10
  • 19.0.0-rc-77b637d6-20241016 - 2024-10-16
  • 19.0.0-rc-778e1ed2-20240926 - 2024-09-25
  • 19.0.0-rc-7771d3a7-20240827 - 2024-08-28
  • 19.0.0-rc-7670501b-20241124 - 2024-11-25
  • 19.0.0-rc-76002254-20240724 - 2024-07-25
  • 19.0.0-rc-7283a213-20241206 - 2024-12-06
  • 19.0.0-rc-70fb1363-20241010 - 2024-10-10
  • 19.0.0-rc-6fb39ec9e9-20240621 - 2024-06-21
  • 19.0.0-rc-6f23540c7d-20240528 - 2024-05-28
  • 19.0.0-rc-6f0dc294-20241119 - 2024-11-19
  • 19.0.0-rc-6ebfd5b0-20240818 - 2024-08-19
  • 19.0.0-rc-6d3110b4d9-20240531 - 2024-05-31
  • 19.0.0-rc-6cf85185-20241014 - 2024-10-14
  • 19.0.0-rc-69d4b800-20241021 - 2024-10-21
  • 19.0.0-rc-68dbd84b-20240812 - 2024-08-12
  • 19.0.0-rc-67fee58b-20240926 - 2024-09-26
  • 19.0.0-rc-66855b96-20241106 - 2024-11-06
  • 19.0.0-rc-65e06cb7-20241218 - 2024-12-19
  • 19.0.0-rc-65a56d0e-20241020 - 2024-10-20
  • 19.0.0-rc-65903583-20240805 - 2024-08-05
  • 19.0.0-rc-64f89510-20241119 - 2024-11-20
  • 19.0.0-rc-6230622a1a-20240610 - 2024-06-10
  • 19.0.0-rc-603e6108-20241029 - 2024-10-30
  • 19.0.0-rc-5dcb0097-20240918 - 2024-09-18
  • 19.0.0-rc-5d19e1c8-20240923 - 2024-09-23
  • 19.0.0-rc-5c56b873-20241107 - 2024-11-07
  • 19.0.0-rc-5b0ef217-20241202 - 2024-12-02
  • 19.0.0-rc-58af67a8f8-20240628 - 2024-06-28
  • 19.0.0-rc-57fbe3ba37-20240520 - 2024-05-20
  • 19.0.0-rc-512b09b2-20240718 - 2024-07-18
  • 19.0.0-rc-4f604941-20240830 - 2024-09-02
  • 19.0.0-rc-4d577fd2-20241104 - 2024-11-04
  • 19.0.0-rc-4c58fce7-20240904 - 2024-09-05
  • 19.0.0-rc-4c2e457c7c-20240522 - 2024-05-23
  • 19.0.0-rc-4beb1fd8-20241118 - 2024-11-18
  • 19.0.0-rc-4b7d4530-20241218 - 2024-12-18
  • 19.0.0-rc-49496d49-20240814 - 2024-08-14
  • 19.0.0-rc-47352209-20240912 - 2024-09-12
  • 19.0.0-rc-459fd418-20241001 - 2024-10-02
  • 19.0.0-rc-45804af1-20241021 - 2024-10-22
  • 19.0.0-rc-3f1436cca1-20240516 - 2024-05-17
  • 19.0.0-rc-3edc000d-20240926 - 2024-09-27
  • 19.0.0-rc-3dfd5d9e-20240910 - 2024-09-10
  • 19.0.0-rc-3da26163a3-20240704 - 2024-07-04
  • 19.0.0-rc-3ac551e855-20240522 - 2024-05-22
  • 19.0.0-rc-38e3b23483-20240529 - 2024-05-29
  • 19.0.0-rc-38af456a-20241010 - 2024-10-10
  • 19.0.0-rc-380f5d67-20241113 - 2024-11-14
  • 19.0.0-rc-378b305958-20240710 - 2024-07-10
  • 19.0.0-rc-372ec00c-20241209 - 2024-12-10
  • 19.0.0-rc-3563387fe3-20240621 - 2024-06-21
  • 19.0.0-rc-34d0c5e357-20240607 - 2024-06-10
  • 19.0.0-rc-33c7bd9a-20241104 - 2024-11-05
  • 19.0.0-rc-3208e73e-20240730 - 2024-07-30
  • 19.0.0-rc-2ec26bc4-20241111 - 2024-11-12
  • 19.0.0-rc-2d2cc042-20240809 - 2024-08-09
  • 19.0.0-rc-2d16326d-20240930 - 2024-09-30
  • 19.0.0-rc-28668d39-20241023 - 2024-10-23
  • 19.0.0-rc-20b6f4c0e8-20240607 - 2024-06-10
  • 19.0.0-rc-206df66e-20240912 - 2024-09-13
  • 19.0.0-rc-204a551e-20240926 - 2024-09-26
  • 19.0.0-rc-1eaccd82-20240816 - 2024-08-16
  • 19.0.0-rc-1df34bdf62-20240605 - 2024-06-05
  • 19.0.0-rc-1d989965-20240821 - 2024-08-21
  • 19.0.0-rc-1c9b1387-20241204 - 2024-12-05
  • 19.0.0-rc-1b1283ad-20241203 - 2024-12-03
  • 19.0.0-rc-19bd26be-20240815 - 2024-08-15
  • 19.0.0-rc-187dd6a7-20240806 - 2024-08-06
  • 19.0.0-rc-16409d05-20241101 - 2024-11-01
  • 19.0.0-rc-163365a0-20240717 - 2024-07-17
  • 19.0.0-rc-1631855f-20241023 - 2024-10-23
  • 19.0.0-rc-14a4699f-20240725 - 2024-07-25
  • 19.0.0-rc-1460d67c-20241003 - 2024-10-04
  • 19.0.0-rc-1434af3d22-20240618 - 2024-06-18
  • 19.0.0-rc-107a2f8c3e-20240617 - 2024-06-17
  • 19.0.0-rc-100dfd7dab-20240701 - 2024-07-01
  • 19.0.0-rc-0bc30748-20241028 - 2024-10-29
  • 19.0.0-rc-09111202-20241011 - 2024-10-11
  • 19.0.0-rc-0751fac7-20241002 - 2024-10-03
  • 19.0.0-rc-06d0b89e-20240801 - 2024-08-01
  • 19.0.0-rc-04bd67a4-20240924 - 2024-09-24
  • 19.0.0-rc-02c0e824-20241028 - 2024-10-28
  • 19.0.0-rc-01172397-20240716 - 2024-07-16
  • 19.0.0-rc.1 - 2024-11-14
  • 19.0.0-rc.0 - 2024-06-03
  • 19.0.0-canary-fd0da3eef-20240404 - 2024-04-04
  • 19.0.0-canary-e3ebcd54b-20240405 - 2024-04-05
  • 19.0.0-canary-db913d8e17-20240422 - 2024-04-22
  • 19.0.0-canary-cf5ab8b8b2-20240425 - 2024-04-25
  • 19.0.0-canary-cb151849e1-20240424 - 2024-04-24
  • 19.0.0-canary-adb717393-20240411 - 2024-04-11
  • 19.0.0-canary-a73c3450e-20240329 - 2024-03-29
  • 19.0.0-canary-96c584661-20240412 - 2024-04-12
  • 19.0.0-canary-95e6f032c-20240401 - 2024-04-01
  • 19.0.0-canary-8afa144bd-20240416 - 2024-04-16
  • 19.0.0-canary-7a2609eed-20240403 - 2024-04-03
  • 19.0.0-canary-657428a9e-20240416 - 2024-04-17
  • 19.0.0-canary-4c12339ce-20240408 - 2024-04-08
  • 19.0.0-canary-48ec17b86-20240402 - 2024-04-02
  • 19.0.0-canary-36e62c603-20240418 - 2024-04-18
  • 19.0.0-canary-33a32441e9-20240418 - 2024-04-19
  • 19.0.0-canary-2b036d3f1-20240327 - 2024-03-27
  • 19.0.0-canary-05797cceb-20240328 - 2024-03-28
  • 19.0.0-beta-e7d213dfb0-20240507 - 2024-05-07
  • 19.0.0-beta-b498834eab-20240506 - 2024-05-06
  • 19.0.0-beta-9d76c954cf-20240510 - 2024-05-13
  • 19.0.0-beta-94eed63c49-20240425 - 2024-04-25
  • 19.0.0-beta-73bcdfbae5-20240502 - 2024-05-02
  • 19.0.0-beta-6946ebe620-20240508 - 2024-05-08
  • 19.0.0-beta-5d29478716-20240506 - 2024-05-06
  • 19.0.0-beta-4508873393-20240430 - 2024-04-30
  • 19.0.0-beta-26f2496093-20240514 - 2024-05-14
  • 19.0.0-beta-1beb73de0f-20240503 - 2024-05-03
  • 19.0.0-beta-04b058868c-20240508 - 2024-05-09
  • 18.3.1 - 2024-04-26
  • 18.3.0 - 2024-04-25 ...

    This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters

    [ Show hidden characters]({{ revealButtonHref }})