-
-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
💅📝 Restructure the changelog for clarity #8066
💅📝 Restructure the changelog for clarity #8066
Conversation
This also implements support for commits as change note references. They are rendered separately. When there are several change note fragment files symlinked, with numbers and commit hashes pointing to the same changelog category, all of them are enumerated. PRs/issue numbers a listed in a paragraph that is separate from the commit links.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #8066 +/- ##
=======================================
Coverage 97.48% 97.48%
=======================================
Files 107 107
Lines 32600 32600
Branches 3800 3800
=======================================
Hits 31781 31781
Misses 616 616
Partials 203 203
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
8cd09e2
to
d1da933
Compare
Specifically, the new Towncrier fragment types are set up to be `bugfix`, `feature`, `deprecation`, `breaking`, `doc`, `packaging`, `contrib`, `misc`. Previously, the `misc` fragments were rendered without the entry context, just as a list of PR numbers. With this change, the change note text is displayed as usual.
d1da933
to
7ec9225
Compare
7ec9225
to
a2a4a92
Compare
Backport to 3.9: 💔 cherry-picking failed — conflicts found❌ Failed to cleanly apply cba3469 on top of patchback/backports/3.9/cba346995b953b23421079ee0bccdfe85d736e7a/pr-8066 Backporting merged PR #8066 into master
🤖 @patchback |
Backport to 3.10: 💔 cherry-picking failed — conflicts found❌ Failed to cleanly apply cba3469 on top of patchback/backports/3.10/cba346995b953b23421079ee0bccdfe85d736e7a/pr-8066 Backporting merged PR #8066 into master
🤖 @patchback |
PR aio-libs#8066 (cherry picked from commit cba3469)
PR aio-libs#8066 (cherry picked from commit cba3469)
…larity (#8067) **This is a backport of PR #8066 as merged into master (cba3469).** PR #8066 (cherry picked from commit cba3469) <!-- Thank you for your contribution! --> ## What do these changes do? <!-- Please give a short brief about these changes. --> ## Are there changes in behavior for the user? <!-- Outline any notable behaviour for the end users. --> ## Related issue number <!-- Are there any issues opened that will be resolved by merging this change? --> <!-- Remember to prefix with 'Fixes' if it should close the issue (e.g. 'Fixes #123'). --> ## Checklist - [ ] I think the code is well written - [ ] Unit tests for the changes exist - [ ] Documentation reflects the changes - [ ] If you provide code modification, please add yourself to `CONTRIBUTORS.txt` * The format is <Name> <Surname>. * Please keep alphabetical order, the file is sorted by names. - [ ] Add a new news fragment into the `CHANGES/` folder * name it `<issue_or_pr_num>.<type>.rst` (e.g. `588.bugfix.rst`) * if you don't have an issue number, change it to the pull request number after creating the PR * `.bugfix`: A bug fix for something the maintainers deemed an improper undesired behavior that got corrected to match pre-agreed expectations. * `.feature`: A new behavior, public APIs. That sort of stuff. * `.deprecation`: A declaration of future API removals and breaking changes in behavior. * `.breaking`: When something public is removed in a breaking way. Could be deprecated in an earlier release. * `.doc`: Notable updates to the documentation structure or build process. * `.packaging`: Notes for downstreams about unobvious side effects and tooling. Changes in the test invocation considerations and runtime assumptions. * `.contrib`: Stuff that affects the contributor experience. e.g. Running tests, building the docs, setting up the development environment. * `.misc`: Changes that are hard to assign to any of the above categories. * Make sure to use full sentences with correct case and punctuation, for example: ```rst Fixed issue with non-ascii contents in doctest text files -- by :user:`contributor-gh-handle`. ``` Use the past tense or the present tense a non-imperative mood, referring to what's changed compared to the last released version of this project.
…arity (#8068) **This is a backport of PR #8066 as merged into master (cba3469).** PR #8066 (cherry picked from commit cba3469) <!-- Thank you for your contribution! --> ## What do these changes do? <!-- Please give a short brief about these changes. --> ## Are there changes in behavior for the user? <!-- Outline any notable behaviour for the end users. --> ## Related issue number <!-- Are there any issues opened that will be resolved by merging this change? --> <!-- Remember to prefix with 'Fixes' if it should close the issue (e.g. 'Fixes #123'). --> ## Checklist - [ ] I think the code is well written - [ ] Unit tests for the changes exist - [ ] Documentation reflects the changes - [ ] If you provide code modification, please add yourself to `CONTRIBUTORS.txt` * The format is <Name> <Surname>. * Please keep alphabetical order, the file is sorted by names. - [ ] Add a new news fragment into the `CHANGES/` folder * name it `<issue_or_pr_num>.<type>.rst` (e.g. `588.bugfix.rst`) * if you don't have an issue number, change it to the pull request number after creating the PR * `.bugfix`: A bug fix for something the maintainers deemed an improper undesired behavior that got corrected to match pre-agreed expectations. * `.feature`: A new behavior, public APIs. That sort of stuff. * `.deprecation`: A declaration of future API removals and breaking changes in behavior. * `.breaking`: When something public is removed in a breaking way. Could be deprecated in an earlier release. * `.doc`: Notable updates to the documentation structure or build process. * `.packaging`: Notes for downstreams about unobvious side effects and tooling. Changes in the test invocation considerations and runtime assumptions. * `.contrib`: Stuff that affects the contributor experience. e.g. Running tests, building the docs, setting up the development environment. * `.misc`: Changes that are hard to assign to any of the above categories. * Make sure to use full sentences with correct case and punctuation, for example: ```rst Fixed issue with non-ascii contents in doctest text files -- by :user:`contributor-gh-handle`. ``` Use the past tense or the present tense a non-imperative mood, referring to what's changed compared to the last released version of this project.
@Dreamsorcerer with this update, we should be able to change the misc fragments to more accurate types. Also, there's another activity I started doing in other projects — checking the changelog draft and mass-correcting the writing style inconsistencies. Like, making the sentences complete, switching them to the past tense (or a present tense-based alternative referring to the changes since the previous release in a non-imperative mood; e.g. using phrasing like "X now does Y" etc). This helps make the resulting released change log section more coherent. Would you mind looking into this? |
This synchronizes the changelog setup from some other aio-libs projects.
Specifically, the new Towncrier fragment types are set up to be
bugfix
,feature
,deprecation
,breaking
,doc
,packaging
,contrib
,misc
.Previously, the
misc
fragments were rendered without the entrycontext, just as a list of PR numbers. With this change, the change
note text is displayed as usual.
This also implements support for commits as change note references.
They are rendered separately. When there are several change note
fragment files symlinked, with numbers and commit hashes pointing to
the same changelog category, all of them are enumerated. PRs/issue
numbers a listed in a paragraph that is separate from the commit
links.
Are there changes in behavior for the user?
The changelog will be nicer.
Related issue number
N/A
Checklist
CONTRIBUTORS.txt
CHANGES/
foldername it
<issue_or_pr_num>.<type>.rst
(e.g.588.bugfix.rst
)if you don't have an issue number, change it to the pull request
number after creating the PR
.bugfix
: A bug fix for something the maintainers deemed animproper undesired behavior that got corrected to match
pre-agreed expectations.
.feature
: A new behavior, public APIs. That sort of stuff..deprecation
: A declaration of future API removals and breakingchanges in behavior.
.breaking
: When something public is removed in a breaking way.Could be deprecated in an earlier release.
.doc
: Notable updates to the documentation structure or buildprocess.
.packaging
: Notes for downstreams about unobvious side effectsand tooling. Changes in the test invocation considerations and
runtime assumptions.
.contrib
: Stuff that affects the contributor experience. e.g.Running tests, building the docs, setting up the development
environment.
.misc
: Changes that are hard to assign to any of the abovecategories.
Make sure to use full sentences with correct case and punctuation,
for example:
Use the past tense or the present tense a non-imperative mood,
referring to what's changed compared to the last released version
of this project.