From 03fdb94743a6179cacc1adeb8466f9bf0029fa0e Mon Sep 17 00:00:00 2001 From: Pablo Estrada Date: Fri, 8 Apr 2022 08:15:15 -0700 Subject: [PATCH] Squash broken links (#494) * Fix broken link * Temp disable custom Markdown link checker config to troubleshoot false negatives * Fix 2 broken links * Specify MLC v@1.0.13 since the current v1 has many relative link failures per: https://github.com/gaurav-nelson/github-action-markdown-link-check/issues/127 * Wrap localhost link in ticks * Allow 429s as alive status code * Intentionally introduce broken link * Add missing https to link * Update mlc config * Revert "Intentionally introduce broken link" This reverts commit 6f9d58396d168e2eaec32cac9dabc15def7c097c. * Go back to checking only modified files instead of the whole project * Add scheduled link checker to prevent link rot * Add scheduled link checker to prevent link rot --- .../markdown-link-check-on-schedule.yml | 18 ++++++++++++++++++ .github/workflows/markdown-link-check.yml | 14 ++++++++------ .mlc_config.json | 15 ++++++++++----- README.md | 2 +- docs/experiments/join-mode/recursive-joins.md | 2 +- docs/experiments/overview.md | 2 +- docs/ignoring-files-folders-code.md | 2 +- docs/status.md | 2 +- 8 files changed, 41 insertions(+), 16 deletions(-) create mode 100644 .github/workflows/markdown-link-check-on-schedule.yml diff --git a/.github/workflows/markdown-link-check-on-schedule.yml b/.github/workflows/markdown-link-check-on-schedule.yml new file mode 100644 index 000000000..45975bbf7 --- /dev/null +++ b/.github/workflows/markdown-link-check-on-schedule.yml @@ -0,0 +1,18 @@ +name: Check Markdown links + +on: + schedule: + - cron: "31 23 * * 4" + +jobs: + markdown-link-check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - uses: gaurav-nelson/github-action-markdown-link-check@1.0.13 + with: + use-quiet-mode: "yes" + use-verbose-mode: "yes" + base-branch: "main" + check-modified-files-only: "no" + config-file: ".mlc_config.json" diff --git a/.github/workflows/markdown-link-check.yml b/.github/workflows/markdown-link-check.yml index 6dc158133..280705747 100644 --- a/.github/workflows/markdown-link-check.yml +++ b/.github/workflows/markdown-link-check.yml @@ -6,9 +6,11 @@ jobs: markdown-link-check: runs-on: ubuntu-latest steps: - - uses: actions/checkout@master - - uses: gaurav-nelson/github-action-markdown-link-check@v1 - with: - use-quiet-mode: 'yes' - use-verbose-mode: 'yes' - config-file: '.mlc_config.json' \ No newline at end of file + - uses: actions/checkout@master + - uses: gaurav-nelson/github-action-markdown-link-check@1.0.13 + with: + use-quiet-mode: "yes" + use-verbose-mode: "yes" + base-branch: "main" + check-modified-files-only: "yes" + config-file: ".mlc_config.json" diff --git a/.mlc_config.json b/.mlc_config.json index 608cc4c7c..0bdb77a71 100644 --- a/.mlc_config.json +++ b/.mlc_config.json @@ -1,13 +1,18 @@ { "ignorePatterns": [ { - "pattern": "^http://localhost:" - }, + "pattern": "^https*://127.0.0.1" + }, { - "pattern": "^http://127.0.0.1:" + "pattern": "^http://localhost:" }, { - "pattern": "^https://www.baeldung.com/" // when automated tests hit this, site returns a CAPTCHA + "pattern": "https://gitlab.com/-/*" } - ] + ], + "timeout": "20s", + "retryOn429": true, + "retryCount": 2, + "fallbackRetryDelay": "30s", + "aliveStatusCodes": [200, 206, 301, 400, 429] } \ No newline at end of file diff --git a/README.md b/README.md index 5016f7543..6c317a46a 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ Contributions to the docs are welcome! To start contributing, first please make 1. Clone the repo 2. Install: `yarn install` -3. Run the docs locally with `yarn start` and then go to: +3. Run the docs locally with `yarn start` and then go to: `` ## Build and preview diff --git a/docs/experiments/join-mode/recursive-joins.md b/docs/experiments/join-mode/recursive-joins.md index f9b0316eb..b5e5d59c6 100644 --- a/docs/experiments/join-mode/recursive-joins.md +++ b/docs/experiments/join-mode/recursive-joins.md @@ -1,6 +1,6 @@ # Recursive joins -Join mode is an extension of Semgrep that runs multiple rules at once and only returns results if certain conditions are met. Join mode is an experimental mode that enables you to cross file boundaries, allowing you to write rules for whole codebases instead of individual files. More information is available in [Join mode overview](/docs/experiments/join-mode/overview). +Join mode is an extension of Semgrep that runs multiple rules at once and only returns results if certain conditions are met. Join mode is an experimental mode that enables you to cross file boundaries, allowing you to write rules for whole codebases instead of individual files. More information is available in [Join mode overview](./overview/). Recursive join mode has a recursive operator, `-->`, which executes a recursive query on the given condition. This recursive operator allows you to write a Semgrep rule that effectively crawls the codebase on a condition you specify, letting you build chains such as function call chains or class inheritance chains. diff --git a/docs/experiments/overview.md b/docs/experiments/overview.md index cb53761e7..a4f1c5f72 100644 --- a/docs/experiments/overview.md +++ b/docs/experiments/overview.md @@ -75,7 +75,7 @@ rules: ## Generic pattern matching -See [generic pattern matching](../generic-pattern-matching/). +See [generic pattern matching](./generic-pattern-matching/). ## Deprecated experiments diff --git a/docs/ignoring-files-folders-code.md b/docs/ignoring-files-folders-code.md index 8c0b17218..f01920cb4 100644 --- a/docs/ignoring-files-folders-code.md +++ b/docs/ignoring-files-folders-code.md @@ -32,7 +32,7 @@ Without user customization, Semgrep refers to the following to define ignored fi * Semgrep's default `.semgrepignore` file * Your repository's `.gitignore` file (if it exists) -In the absence of a user-generated `.semgrepignore`, Semgrep will refer to [its repository's default template](://github.com/returntocorp/semgrep/blob/develop/semgrep/semgrep/templates/.semgrepignore): +In the absence of a user-generated `.semgrepignore`, Semgrep will refer to [its repository's default template](https://github.com/returntocorp/semgrep/blob/develop/semgrep/semgrep/templates/.semgrepignore): ``` DEFAULT_SEMGREPIGNORE_TEXT diff --git a/docs/status.md b/docs/status.md index 22ce48b98..b4caddd72 100644 --- a/docs/status.md +++ b/docs/status.md @@ -103,7 +103,7 @@ The following thresholds define each maturity level: Visit the cheat sheet generation script and associated semgrep-core test files to learn more about each feature: -* [generation script](https://github.com/returntocorp/semgrep/blob/develop/scripts/generate_test_matrix.py) +* [generation script](https://github.com/returntocorp/semgrep/blob/develop/scripts/generate_cheatsheet.py) * [semgrep-core test files](https://github.com/returntocorp/semgrep/tree/develop/semgrep-core/tests) ## Language parse rates