Skip to content

Fully implement markdownlint-cli2 in project

What does this MR do?

For: gitlab-docs#1761 (closed), full implement markdownlint-cli2 in gitlab project.

Validation instructions

Check new markdownlint-cli2 works:

  1. Check out this branch in the gitlab project.
  2. Run lefthook run pre-push. You should see markdownlint-cli2 is successfully invoked on the changed Markdown files.
  3. Run scripts/lint-doc.sh. You should see markdownlint-cli2 is successfully invoked on all Markdown files.
  4. Run markdownlint-cli2 "doc/**/*.md". You should see the same result as in the previous step.
  5. Make two changes to a Markdown lint file that will test a regular Markdownlint rule and that will test a custom Markdownlint rule. For example, in the file doc/administration/gitaly/tls_support.md:
    • Change the first bullet list to use * instead of -.
    • Remove lines 41 and 43 to exercise a custom rule.
  6. Check that these errors appear in your editor.
  7. Commit the changes to the file (example: doc/administration/gitaly/tls_support.md) and run lefthook run pre-push. You should see markdownlint-cli2 is successfully invoked on changed Markdown files and errors occur.
  8. Run scripts/lint-doc.sh. You should see markdownlint-cli2 is successfully invoked on all Markdown files and the same errors occur.
  9. Run markdownlint-cli2 "doc/**/*.md". You should see the same result as in the previous step and the same errors occur.

Check Vale hasn't regressed:

  1. Add a Vale error condition to a file. For example, add the string admin user to doc/administration/gitaly/tls_support.md and to doc/administration/gitaly/troubleshooting.md.
  2. Commit this second change and run lefthook run pre-push. You should see a combination of Markdownlint and Vale errors.
  3. Run scripts/lint-doc.sh. You should see a combination of Markdownlint and Vale errors.
  4. Run vale --minAlertLevel error doc. You should see the expected Vale error.

Author's checklist

If you are a GitLab team member and only adding documentation, do not add any of the following labels:

  • ~"frontend"
  • ~"backend"
  • ~"type::bug"
  • ~"database"

These labels cause the MR to be added to code verification QA issues.

Reviewer's checklist

Documentation-related MRs should be reviewed by a Technical Writer for a non-blocking review, based on Documentation Guidelines and the Style Guide.

If you aren't sure which tech writer to ask, use roulette or ask in the #docs Slack channel.

  • If the content requires it, ensure the information is reviewed by a subject matter expert.
  • Technical writer review items:
    • Ensure docs metadata is present and up-to-date.
    • Ensure the appropriate labels are added to this MR.
    • Ensure a release milestone is set.
    • If relevant to this MR, ensure content topic type principles are in use, including:
      • The headings should be something you'd do a Google search for. Instead of Default behavior, say something like Default behavior when you close an issue.
      • The headings (other than the page title) should be active. Instead of Configuring GDK, say something like Configure GDK.
      • Any task steps should be written as a numbered list.
      • If the content still needs to be edited for topic types, you can create a follow-up issue with the docs-technical-debt label.
  • Review by assigned maintainer, who can always request/require the reviews above. Maintainer's review can occur before or after a technical writer review.
Edited by Evan Read

Merge request reports