Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upgrade docusaurus #825

Open
qrkourier opened this issue Apr 17, 2024 · 0 comments
Open

upgrade docusaurus #825

qrkourier opened this issue Apr 17, 2024 · 0 comments

Comments

@qrkourier
Copy link
Member

Docusaurus builds openziti.io and is in a major version transition that introduces many breaking changes.

We've already adopted most of the breaking changes in v2, and there are more to adopt in v3. Docusaurus plans to finish the transition to MDX and strict (Commonmark) Markdown in v4.

To stay abreast of features and fixes we must adopt v3 eventually, and Docusaurus has done the tedious work to publish a graceful migration guide: https://docusaurus.io/docs/migration/v3

For us, the graceful transition involves several stages of conforming our docs codebase to the changes before upgrading Docusaurus itself.

  1. start building with Node.js LTS v18+
  2. upgrade to React v18 (coincidentally the same as the new minimum Node.js, not coupled versions)
  3. stop using and retroactively replace now-unsupported Markdown and HTML features or opt-in to strict Commonmark, e.g., {} and <> enclosures have different meanings for MDX v3, and Docusaurus assumes all pages are MDX unless frontmatter has format: md or a global config to detect Markdown, four spaces no longer means pre-formatted (use fences instead), etc.
  4. add a visual regression CI check so we can notice unexpected variations in the rendering automatically and in the future
  5. add an MDX compilation CI check to finalize any changes necessary before upgrade, and notice breaking changes in the future, e.g., npx docusaurus-mdx-checker
  6. upgrade Docusaurus to v3 and configure Vercel builds for v3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant