Skip to content

Commit 9a865fd

Browse files
committed
Revert "Canaries blog post"
This reverts commit aa88d8a.
1 parent aa88d8a commit 9a865fd

File tree

4 files changed

+6
-115
lines changed

4 files changed

+6
-115
lines changed

src/content/blog/2023/05/03/react-canaries.md

Lines changed: 0 additions & 92 deletions
This file was deleted.

src/content/blog/index.md

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,6 @@ This blog is the official source for the updates from the React team. Anything i
1010

1111
<div className="sm:-mx-5 flex flex-col gap-5 mt-12">
1212

13-
<BlogCard title="React Canaries: Incremental Feature Rollout Outside Meta" date="May 3, 2023" url="/blog/2023/05/03/react-canaries">
14-
15-
Traditionally, new React features used to only be available at Meta first, and land in the open source releases later. We'd like to offer the React community an option to adopt individual new features as soon as their design is close to final--similar to how Meta uses React internally. We are introducing a new officially supported Canary release channel. It lets curated setups like frameworks decouple adoption of individual React features from the React release schedule.
16-
17-
</BlogCard>
1813

1914
<BlogCard title="React Labs: What We've Been Working On – March 2023" date="March 22, 2023" url="/blog/2023/03/22/react-labs-what-we-have-been-working-on-march-2023">
2015

src/content/community/versioning-policy.md

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -79,40 +79,35 @@ This section will be most relevant to developers who work on frameworks, librari
7979

8080
Each of React's release channels is designed for a distinct use case:
8181

82-
- [**Latest**](#latest-channel) is for stable, semver React releases. It's what you get when you install React from npm. This is the channel you're already using today. **User-facing applications that consume React directly use this channel.**
83-
- [**Canary**](#canary-channel) tracks the main branch of the React source code repository. Think of these as release candidates for the next semver release. **[Frameworks or other curated setups may choose to use this channel with a pinned version of React.](/blog/2023/05/03/react-canaries) You can also Canaries for integration testing between React and third party projects.**
82+
- [**Latest**](#latest-channel) is for stable, semver React releases. It's what you get when you install React from npm. This is the channel you're already using today. **Use this for all user-facing React applications.**
83+
- [**Canary**](#canary-channel) tracks the main branch of the React source code repository. Think of these as release candidates for the next minor semver release. Use this for integration testing between React and third party projects.
8484
- [**Experimental**](#experimental-channel) includes experimental APIs and features that aren't available in the stable releases. These also track the main branch, but with additional feature flags turned on. Use this to try out upcoming features before they are released.
8585

8686
All releases are published to npm, but only Latest uses semantic versioning. Prereleases (those in the Canary and Experimental channels) have versions generated from a hash of their contents and the commit date, e.g. `18.3.0-canary-388686f29-20230503` for Canary and `0.0.0-experimental-388686f29-20230503` for Experimental.
8787

88-
**Both Latest and Canary channels are officially supported for user-facing applications, but with different expectations**:
89-
90-
* Latest releases follow the traditional semver model.
91-
* Canary releases [must be pinned](/blog/2023/05/03/react-canaries) and may include breaking changes. They exist for curated setups (like frameworks) that want to gradually release new React features and bugfixes on their own release schedule.
92-
93-
The Experimental releases are provided for testing purposes only, and we provide no guarantees that behavior won't change between releases. They do not follow the semver protocol that we use for releases from Latest.
88+
**The only officially supported release channel for user-facing applications is Latest**. Canary and Experimental releases are provided for testing purposes only, and we provide no guarantees that behavior won't change between releases. They do not follow the semver protocol that we use for releases from Latest.
9489

9590
By publishing prereleases to the same registry that we use for stable releases, we are able to take advantage of the many tools that support the npm workflow, like [unpkg](https://unpkg.com) and [CodeSandbox](https://codesandbox.io).
9691

9792
### Latest channel {/*latest-channel*/}
9893

9994
Latest is the channel used for stable React releases. It corresponds to the `latest` tag on npm. It is the recommended channel for all React apps that are shipped to real users.
10095

101-
**If you're not sure which channel you should use, it's Latest.** If you're using React directly, this is what you're already using. You can expect updates to Latest to be extremely stable. Versions follow the semantic versioning scheme, as [described earlier.](#stable-releases)
96+
**If you're not sure which channel you should use, it's Latest.** If you're a React developer, this is what you're already using. You can expect updates to Latest to be extremely stable. Versions follow the semantic versioning scheme, as [described earlier.](#stable-releases)
10297

10398
### Canary channel {/*canary-channel*/}
10499

105100
The Canary channel is a prerelease channel that tracks the main branch of the React repository. We use prereleases in the Canary channel as release candidates for the Latest channel. You can think of Canary as a superset of Latest that is updated more frequently.
106101

107102
The degree of change between the most recent Canary release and the most recent Latest release is approximately the same as you would find between two minor semver releases. However, **the Canary channel does not conform to semantic versioning.** You should expect occasional breaking changes between successive releases in the Canary channel.
108103

109-
**Do not use prereleases in user-facing applications directly unless you're following the [Canary workflow](/blog/2023/05/03/react-canaries).**
104+
**Do not use prereleases in user-facing applications.**
110105

111106
Releases in Canary are published with the `canary` tag on npm. Versions are generated from a hash of the build's contents and the commit date, e.g. `18.3.0-canary-388686f29-20230503`.
112107

113108
#### Using the canary channel for integration testing {/*using-the-canary-channel-for-integration-testing*/}
114109

115-
The Canary channel also supports integration testing between React and other projects.
110+
The Canary channel is designed to support integration testing between React and other projects.
116111

117112
All changes to React go through extensive internal testing before they are released to the public. However, there are a myriad of environments and configurations used throughout the React ecosystem, and it's not possible for us to test against every single one.
118113

src/sidebarBlog.json

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,6 @@
1111
"path": "/blog",
1212
"skipBreadcrumb": true,
1313
"routes": [
14-
{
15-
"title": "React Canaries: Enabling Incremental Feature Rollout Outside Meta",
16-
"titleForHomepage": "React Canaries: Incremental Feature Rollout",
17-
"icon": "blog",
18-
"date": "May 3, 2023",
19-
"path": "/blog/2023/05/03/react-canaries"
20-
},
2114
{
2215
"title": "React Labs: What We've Been Working On – March 2023",
2316
"titleForHomepage": "React Labs: March 2023",

0 commit comments

Comments
 (0)