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
docs: release process, versioning, breaking changes, public API surface #7706
Conversation
|
| Name | Link |
|---|---|
| 9d147ad | |
| https://app.netlify.com/sites/docusaurus-2/deploys/62d02df51e9a9c0008ab29ff | |
| https://deploy-preview-7706--docusaurus-2.netlify.app | |
To edit notification comments on pull requests, go to your Netlify site settings.
|
| URL | Performance | Accessibility | Best Practices | SEO | PWA | Report |
|---|---|---|---|---|---|---|
| / | Report | |||||
| /docs/installation | Report |
|
Size Change: +3.57 kB (0%) Total Size: 805 kB
|
| Filename | Size |
|---|---|
website/build/index.html |
38.9 kB |
LGTM
One question is about TypeScript types. What accounts as "safe"? For example, does changing a type from non-generic to generic count as breaking? Two generic arguments to three? string to a literal union? Or only removal of types counts? Are all exported types stable? (e.g. we have a lot of types in @docusaurus/plugin-content-docs/lib/sidebars/types) Should we split @docusaurus/types into /internal as well?
I was pretty sure you'll comment on this TS line
I guess it is safe if the new generic types has a retro-compatible default value.
It probably depends if the type is used as an input or output (ie input plugin option vs output attribute used as component className)
Removal, rename...
I think we should only guarantee the stability of the theme props types, and not necessarily mention the types exported by content plugins, which are currently quite messy. I mean: declare module '@theme/DocCard' {
import type {PropSidebarItem} from '@docusaurus/plugin-content-docs';
export interface Props {
readonly item: PropSidebarItem;
}
export default function DocCard(props: Props): JSX.Element;
}We can guarantee the Ideally, we shouldn't refactor all types with a
What I see in practice is that almost all those types are already part of our public API. There are a few exceptions like It should make it clearer think about all those types after that refactor: #7710 It's a bit hard to define what TS retro-compatibility is. Sometimes adding a new attribute to an existing type leads to a subtle breaking change. I think we should see it as a best effort, and try to avoid annoying TS users and plugin authors. If we feel a change is likely to piss off anyone, we just don't backport it and keep it for the next version? |
|
If the "type stability" is more of a good will than a hard commitment, I'm good. |
Co-authored-by: Paul O’Shannessy <paul@oshannessy.com>
Co-authored-by: Paul O’Shannessy <paul@oshannessy.com>
Co-authored-by: Joshua Chen <sidachen2003@gmail.com> Co-authored-by: Sébastien Lorber <slorber@users.noreply.github.com>
Co-authored-by: Joshua Chen <sidachen2003@gmail.com> Co-authored-by: Sébastien Lorber <slorber@users.noreply.github.com>
* chore: upgrade dependencies * fix * reupgrade * downgrade
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.1.14 to 2.1.15. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@41a4ada...3f62b75) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix: bump devcontainer to node 16 * fix: bump devcontainer directly to nodejs 18
* Update users.tsx * add screenshot * Update website/src/data/users.tsx * Update website/src/data/users.tsx * optimize image Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
docs: swizzle react-live with eject (#7735)
Dutch translation
* fix(theme-classic): fix Layout theme css height This fixes html and body tags height from bug report #7746 * Update styles.module.css Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
* docs: update evantay showcase image * optimize image Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
move repo to organization
[FIX] Update observer condition Replace condition canUseDOM to canUseIntersectionObserver as check is done for IntersectionObserver usage
* Added StackQL Provider Registry doc site * added StackQL Provider Registry image * fixes Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
…nv (#7763) refactor(core): use has instead of get to test for existence
* fix(theme-classic): validate options properly * improve normalization * fix doc
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.3.0 to 3.4.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](actions/setup-node@eeb10cf...5b949b5) --- updated-dependencies: - dependency-name: actions/setup-node dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Improve Algolia Search Korean Translations * Update theme-search-algolia.json * Remove Duplicate Colon * remove redundnacy * Update theme-search-algolia.json * Translate Search By Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
* fix(migrate): import siteConfig with file extension * fix test * Revert "fix test" This reverts commit f5d00ab.
* docs: add EverShop website to showcase * docs: add EverShop website to showcase * fixes Co-authored-by: Joshua Chen <sidachen2003@gmail.com>


Pre-flight checklist
Motivation
Clarify how we handle versioning, breaking changes, semver, public API and all things important for releasing 2.0
Test Plan
preview
Test links
Deploy preview: https://deploy-preview-7706--docusaurus-2.netlify.app/community/release-process
Related issues/PRs
#6113