#github-action #markdown #validation #hyperlink #content #multi-threading #marketplaces

app none-shall-pass

Artifact for GitHub Action to validate hyperlinks in all markdown files

18 releases

0.2.3 May 20, 2024
0.2.2 May 20, 2024
0.1.9 May 18, 2024
0.1.6 Feb 14, 2024
0.0.1 Oct 31, 2023

#84 in Text processing

Download history 30/week @ 2024-09-18 52/week @ 2024-09-25

1,619 downloads per month

MIT license

4MB
497 lines

Contains (Mach-o exe, 6MB) none-shall-pass

none-shall-pass-rustic

made-with-rust

build

Artifact for none-shall-pass

Summary

  • none-shall-pass-rustic is an application written in Rust.
  • Validates hyperlinks in markdown files.
  • Accepts inputs provided as command-line arguments.
  • Extracts hyperlinks from Markdown content, validates them concurrently using multithreading, and logs the validation results.
  • Differentiates between local Markdown files and Wiki pages within the repository, expanding its validation scope.
  • Usage via GitHub actions can be found in GitHub Marketplace

Description

  • Clones the GitHub wiki pages
  • Looks up all the *.md files
  • Scans for hyperlinks using regex (inline, footnote, and anchored)
  • Ignores failure when the URL is a localhost / 127.0.0.1 / 0.0.0.0

Arguments

  • --debug - Enables debug level logging
  • --owner - Owner/organization of the repository
  • --repo - Name of the repository
  • --exclude - Exclude URLs (as comma separated list) to have known failures

Crate

https://crates.io/crates/none-shall-pass

Docs

https://docs.rs/crate/none-shall-pass

Linting

Requirement

rustup component add clippy

Usage

cargo clippy --no-deps --fix --allow-dirty

© Vignesh Rao

Licensed under the MIT License

Dependencies

~7–19MB
~273K SLoC