diff --git a/.editorconfig b/.editorconfig index 10bc0533c..e405d8aad 100644 --- a/.editorconfig +++ b/.editorconfig @@ -25,7 +25,7 @@ indent_size = 4 trim_trailing_whitespace = true insert_final_newline = true -[*.{scss}] # SASS guidelines: https://archive.today/2024.02.16-232553/https://sass-guidelin.es/ +[*.{scss}] # SASS guidelines: https://archive.ph/2024.02.16-232553/https://sass-guidelin.es/ indent_style = space indent_size = 2 # Recommended by SASS guidelines max_line_length = 100 # Recommended by SASS guidelines diff --git a/.github/actions/force-ipv4/README.md b/.github/actions/force-ipv4/README.md index bdf6c0caf..0728605d5 100644 --- a/.github/actions/force-ipv4/README.md +++ b/.github/actions/force-ipv4/README.md @@ -27,6 +27,6 @@ This action is a workaround addressing specific IPv6-related connectivity issues [2]: https://archive.ph/2024.03.28-185838/https://github.com/actions/runner-images/issues/668 "IPv6 on GitHub-hosted runners · Issue #668 · actions/runner-images · GitHub | github.com" [3]: https://archive.ph/2024.03.28-185847/https://github.com/actions/runner/issues/3213 "GitHub runner cannot send `fetch` with `node`, failing with IPv6 DNS error `UND_ERR_CONNECT_TIMEOUT` · Issue #3213 · actions/runner · GitHub | github.com" [4]: https://archive.ph/2024.03.28-185853/https://github.com/actions/runner-images/issues/9540 "Cannot send outbound requests using node fetch, failing with IPv6 DNS error UND_ERR_CONNECT_TIMEOUT · Issue #9540 · actions/runner-images · GitHub | github.com" -[5]: https://archive.today/2024.03.30-113315/https://github.com/nodejs/node/issues/40537 "\"localhost\" favours IPv6 in node v17, used to favour IPv4 · Issue #40537 · nodejs/node · GitHub" +[5]: https://archive.ph/2024.03.30-113315/https://github.com/nodejs/node/issues/40537 "\"localhost\" favours IPv6 in node v17, used to favour IPv4 · Issue #40537 · nodejs/node · GitHub" [6]: https://archive.ph/2024.03.28-185900/https://github.com/nodejs/node/issues/41625 "Happy Eyeballs support (address IPv6 issues in Node 17) · Issue #41625 · nodejs/node · GitHub | github.com" [7]: https://archive.ph/2024.03.28-185910/https://github.com/nodejs/undici/issues/1531 "fetch times out in under 5 seconds · Issue #1531 · nodejs/undici · GitHub | github.com" diff --git a/.github/workflows/checks.quality.yaml b/.github/workflows/checks.quality.yaml index ca75b0793..448db67db 100644 --- a/.github/workflows/checks.quality.yaml +++ b/.github/workflows/checks.quality.yaml @@ -15,7 +15,7 @@ jobs: - npm run lint:md:relative-urls - npm run lint:md:external-urls os: [ macos, ubuntu, windows ] - fail-fast: false # Still interested to see results from other combinations + fail-fast: false # Still interested to see results from other commands steps: - name: Checkout diff --git a/.remark-lint-no-dead-urls.js b/.remark-lint-no-dead-urls.js new file mode 100644 index 000000000..204c8e627 --- /dev/null +++ b/.remark-lint-no-dead-urls.js @@ -0,0 +1,26 @@ +import remarkLintNoDeadUrls from 'remark-lint-no-dead-urls'; + +/** @type {import('remark-lint-no-dead-urls').Options} */ +const Options = { + skipUrlPatterns: [ + // These result in false negatives + 'archive.ph', + 'scoop.sh', + 'localhost', + 'archive.org', + ].map(buildUrlPattern), + ignorePatterns: [ + './CHANGELOG.md', + ], +}; + +/** @type {Omit[:port]/ + return `^https?://${escaped}(?::\\d+)?/.*$`; +} diff --git a/docs/ci-cd.md b/docs/ci-cd.md index f85d8a375..4806a1fec 100644 --- a/docs/ci-cd.md +++ b/docs/ci-cd.md @@ -42,4 +42,4 @@ Convention for naming pipeline files: **`..yaml`**. - Kebab-case allows to have better URL references to them. - [README.md](./../README.md) uses URL references to show status badges for actions. -[1]: https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#about-yaml-syntax-for-workflows +[1]: https://web.archive.org/web/20250126141528/https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#about-yaml-syntax-for-workflows "Workflow syntax for GitHub Actions - GitHub Docs | docs.github.com" diff --git a/docs/script-guidelines.md b/docs/script-guidelines.md index ebdf488a6..8f28c2ec5 100644 --- a/docs/script-guidelines.md +++ b/docs/script-guidelines.md @@ -37,7 +37,7 @@ Key attributes of a good script: - Use credible and reputable sources for references. - Use archived links by using [archive.org](https://archive.org) or [archive.ph](https://archive.ph). - - Format archive.today links fully, for example: `https://archive.ph/YYYYMMDDhhmmss/https://privacy.sexy`. + - Format archive.today/archive.ph links fully, for example: `https://archive.ph/YYYYMMDDhhmmss/https://privacy.sexy`. - Explain the default behavior if the script is not executed. ## Shared functions diff --git a/package.json b/package.json index e5eab3707..3b89798b4 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "lint:md": "markdownlint **/*.md --ignore node_modules", "lint:md:consistency": "remark . --frail --use remark-preset-lint-consistent", "lint:md:relative-urls": "remark . --frail --use remark-validate-links", - "lint:md:external-urls": "remark . --frail --use remark-lint-no-dead-urls", + "lint:md:external-urls": "remark . --frail --rc-path .remark-lint-no-dead-urls.js", "lint:yaml": "yamllint **/*.yaml --ignore=node_modules/**/*.yaml", "lint:pylint": "pylint **/*.py", "postinstall": "electron-builder install-app-deps", diff --git a/src/application/collections/windows.yaml b/src/application/collections/windows.yaml index d1d3c5b35..68c6bcf83 100644 --- a/src/application/collections/windows.yaml +++ b/src/application/collections/windows.yaml @@ -27545,7 +27545,7 @@ actions: [1]: https://web.archive.org/web/20241108211338/https://learn.microsoft.com/en-us/windows-hardware/drivers/install/updating-driver-files "Updating Driver Files - Windows drivers | Microsoft Learn | learn.microsoft.com" [2]: https://web.archive.org/web/20241108210850/https://www.thewindowsclub.com/windows-keeps-installing-old-intel-graphics-driver "Windows keeps installing old Intel Graphics Driver | www.thewindowsclub.com" [3]: https://web.archive.org/web/20241108210848/https://djdallmann.github.io/GamingPCSetup/CONTENT/DOCS/POSTINSTALL/ "Post Installation Steps | GamingPCSetup | djdallmann.github.io" - [4]: https://archive.today/2024.11.08-211401/https://github.com/privacysexy-forks/10_0_22622_601/blob/c598035e1a6627384d646140fe9e4d234b36b11d/C/Windows/SysWOW64/newdev.dll.strings "10_0_22622_601/C/Windows/SysWOW64/newdev.dll.strings at c598035e1a6627384d646140fe9e4d234b36b11d · privacysexy-forks/10_0_22622_601 | github.com" + [4]: https://archive.ph/2024.11.08-211401/https://github.com/privacysexy-forks/10_0_22622_601/blob/c598035e1a6627384d646140fe9e4d234b36b11d/C/Windows/SysWOW64/newdev.dll.strings "10_0_22622_601/C/Windows/SysWOW64/newdev.dll.strings at c598035e1a6627384d646140fe9e4d234b36b11d · privacysexy-forks/10_0_22622_601 | github.com" call: - function: SetRegistryValue diff --git a/src/infrastructure/CodeRunner/Execution/CommandDefinition/Runner/ShellRunner/LoggingNodeShellCommandRunner.ts b/src/infrastructure/CodeRunner/Execution/CommandDefinition/Runner/ShellRunner/LoggingNodeShellCommandRunner.ts index 25db4f961..c32fc065a 100644 --- a/src/infrastructure/CodeRunner/Execution/CommandDefinition/Runner/ShellRunner/LoggingNodeShellCommandRunner.ts +++ b/src/infrastructure/CodeRunner/Execution/CommandDefinition/Runner/ShellRunner/LoggingNodeShellCommandRunner.ts @@ -15,7 +15,7 @@ export class LoggingNodeShellCommandRunner implements ShellCommandRunner { this.logger.info(`Executing command: ${command}`); return new Promise((resolve) => { this.systemOps.command.exec(command) - // https://archive.today/2024.01.19-004011/https://nodejs.org/api/child_process.html#child_process_event_exit + // https://archive.ph/2024.01.19-004011/https://nodejs.org/api/child_process.html#child_process_event_exit .on('exit', ( code, // The exit code if the child exited on its own. signal, // The signal by which the child process was terminated. diff --git a/src/presentation/assets/styles/_typography.scss b/src/presentation/assets/styles/_typography.scss index c160efefd..5199175fc 100644 --- a/src/presentation/assets/styles/_typography.scss +++ b/src/presentation/assets/styles/_typography.scss @@ -11,7 +11,7 @@ $font-family-cursive : 'Yesteryear', cursive; We prefix each variable with its type (absolute or relative) for clear identification and context. */ // Absolute sizes use the CSS data type, representing specific, fixed sizes unaffected by the parent element's size. -// See: https://archive.today/2024.02.02-005228/https://developer.mozilla.org/en-US/docs/Web/CSS/absolute-size. +// See: https://archive.ph/2024.02.02-005228/https://developer.mozilla.org/en-US/docs/Web/CSS/absolute-size. $font-size-absolute-x-small : 13px; $font-size-absolute-small : 15px; $font-size-absolute-normal : 17px; @@ -19,6 +19,6 @@ $font-size-absolute-large : 21px; $font-size-absolute-x-large : 27px; $font-size-absolute-xx-large : 40px; // Relative sizes employ the CSS data type, allowing font size adjustments based on the parent element's size. -// See: https://archive.today/2024.02.02-010054/https://developer.mozilla.org/en-US/docs/Web/CSS/relative-size. +// See: https://archive.ph/2024.02.02-010054/https://developer.mozilla.org/en-US/docs/Web/CSS/relative-size. $font-size-relative-smallest : 80%; $font-size-relative-smaller : 85%; diff --git a/tests/checks/external-urls/StatusChecker/TlsFingerprintRandomizer.ts b/tests/checks/external-urls/StatusChecker/TlsFingerprintRandomizer.ts index 11e1d0c6e..6d965226b 100644 --- a/tests/checks/external-urls/StatusChecker/TlsFingerprintRandomizer.ts +++ b/tests/checks/external-urls/StatusChecker/TlsFingerprintRandomizer.ts @@ -11,7 +11,7 @@ * implementation of Node.js. * * For more detailed information, visit: - * - https://archive.today/2024.03.13-102042/https://httptoolkit.com/blog/tls-fingerprinting-node-js/ + * - https://archive.ph/2024.03.13-102042/https://httptoolkit.com/blog/tls-fingerprinting-node-js/ * - https://check.ja3.zone/ (To check your tool's or browser's fingerprint) * - https://github.com/lwthiker/curl-impersonate (A solution for curl) * - https://github.com/depicts/got-tls (Cipher manipulation support for Node.js) @@ -49,7 +49,7 @@ export function getTlsContextInfo(): string { * matching known fingerprints that could identify the client as a Node.js application. * * For more details, refer to: - * - https://archive.today/2024.03.13-102234/https://getsetfetch.org/blog/tls-fingerprint.html + * - https://archive.ph/2024.03.13-102234/https://getsetfetch.org/blog/tls-fingerprint.html */ export function getShuffledCiphers(): readonly string[] { const nodeOrderedCipherList = constants.defaultCoreCipherList.split(':');