Skip to content

De-link domain reference to avoid spurious link check failure #62

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

Merged
merged 1 commit into from
Nov 14, 2023
Merged

De-link domain reference to avoid spurious link check failure #62

merged 1 commit into from
Nov 14, 2023

Conversation

per1234
Copy link
Contributor

@per1234 per1234 commented Nov 14, 2023

The license information in the readme contains a reference to www.arduino.cc.

Text that looks like a domain is automatically linkified by common Markdown renderers (including the one used by GitHub for repository contents), converting this to a link to http://www.arduino.cc. The project infrastructure includes a check for broken links in the Markdown files. The markdown-link-check tool that provides this check is smart enough to also check these links produced by the autolink feature.

When the http://www.arduino.cc URL is opened normally, the Arduino website simply redirects to https://www.arduino.cc (note the https scheme) and all is well. However, when markdown-link-check attempts to load that URL, it fails spuriously with an HTTP 403 Forbidden response code (perhaps due to draconian security settings on the arduino.cc web infrastructure).

This could be fixed by changing the www.arduino.cc text to something like [www.arduino.cc](https://www.arduino.cc). However, I don't think there was ever an intention for this reference to serve as a path for the reader of the text to visit that domain. Rather, it was added as an alternative way of identifying the entity referred to as "ARDUINO SA". For this reason, I think the most appropriate solution to the spurious link check failure is to prevent the autolinking of this text. This is done by injecting HTML comment tags at strategic locations in the domain name. These tags cause the text to no longer be recognized as a domain name by the autolink system of the markdown-link-check tool and the GitHub Flavored Markdown renderer both. Other than it no longer being a link, the comment tags have no effect on the rendered text.

The license information in the readme contains a reference to www.arduino.cc. 

Text that looks like a domain is automatically linkified by common Markdown renderers (including the one used by GitHub
for repository contents), converting this to a link to http://www.arduino.cc. The project infrastructure includes a
check for broken links in the Markdown files. The markdown-link-check tool that provides this check is smart enough to
also check these links produced by the autolink feature.

When the http://www.arduino.cc URL is opened normally, the Arduino website simply redirects to https://www.arduino.cc
(note the https scheme) and all is well. However, when markdown-link-check attempts to load that URL, it fails
spuriously with an HTTP 403 Forbidden response code (perhaps due to draconian security settings on the arduino.cc web
infrastructure).

This could be fixed by changing the `www.arduino.cc` text to something like `[www.arduino.cc](https://www.arduino.cc)`.
However, I don't think there was ever an intention for this reference to serve as a path for the reader of the text to
visit that domain. Rather, it was added as an alternative way of identifying the entity referred to as "ARDUINO SA". For
this reason, I think the most appropriate solution to the spurious link check failure is to prevent the autolinking of
this text. This is done by injecting HTML comment tags at strategic locations in the domain name. These tags cause the
text to no longer be recognized as a domain name by the autolink system of the markdown-link-check tool and the GitHub
Flavored Markdown renderer both. Other than it no longer being a link, the comment tags have no effect on the rendered
text.
@per1234 per1234 added type: imperfection Perceived defect in any part of project topic: infrastructure Related to project infrastructure labels Nov 14, 2023
@per1234 per1234 self-assigned this Nov 14, 2023
@per1234 per1234 merged commit 58835c6 into arduino:main Nov 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: infrastructure Related to project infrastructure type: imperfection Perceived defect in any part of project
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants