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

[Docs][RFC]: Strategy to maintain working links #11886

Open
Philzen opened this issue Jan 7, 2025 · 2 comments
Open

[Docs][RFC]: Strategy to maintain working links #11886

Philzen opened this issue Jan 7, 2025 · 2 comments

Comments

@Philzen
Copy link
Contributor

Philzen commented Jan 7, 2025

Summary and description

Regarding the handling of links there is some room for improvement.

Goals

  1. Avoid 404 links (or at least be able to recognize and fix them quickly as soon as they are depublished)
  2. Ensure links to code snippets always refer to the proper lines / intended code snippets

Motivation

It's frustrating for consumers of the docs to click on links which either lead to 404 or (probably even worse) refer to something different than intended by the author(s). Although those make "good first PRs" and thus a low-barrier into the fabulous world of being a Redwood contributor, peoples valuable attention could probably be more effective in other areas 😉

The number of PRs the current situation causes is countless: #751, #5685, #5774, #5896, #8304 #9266, #10505, #10938 #11581, #11772, #11882, …

Possible solutions

Tackling 404s for (non-github) outgoing links

  • Set up a CI job that makes HEAD requests to all links in the docs
    • ideally automatically create issues for any found ones ("good first issues")
    • probably limit that to canary and stable
  • Discuss: Can we introduce more stability going forward?
    • When linking to something like docs (i.e. Prisma, Storybook, Pino) do we really want to always refer to the latest or can we ensure they match up with the version that is part of the particular Redwood version?
      I.e. for Storybook there are different doc links for v6, v7, etc.
    • When linking to something profound (taking https://xyproblem.info/ as an example, or even more volatile, a blog entry), would it be feasible to link to an archive.org copy straightaway?

Tackling code links (typically github)

  • Option A: always link to the tag version that matches the docs version.
    • for canary, that is a challenge, also how do we ensure links are updated when new versions appear?
    • Idea: scan current docs for blob/main and – for instance given current docs are v9 – scan anything that is not blob/9…
  • Option B: Always use permalinks
    • drawback that it is not easily possible to identify which branch or tag that link belongs to
  • Option C: keep linking to the most recent default branch code
    • in 2022 the team concluded this internally to always link to the default branch file (instead of using a permalink) this RFC seeks to revisit that stance.
    • keeping the current strategy has all the drawbacks that this RFC aims to improve own, meaning the docs' integrity falls apart as time progresses
@Tobbe
Copy link
Member

Tobbe commented Jan 9, 2025

Semi-related: I just noticed this output from our docusaurus build on Netlify:

3:33:54 PM: [WARNING] Docusaurus found broken anchors!
3:33:54 PM: 
3:33:54 PM: Please check the pages of your site in the list below, and make sure you don't reference any anchor that does not exist.
Note: it's possible to ignore broken anchors with the 'onBrokenAnchors' Docusaurus configuration, and let the build pass.
3:33:54 PM: Exhaustive list of all broken anchors found:
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/authentication:
3:33:54 PM:    -> linking to /docs/1.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/1.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/1.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/deploy/vercel:
3:33:54 PM:    -> linking to #3-prisma-and-database (resolved as: /docs/1.x/deploy/vercel#3-prisma-and-database)
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/1.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/1.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/graphql:
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/1.x/graphql#graphql-logger-options)
3:33:54 PM:    -> linking to /docs/1.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/security:
3:33:54 PM:    -> linking to /docs/1.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/seo-head:
3:33:54 PM:    -> linking to #setting-meta-tags-open-graph-directives (resolved as: /docs/1.x/seo-head#setting-meta-tags-open-graph-directives)
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/1.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/1.x/tutorial/chapter5/testing:
3:33:54 PM:    -> linking to #using-the-example-repo (resolved as: /docs/1.x/tutorial/chapter5/testing#using-the-example-repo)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/auth/dbauth:
3:33:54 PM:    -> linking to /docs/2.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/auth/firebase:
3:33:54 PM:    -> linking to #auth-provider-specific-integration (resolved as: /docs/2.x/auth/firebase#auth-provider-specific-integration)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/auth/netlify:
3:33:54 PM:    -> linking to #auth-provider-specific-integration (resolved as: /docs/2.x/auth/netlify#auth-provider-specific-integration)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/cors:
3:33:54 PM:    -> linking to /docs/2.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/2.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/2.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/2.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/2.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/graphql:
3:33:54 PM:    -> linking to /docs/2.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/2.x/graphql#graphql-logger-options)
3:33:54 PM:    -> linking to /docs/2.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/2.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/2.x/authentication#supabase
3:33:54 PM:    -> linking to /docs/2.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/2.x/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/quick-start:
3:33:54 PM:    -> linking to /docs/2.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/security:
3:33:54 PM:    -> linking to /docs/2.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/seo-head:
3:33:54 PM:    -> linking to #setting-meta-tags-open-graph-directives (resolved as: /docs/2.x/seo-head#setting-meta-tags-open-graph-directives)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/2.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/tutorial/chapter4/authentication:
3:33:54 PM:    -> linking to /docs/2.x/authentication#signuphandler
3:33:54 PM:    -> linking to /docs/2.x/authentication#api
3:33:54 PM:    -> linking to /docs/2.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to /docs/2.x/authentication#third-party-providers-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/2.x/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/2.x/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/auth/dbauth:
3:33:54 PM:    -> linking to /docs/3.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/auth/firebase:
3:33:54 PM:    -> linking to #auth-provider-specific-integration (resolved as: /docs/3.x/auth/firebase#auth-provider-specific-integration)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/auth/netlify:
3:33:54 PM:    -> linking to #auth-provider-specific-integration (resolved as: /docs/3.x/auth/netlify#auth-provider-specific-integration)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/cells:
3:33:54 PM:    -> linking to /docs/3.x/typescript/utility-types#cell
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/cors:
3:33:54 PM:    -> linking to /docs/3.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/3.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/3.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/3.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/3.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/graphql:
3:33:54 PM:    -> linking to /docs/3.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/3.x/graphql#graphql-logger-options)
3:33:54 PM:    -> linking to /docs/3.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/3.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/3.x/authentication#supabase
3:33:54 PM:    -> linking to /docs/3.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/3.x/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/3.x/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/3.x/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/quick-start:
3:33:54 PM:    -> linking to /docs/3.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/security:
3:33:54 PM:    -> linking to /docs/3.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/seo-head:
3:33:54 PM:    -> linking to #setting-meta-tags-open-graph-directives (resolved as: /docs/3.x/seo-head#setting-meta-tags-open-graph-directives)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/3.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/tutorial/chapter4/authentication:
3:33:54 PM:    -> linking to /docs/3.x/authentication#signuphandler
3:33:54 PM:    -> linking to /docs/3.x/authentication#api
3:33:54 PM:    -> linking to /docs/3.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to /docs/3.x/authentication#third-party-providers-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/3.x/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/3.x/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/auth/dbauth:
3:33:54 PM:    -> linking to /docs/4.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/cells:
3:33:54 PM:    -> linking to /docs/4.x/typescript/utility-types#cell
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/cors:
3:33:54 PM:    -> linking to /docs/4.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/4.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/4.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/4.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/4.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/graphql:
3:33:54 PM:    -> linking to /docs/4.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/4.x/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/4.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/4.x/authentication#supabase
3:33:54 PM:    -> linking to /docs/4.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/4.x/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/4.x/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/4.x/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/quick-start:
3:33:54 PM:    -> linking to /docs/4.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/security:
3:33:54 PM:    -> linking to /docs/4.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/seo-head:
3:33:54 PM:    -> linking to #setting-meta-tags-open-graph-directives (resolved as: /docs/4.x/seo-head#setting-meta-tags-open-graph-directives)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/serverless-functions:
3:33:54 PM:    -> linking to /docs/4.x/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/4.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/tutorial/chapter4/authentication:
3:33:54 PM:    -> linking to /docs/4.x/authentication#signuphandler
3:33:54 PM: - Broken anchor on source page path = /docs/4.x/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/4.x/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/auth/dbauth:
3:33:54 PM:    -> linking to /docs/5.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/cors:
3:33:54 PM:    -> linking to /docs/5.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/5.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/5.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/5.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/5.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/graphql:
3:33:54 PM:    -> linking to /docs/5.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/5.x/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/5.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/5.x/authentication#supabase
3:33:54 PM:    -> linking to /docs/5.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/5.x/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/5.x/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/5.x/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/quick-start:
3:33:54 PM:    -> linking to /docs/5.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/security:
3:33:54 PM:    -> linking to /docs/5.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/seo-head:
3:33:54 PM:    -> linking to #setting-meta-tags-open-graph-directives (resolved as: /docs/5.x/seo-head#setting-meta-tags-open-graph-directives)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/serverless-functions:
3:33:54 PM:    -> linking to /docs/5.x/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/5.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/5.x/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/5.x/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/auth/dbauth:
3:33:54 PM:    -> linking to /docs/6.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/cors:
3:33:54 PM:    -> linking to /docs/6.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/6.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/6.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/6.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/6.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/graphql:
3:33:54 PM:    -> linking to /docs/6.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/6.x/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/6.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/6.x/authentication#supabase
3:33:54 PM:    -> linking to /docs/6.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/6.x/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/6.x/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/6.x/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/quick-start:
3:33:54 PM:    -> linking to /docs/6.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/security:
3:33:54 PM:    -> linking to /docs/6.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/serverless-functions:
3:33:54 PM:    -> linking to /docs/6.x/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/6.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/6.x/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/6.x/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/auth/dbauth:
3:33:54 PM:    -> linking to /docs/7.x/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/cors:
3:33:54 PM:    -> linking to /docs/7.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/7.x/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/deploy/introduction:
3:33:54 PM:    -> linking to /docs/7.x/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/7.x/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/7.x/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/graphql:
3:33:54 PM:    -> linking to /docs/7.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/7.x/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/7.x/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/7.x/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/7.x/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/7.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/7.x/authentication#supabase
3:33:54 PM:    -> linking to /docs/7.x/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/7.x/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/7.x/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/7.x/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/7.x/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/7.x/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/quick-start:
3:33:54 PM:    -> linking to /docs/7.x/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/security:
3:33:54 PM:    -> linking to /docs/7.x/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/serverless-functions:
3:33:54 PM:    -> linking to /docs/7.x/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/7.x/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/7.x/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/7.x/typescript/introduction:
3:33:54 PM:    -> linking to /docs/7.x/cli-commands#type-check
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/auth/dbauth:
3:33:54 PM:    -> linking to /docs/8.0/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/cors:
3:33:54 PM:    -> linking to /docs/8.0/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/8.0/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/deploy/introduction:
3:33:54 PM:    -> linking to /docs/8.0/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/8.0/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/8.0/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/graphql:
3:33:54 PM:    -> linking to /docs/8.0/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/8.0/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/8.0/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/8.0/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/8.0/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/8.0/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/8.0/authentication#supabase
3:33:54 PM:    -> linking to /docs/8.0/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/8.0/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/8.0/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/8.0/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/8.0/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/8.0/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/quick-start:
3:33:54 PM:    -> linking to /docs/8.0/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/security:
3:33:54 PM:    -> linking to /docs/8.0/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/serverless-functions:
3:33:54 PM:    -> linking to /docs/8.0/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/8.0/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/8.0/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.0/typescript/introduction:
3:33:54 PM:    -> linking to /docs/8.0/cli-commands#type-check
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/auth/dbauth:
3:33:54 PM:    -> linking to /docs/8.1/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/cors:
3:33:54 PM:    -> linking to /docs/8.1/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/8.1/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/deploy/introduction:
3:33:54 PM:    -> linking to /docs/8.1/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/docker:
3:33:54 PM:    -> linking to #command (resolved as: /docs/8.1/docker#command)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/8.1/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/8.1/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/graphql:
3:33:54 PM:    -> linking to /docs/8.1/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/8.1/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/8.1/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/8.1/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/8.1/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/8.1/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/8.1/authentication#supabase
3:33:54 PM:    -> linking to /docs/8.1/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/8.1/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/8.1/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/8.1/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/8.1/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/8.1/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/quick-start:
3:33:54 PM:    -> linking to /docs/8.1/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/security:
3:33:54 PM:    -> linking to /docs/8.1/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/server-file:
3:33:54 PM:    -> linking to #using-the-server-file (resolved as: /docs/8.1/server-file#using-the-server-file)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/serverless-functions:
3:33:54 PM:    -> linking to /docs/8.1/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/8.1/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/8.1/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.1/typescript/introduction:
3:33:54 PM:    -> linking to /docs/8.1/cli-commands#type-check
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/auth/dbauth:
3:33:54 PM:    -> linking to /docs/8.2/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/cors:
3:33:54 PM:    -> linking to /docs/8.2/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/8.2/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/deploy/introduction:
3:33:54 PM:    -> linking to /docs/8.2/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/docker:
3:33:54 PM:    -> linking to #command (resolved as: /docs/8.2/docker#command)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/8.2/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/8.2/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/graphql:
3:33:54 PM:    -> linking to /docs/8.2/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/8.2/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/8.2/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/8.2/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/8.2/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/8.2/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/8.2/authentication#supabase
3:33:54 PM:    -> linking to /docs/8.2/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/8.2/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/8.2/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/8.2/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/8.2/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/8.2/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/quick-start:
3:33:54 PM:    -> linking to /docs/8.2/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/security:
3:33:54 PM:    -> linking to /docs/8.2/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/server-file:
3:33:54 PM:    -> linking to #using-the-server-file (resolved as: /docs/8.2/server-file#using-the-server-file)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/serverless-functions:
3:33:54 PM:    -> linking to /docs/8.2/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/8.2/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/8.2/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.2/typescript/introduction:
3:33:54 PM:    -> linking to /docs/8.2/cli-commands#type-check
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/auth/dbauth:
3:33:54 PM:    -> linking to /docs/8.3/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/cli-commands:
3:33:54 PM:    -> linking to /docs/8.3/tutorial/chapter4/deployment#netlify
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/cors:
3:33:54 PM:    -> linking to /docs/8.3/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/8.3/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/deploy/introduction:
3:33:54 PM:    -> linking to /docs/8.3/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/docker:
3:33:54 PM:    -> linking to #command (resolved as: /docs/8.3/docker#command)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/8.3/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/8.3/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/graphql:
3:33:54 PM:    -> linking to /docs/8.3/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/8.3/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/8.3/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/8.3/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/8.3/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/8.3/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/8.3/authentication#supabase
3:33:54 PM:    -> linking to /docs/8.3/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/8.3/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/8.3/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/8.3/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/8.3/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/8.3/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/quick-start:
3:33:54 PM:    -> linking to /docs/8.3/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/security:
3:33:54 PM:    -> linking to /docs/8.3/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/server-file:
3:33:54 PM:    -> linking to #using-the-server-file (resolved as: /docs/8.3/server-file#using-the-server-file)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/serverless-functions:
3:33:54 PM:    -> linking to /docs/8.3/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/8.3/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/8.3/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/8.3/typescript/introduction:
3:33:54 PM:    -> linking to /docs/8.3/cli-commands#type-check
3:33:54 PM: - Broken anchor on source page path = /docs/canary/auth/dbauth:
3:33:54 PM:    -> linking to /docs/canary/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/canary/cli-commands:
3:33:54 PM:    -> linking to /docs/canary/tutorial/chapter4/deployment#netlify
3:33:54 PM: - Broken anchor on source page path = /docs/canary/cors:
3:33:54 PM:    -> linking to /docs/canary/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/canary/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/canary/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/deploy/introduction:
3:33:54 PM:    -> linking to /docs/canary/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/canary/docker:
3:33:54 PM:    -> linking to #command (resolved as: /docs/canary/docker#command)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/canary/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/canary/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/canary/graphql:
3:33:54 PM:    -> linking to /docs/canary/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/canary/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/canary/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/canary/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/canary/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/canary/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/canary/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/canary/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/canary/authentication#supabase
3:33:54 PM:    -> linking to /docs/canary/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/canary/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/canary/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/canary/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/canary/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/canary/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/canary/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/quick-start:
3:33:54 PM:    -> linking to /docs/canary/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/canary/security:
3:33:54 PM:    -> linking to /docs/canary/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/canary/server-file:
3:33:54 PM:    -> linking to #using-the-server-file (resolved as: /docs/canary/server-file#using-the-server-file)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/serverless-functions:
3:33:54 PM:    -> linking to /docs/canary/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/canary/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/canary/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/canary/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/canary/typescript/introduction:
3:33:54 PM:    -> linking to /docs/canary/cli-commands#type-check
3:33:54 PM: - Broken anchor on source page path = /docs/auth/dbauth:
3:33:54 PM:    -> linking to /docs/cors#cors-and-authentication
3:33:54 PM: - Broken anchor on source page path = /docs/cli-commands:
3:33:54 PM:    -> linking to /docs/tutorial/chapter4/deployment#netlify
3:33:54 PM: - Broken anchor on source page path = /docs/cors:
3:33:54 PM:    -> linking to /docs/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/deploy/baremetal:
3:33:54 PM:    -> linking to #starting-on-reboot (resolved as: /docs/deploy/baremetal#starting-on-reboot)
3:33:54 PM: - Broken anchor on source page path = /docs/deploy/introduction:
3:33:54 PM:    -> linking to /docs/cli-commands#deploy-config
3:33:54 PM: - Broken anchor on source page path = /docs/docker:
3:33:54 PM:    -> linking to #command (resolved as: /docs/docker#command)
3:33:54 PM: - Broken anchor on source page path = /docs/environment-variables:
3:33:54 PM:    -> linking to #Web (resolved as: /docs/environment-variables#Web)
3:33:54 PM:    -> linking to /docs/app-configuration-redwood-toml#api-paths
3:33:54 PM: - Broken anchor on source page path = /docs/graphql:
3:33:54 PM:    -> linking to /docs/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM:    -> linking to #graphql-logger-options (resolved as: /docs/graphql#graphql-logger-options)
3:33:54 PM: - Broken anchor on source page path = /docs/graphql/fragments:
3:33:54 PM:    -> linking to #fragments (resolved as: /docs/graphql/fragments#fragments)
3:33:54 PM:    -> linking to #unions (resolved as: /docs/graphql/fragments#unions)
3:33:54 PM: - Broken anchor on source page path = /docs/graphql/trusted-documents:
3:33:54 PM:    -> linking to /docs/cli-commands#setup-graphql-trusted-docs
3:33:54 PM: - Broken anchor on source page path = /docs/how-to/gotrue-auth:
3:33:54 PM:    -> linking to /docs/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/how-to/supabase-auth:
3:33:54 PM:    -> linking to /docs/authentication#supabase
3:33:54 PM:    -> linking to /docs/authentication#api
3:33:54 PM: - Broken anchor on source page path = /docs/how-to/test-in-github-actions:
3:33:54 PM:    -> linking to #4-set-up-GitHub-actions (resolved as: /docs/how-to/test-in-github-actions#4-set-up-GitHub-actions)
3:33:54 PM: - Broken anchor on source page path = /docs/intro-to-servers:
3:33:54 PM:    -> linking to #creating-a-public-key (resolved as: /docs/intro-to-servers#creating-a-public-key)
3:33:54 PM: - Broken anchor on source page path = /docs/monitoring/sentry:
3:33:54 PM:    -> linking to #generate-layout (resolved as: /docs/monitoring/sentry#generate-layout)
3:33:54 PM:    -> linking to #generate-function (resolved as: /docs/monitoring/sentry#generate-function)
3:33:54 PM: - Broken anchor on source page path = /docs/project-configuration-dev-test-build:
3:33:54 PM:    -> linking to typescript/generated-types#customising-codegen-config (resolved as: /docs/typescript/generated-types#customising-codegen-config)
3:33:54 PM: - Broken anchor on source page path = /docs/quick-start:
3:33:54 PM:    -> linking to /docs/authentication#self-hosted-auth-installation-and-setup
3:33:54 PM: - Broken anchor on source page path = /docs/security:
3:33:54 PM:    -> linking to /docs/services#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/server-file:
3:33:54 PM:    -> linking to #using-the-server-file (resolved as: /docs/server-file#using-the-server-file)
3:33:54 PM: - Broken anchor on source page path = /docs/serverless-functions:
3:33:54 PM:    -> linking to /docs/graphql#secure-services
3:33:54 PM: - Broken anchor on source page path = /docs/testing:
3:33:54 PM:    -> linking to #mocking-graphql (resolved as: /docs/testing#mocking-graphql)
3:33:54 PM: - Broken anchor on source page path = /docs/tutorial/chapter7/rbac:
3:33:54 PM:    -> linking to #fixing-the-hasrole-function (resolved as: /docs/tutorial/chapter7/rbac#fixing-the-hasrole-function)
3:33:54 PM: - Broken anchor on source page path = /docs/typescript/introduction:
3:33:54 PM:    -> linking to /docs/cli-commands#type-check

We should probably look into those 🙈

@Philzen
Copy link
Contributor Author

Philzen commented Jan 9, 2025

I just noticed this output from our docusaurus build on Netlify:

The root cause for that obviously was #11874 🙈 – which i believe you already fixed via #11891.

Would have been caught if that was be part of the CI (again?). I believe i remember a time when the docs were autodeployed on vercel as a preview (or maybe i'm remembering that for a completely different project). That would also be a good one for this strategy 👍

BTW – do you think you could edit the error log in the above message in an <options>-block? Helps keeping threads more focused.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants