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

Many links seem to be broken #240

Open
AneesHl opened this issue Mar 4, 2024 · 3 comments · May be fixed by #292
Open

Many links seem to be broken #240

AneesHl opened this issue Mar 4, 2024 · 3 comments · May be fixed by #292
Labels
help wanted Extra attention is needed

Comments

@AneesHl
Copy link
Contributor

AneesHl commented Mar 4, 2024

Many hyperlinks seem to be broken, e.g. on this page the second paragraph contains the words --fast target property links to https://www.lf-lang.org/docs/#fast which doesn't exist.

@AneesHl
Copy link
Contributor Author

AneesHl commented Mar 4, 2024

FYI, when building the website locally using yarn build I get the following output:

yarn run v1.22.21

[...]

[WARNING] Docusaurus found broken anchors!

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.

Exhaustive list of all broken anchors found:
- Broken anchor on source page path = /docs/0.5.0/developer/developer-eclipse-setup-with-oomph:
   -> linking to /docs/0.5.0/developer/regression-tests#browsing-and-editing-examples-in-the-lf-ide
- Broken anchor on source page path = /docs/0.5.0/embedded/arduino:
   -> linking to #building (resolved as: /docs/0.5.0/embedded/arduino#building)
   -> linking to #flashing (resolved as: /docs/0.5.0/embedded/arduino#flashing)
- Broken anchor on source page path = /docs/0.5.0/reference/target-declaration:
   -> linking to #single-file-layout (resolved as: /docs/0.5.0/reference/target-declaration#single-file-layout)
   -> linking to #command-line-arguments (resolved as: /docs/0.5.0/reference/target-declaration#command-line-arguments)
   -> linking to #linking-support-files (resolved as: /docs/0.5.0/reference/target-declaration#linking-support-files)
   -> linking to #using-parameters (resolved as: /docs/0.5.0/reference/target-declaration#using-parameters)
   -> linking to #logging-levels (resolved as: /docs/0.5.0/reference/target-declaration#logging-levels)
- Broken anchor on source page path = /docs/0.5.0/reference/target-language-details:
   -> linking to #timed-behavior (resolved as: /docs/0.5.0/reference/target-language-details#timed-behavior)
   -> linking to #preamble (resolved as: /docs/0.5.0/reference/target-language-details#preamble)
   -> linking to #scheduling-delayed-reactions (resolved as: /docs/0.5.0/reference/target-language-details#scheduling-delayed-reactions)
   -> linking to #Dynamically-Allocated-Structs (resolved as: /docs/0.5.0/reference/target-language-details#Dynamically-Allocated-Structs)
   -> linking to /docs/0.5.0/#logging
   -> linking to /docs/0.5.0/#command-line-arguments
   -> linking to /docs/0.5.0/#threading
   -> linking to /docs/0.5.0/#single-threaded
   -> linking to #using-node-modules (resolved as: /docs/0.5.0/reference/target-language-details#using-node-modules)
   -> linking to #a-minimal-example (resolved as: /docs/0.5.0/reference/target-language-details#a-minimal-example)
- Broken anchor on source page path = /docs/0.5.0/reference/tracing:
   -> linking to /docs/0.5.0/#logging
- Broken anchor on source page path = /docs/0.5.0/tutorial-videos:
   -> linking to #introduction (resolved as: /docs/0.5.0/tutorial-videos#introduction)
   -> linking to #hello (resolved as: /docs/0.5.0/tutorial-videos#hello)
   -> linking to #target (resolved as: /docs/0.5.0/tutorial-videos#target)
   -> linking to #concepts (resolved as: /docs/0.5.0/tutorial-videos#concepts)
   -> linking to #concurrency (resolved as: /docs/0.5.0/tutorial-videos#concurrency)
   -> linking to #research (resolved as: /docs/0.5.0/tutorial-videos#research)
- Broken anchor on source page path = /docs/0.5.0/writing-reactors/actions:
   -> linking to /docs/0.5.0/#fast
- Broken anchor on source page path = /docs/0.5.0/writing-reactors/composing-reactors:
   -> linking to /docs/0.5.0/writing-reactors/actions#superdense-time
- Broken anchor on source page path = /docs/0.5.0/writing-reactors/multiports-and-banks:
   -> linking to #Combining-Banks-and-Multiports (resolved as: /docs/0.5.0/writing-reactors/multiports-and-banks#Combining-Banks-and-Multiports)
- Broken anchor on source page path = /docs/0.5.0/writing-reactors/preambles:
   -> linking to /docs/0.5.0/reference/target-language-details#python-target-implementation-details
   -> linking to #typescript-target-implementation-details (resolved as: /docs/0.5.0/writing-reactors/preambles#typescript-target-implementation-details)
