Skip to content

Convert contributing docs to Markdown - #842

Open
julianz- wants to merge 1 commit into
cherrypy:mainfrom
julianz-:docs/convert-contributing-to-markdown
Open

julianz- wants to merge 1 commit into
cherrypy:mainfrom
julianz-:docs/convert-contributing-to-markdown

Conversation

@julianz-

Copy link
Copy Markdown
Member

What kind of change does this PR introduce?

  • 🐞 bug fix
  • 🐣 feature
  • 📋 docs update
  • 📋 tests/coverage improvement
  • 📋 refactoring
  • 💥 other

What do these changes do?

  1. Converts .github/CONTRIBUTING.md and docs/contributing/guidelines.md from RST to Markdown, using MyST-parser (added in Add MyST-Parser and link community files in docs sidebar #835) to render them.

  2. Fixes the "Also" section so that it doesn't refer back to itself in the rendered version - it only shows up when reading CONTRIBUTING.md directly on GitHub.

  3. Drops CONTRIBUTING.md's opening pointer to the root README, which sends readers to a file with little relevant additional information for contributors.

  4. Updates one link in changelog-fragments.d/README.rst that broke once that file got pulled into the new Markdown page.

Are there changes in behavior for the user?

None — this only affects contributors reading the docs, not end users

Is it a substantial burden for the maintainers to support this?

No. It's a one-time format migration. Worth noting though:
changelog-fragments.d/README.rst remains RST, embedded via eval-rst
into an otherwise-Markdown page — a minor format seam, not a burden.

Related issue number

Discussed with @webknjaz in chat; not tied to a filed issue.

Checklist

  • I wrote descriptive pull request text above
  • The PR relates to only one subject with a clear title
    and description in grammatically correct, complete sentences
  • I think the code is well written
  • Unit tests for the changes exist
  • Integration tests for the changes exist (if applicable)
  • I used the same coding conventions as the rest of the project
  • The new code doesn't generate linter offenses
  • Project documentation (in docs/) and inline docstrings reflect the changes
  • My commits each have a descriptive title and a body explaining the why
    (see [good commit messages])
  • I have added a [change log entry]
    (can be done once the PR number is known; alternatively, you can
    use a related issue number if one exists)
  • [] I'm planning to [squash related commits] together before final merge
  • I have read the [contribution guide] and the
    [code of conduct][CoC]

Convert .github/CONTRIBUTING.md and docs/contributing/guidelines.md
from RST to Markdown, using MyST-parser (added in cherrypy#835) to render them.

In addition, fix the "Also" section linking the rendered guidelines
page back to itself: exclude it from the include instead of just
rewording it, so it only shows up when reading CONTRIBUTING.md
directly on GitHub. And drop CONTRIBUTING.md's opening pointer to
the root README, which sends readers to a file with little relevant
additional information for contributors.

Also update one link in changelog-fragments.d/README.rst that broke
once that file got pulled into the new Markdown page.
@psf-chronographer psf-chronographer Bot added the bot:chronographer:provided A mark meaning that a new change log entry is present within the patch. label Sep 19, 2026
@read-the-docs-community

Copy link
Copy Markdown

Documentation build overview

📚 cheroot | 🛠️ Build #34646978 | 📁 Comparing ac30555 against latest (407c6dc)

  🔍 Preview build  

3 files changed
± history/index.html
± contributing/guidelines/index.html
± pkg/cheroot.server/index.html

@codecov

codecov Bot commented Sep 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.20%. Comparing base (407c6dc) to head (ac30555).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #842      +/-   ##
==========================================
+ Coverage   78.16%   78.20%   +0.04%     
==========================================
  Files          41       41              
  Lines        4791     4791              
  Branches      548      548              
==========================================
+ Hits         3745     3747       +2     
+ Misses        906      905       -1     
+ Partials      140      139       -1     

@webknjaz

Copy link
Copy Markdown
Member

@julianz- the CI is failing under Python 3.13+ due to a new validation check in coveragepy. Could you look into cherry-picking re-actors/alls-green@8de05dc in a standalone PR to fix the CI overall?

See :file:`towncrier.toml` for all available categories
(``tool.towncrier.type``).

.. _Towncrier philosophy:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did you do this? I actually intentionally prefer detached references everywhere so that they are clearly labeled and can be reused.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, the commit message says that one link broke. Did you mean this one?

@julianz- pro tip — you can leave additional notes right in the code review diff, as inline threads, like I do here. This helps enrich the context and saves me from having to guess.

updating to the new version of the software will affect
end-users. This is why we enforce collection of the change
fragment files in pull requests as per `Towncrier philosophy`_.
fragment files in pull requests as per `Towncrier philosophy

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would the link still break if you keep put it after this paragraph? 🤔

:end-before: "## Also"
```

## First-time setup

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sort of gives me vibes of a "this is how you use a computer". Wonder if this is useful at all or should link to something external. Although, I realize that a format conversion PR is not a place to discuss this. So this is just a side note for the future.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@julianz- what if we updated this to be a README.md too? Would it be helpful or do you think this is out of the scope here?

@webknjaz webknjaz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@julianz- I'll let you decide whether you want to extend the scope a little or merge this as is.

In any case, I'd like a follow-up to reconfigure Towncrier to start using MD for the fragment files to make people's lives easier. This will require some amount of integration work, though. Here's a few places to pick up a few cool tricks from: https://github.com/jazzband/pip-tools/pull/2203/changes#diff-e010bb4b0f729415605939bacb0af8800a91a06d404da48b7e3fac5a74cddc90 / https://github.com/jazzband/pip-tools/pull/2343/changes#diff-e010bb4b0f729415605939bacb0af8800a91a06d404da48b7e3fac5a74cddc90R19

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bot:chronographer:provided A mark meaning that a new change log entry is present within the patch.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants