Canary releases
Docusaurus has a canary releases system.
It permits you to test new unreleased features as soon as the pull requests are merged on the next version of Docusaurus.
It is a good way to give feedback to maintainers, ensuring the newly implemented feature works as intended.
Using a canary release in production might seem risky, but in practice, it's not.
A canary release passes all automated tests and is used in production by the Docusaurus site itself.
The canary version shown below may not be up-to-date. Please go to the npm page to find the actual version name.
Canary npm dist tag
For any code-related commit on main
, the continuous integration will publish a canary release under the @canary
npm dist tag. It generally takes up to 10 minutes.
You can see on npm the current dist tags:
latest
: stable releases (Current: 3.0.0-alpha.0)canary
: canary releases (Example: 0.0.0-4922)
Make sure to use the latest canary release and check the publication date (sometimes the publish process fails).
Canary versions follow the naming convention 0.0.0-commitNumber
.
Using a canary release
Take the latest version published under the canary npm dist tag (Example: 0.0.0-4922).
Use it for all the @docusaurus/*
dependencies in your package.json
:
- "@docusaurus/core": "^3.0.0-alpha.0",
- "@docusaurus/preset-classic": "^3.0.0-alpha.0",
+ "@docusaurus/core": "0.0.0-4922",
+ "@docusaurus/preset-classic": "0.0.0-4922",
Then, install the dependencies again and start your site:
- npm
- Yarn
- pnpm
npm install
npm start
yarn install
yarn start
pnpm install
pnpm start
You can also upgrade the @docusaurus/*
packages with command line:
- npm
- Yarn
- pnpm
npm install --save-exact @docusaurus/core@canary @docusaurus/preset-classic@canary
yarn add --exact @docusaurus/core@canary @docusaurus/preset-classic@canary
pnpm add --save-exact @docusaurus/core@canary @docusaurus/preset-classic@canary
Make sure to include all the @docusaurus/*
packages.
For canary releases, prefer using an exact version instead of a semver range (avoid the ^
prefix).