- Broken anchor on source page path = /docs/0.5.0/writing-reactors/termination:
   -> linking to /docs/0.5.0/#timeout
- Broken anchor on source page path = /docs/0.5.0/writing-reactors/time-and-timers:
   -> linking to /docs/0.5.0/#fast
   -> linking to /docs/0.5.0/#command-line-arguments
   -> linking to /docs/0.5.0/#timeout
   -> linking to /docs/0.5.0/writing-reactors/actions#superdense-time
- Broken anchor on source page path = /docs/next/developer/developer-eclipse-setup-with-oomph:
   -> linking to /docs/next/developer/regression-tests#browsing-and-editing-examples-in-the-lf-ide
- Broken anchor on source page path = /docs/next/embedded/arduino:
   -> linking to #building (resolved as: /docs/next/embedded/arduino#building)
   -> linking to #flashing (resolved as: /docs/next/embedded/arduino#flashing)
- Broken anchor on source page path = /docs/next/reference/target-declaration:
   -> linking to #single-file-layout (resolved as: /docs/next/reference/target-declaration#single-file-layout)
   -> linking to #command-line-arguments (resolved as: /docs/next/reference/target-declaration#command-line-arguments)
   -> linking to #linking-support-files (resolved as: /docs/next/reference/target-declaration#linking-support-files)
   -> linking to #using-parameters (resolved as: /docs/next/reference/target-declaration#using-parameters)
   -> linking to #logging-levels (resolved as: /docs/next/reference/target-declaration#logging-levels)
- Broken anchor on source page path = /docs/next/reference/target-language-details:
   -> linking to #timed-behavior (resolved as: /docs/next/reference/target-language-details#timed-behavior)
   -> linking to #preamble (resolved as: /docs/next/reference/target-language-details#preamble)
   -> linking to #scheduling-delayed-reactions (resolved as: /docs/next/reference/target-language-details#scheduling-delayed-reactions)
   -> linking to #Dynamically-Allocated-Structs (resolved as: /docs/next/reference/target-language-details#Dynamically-Allocated-Structs)
   -> linking to /docs/next/#logging
   -> linking to /docs/next/#command-line-arguments
   -> linking to /docs/next/#threading
   -> linking to /docs/next/#single-threaded
   -> linking to #using-node-modules (resolved as: /docs/next/reference/target-language-details#using-node-modules)
   -> linking to #a-minimal-example (resolved as: /docs/next/reference/target-language-details#a-minimal-example)
- Broken anchor on source page path = /docs/next/reference/tracing:
   -> linking to /docs/next/#logging
- Broken anchor on source page path = /docs/next/tutorial-videos:
   -> linking to #introduction (resolved as: /docs/next/tutorial-videos#introduction)
   -> linking to #hello (resolved as: /docs/next/tutorial-videos#hello)
   -> linking to #target (resolved as: /docs/next/tutorial-videos#target)
   -> linking to #concepts (resolved as: /docs/next/tutorial-videos#concepts)
   -> linking to #concurrency (resolved as: /docs/next/tutorial-videos#concurrency)
   -> linking to #research (resolved as: /docs/next/tutorial-videos#research)
- Broken anchor on source page path = /docs/next/writing-reactors/actions:
   -> linking to /docs/next/#fast
- Broken anchor on source page path = /docs/next/writing-reactors/composing-reactors:
   -> linking to /docs/next/writing-reactors/actions#superdense-time
- Broken anchor on source page path = /docs/next/writing-reactors/multiports-and-banks:
   -> linking to #Combining-Banks-and-Multiports (resolved as: /docs/next/writing-reactors/multiports-and-banks#Combining-Banks-and-Multiports)
- Broken anchor on source page path = /docs/next/writing-reactors/preambles:
   -> linking to /docs/next/reference/target-language-details#python-target-implementation-details
   -> linking to #typescript-target-implementation-details (resolved as: /docs/next/writing-reactors/preambles#typescript-target-implementation-details)
- Broken anchor on source page path = /docs/next/writing-reactors/termination:
   -> linking to /docs/next/#timeout
- Broken anchor on source page path = /docs/next/writing-reactors/time-and-timers:
   -> linking to /docs/next/#fast
   -> linking to /docs/next/#command-line-arguments
   -> linking to /docs/next/#timeout
   -> linking to /docs/next/writing-reactors/actions#superdense-time
- Broken anchor on source page path = /docs/developer/developer-eclipse-setup-with-oomph:
   -> linking to /docs/developer/regression-tests#browsing-and-editing-examples-in-the-lf-ide
- Broken anchor on source page path = /docs/embedded/arduino:
   -> linking to #building (resolved as: /docs/embedded/arduino#building)
   -> linking to #flashing (resolved as: /docs/embedded/arduino#flashing)
- Broken anchor on source page path = /docs/reference/target-declaration:
   -> linking to #single-file-layout (resolved as: /docs/reference/target-declaration#single-file-layout)
   -> linking to #command-line-arguments (resolved as: /docs/reference/target-declaration#command-line-arguments)
   -> linking to #linking-support-files (resolved as: /docs/reference/target-declaration#linking-support-files)
   -> linking to #using-parameters (resolved as: /docs/reference/target-declaration#using-parameters)
   -> linking to #logging-levels (resolved as: /docs/reference/target-declaration#logging-levels)
- Broken anchor on source page path = /docs/reference/target-language-details:
   -> linking to #timed-behavior (resolved as: /docs/reference/target-language-details#timed-behavior)
   -> linking to #preamble (resolved as: /docs/reference/target-language-details#preamble)
   -> linking to #scheduling-delayed-reactions (resolved as: /docs/reference/target-language-details#scheduling-delayed-reactions)
   -> linking to #Dynamically-Allocated-Structs (resolved as: /docs/reference/target-language-details#Dynamically-Allocated-Structs)
   -> linking to /docs/#logging
   -> linking to /docs/#command-line-arguments
   -> linking to /docs/#threading
   -> linking to /docs/#single-threaded
   -> linking to #using-node-modules (resolved as: /docs/reference/target-language-details#using-node-modules)
   -> linking to #a-minimal-example (resolved as: /docs/reference/target-language-details#a-minimal-example)
- Broken anchor on source page path = /docs/reference/tracing:
   -> linking to /docs/#logging
- Broken anchor on source page path = /docs/tutorial-videos:
   -> linking to #introduction (resolved as: /docs/tutorial-videos#introduction)
   -> linking to #hello (resolved as: /docs/tutorial-videos#hello)
   -> linking to #target (resolved as: /docs/tutorial-videos#target)
   -> linking to #concepts (resolved as: /docs/tutorial-videos#concepts)
   -> linking to #concurrency (resolved as: /docs/tutorial-videos#concurrency)
   -> linking to #research (resolved as: /docs/tutorial-videos#research)
- Broken anchor on source page path = /docs/writing-reactors/actions:
   -> linking to /docs/#fast
- Broken anchor on source page path = /docs/writing-reactors/composing-reactors:
   -> linking to /docs/writing-reactors/actions#superdense-time
- Broken anchor on source page path = /docs/writing-reactors/multiports-and-banks:
   -> linking to #Combining-Banks-and-Multiports (resolved as: /docs/writing-reactors/multiports-and-banks#Combining-Banks-and-Multiports)
- Broken anchor on source page path = /docs/writing-reactors/preambles:
   -> linking to /docs/reference/target-language-details#python-target-implementation-details
   -> linking to #typescript-target-implementation-details (resolved as: /docs/writing-reactors/preambles#typescript-target-implementation-details)
- Broken anchor on source page path = /docs/writing-reactors/termination:
   -> linking to /docs/#timeout
- Broken anchor on source page path = /docs/writing-reactors/time-and-timers:
   -> linking to /docs/#fast
   -> linking to /docs/#command-line-arguments
   -> linking to /docs/#timeout
   -> linking to /docs/writing-reactors/actions#superdense-time

@lhstrh
Copy link
Member

lhstrh commented Mar 4, 2024

Hm, I thought we configured Docusaurus to treat broken links as a failure, not a warning. Perhaps @axmmisaka could comment on this?

@axmmisaka
Copy link
Collaborator

There's another option for broken "anchor" which is different from broken "link".
Over time the documentation becomes a mess and some deleted sections were still referenced.
Some others were caused by malformed markdown file, e.g. arduino.mdx: misuse of h1 in md (# in lieu of ##) and ## Command-Line Arguments - same.

I have made a branch https://github.com/lf-lang/lf-lang.github.io/tree/fix-broken-links where I enabled the option to fail the build should any anchor be broken; yet I do not wish to fix them 1 by 1, so I would see if anyone else would be interested in fixing these links with their best judgement......

@lhstrh lhstrh added the help wanted Extra attention is needed label May 10, 2024
@cmnrd cmnrd added this to the website cleanup milestone Jul 9, 2024
@lhstrh lhstrh linked a pull request Oct 29, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants