Skip to content
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

Better release notes generation and automated release process #7362

Open
6 of 10 tasks
Pierre-Sassoulas opened this issue Aug 26, 2022 · 6 comments
Open
6 of 10 tasks
Labels
Enhancement ✨ Improvement to a component Good first issue Friendly and approachable by new contributors Help wanted 🙏 Outside help would be appreciated, good for new contributors Maintenance Discussion or action around maintaining pylint or the dev workflow Minor 💅 Polishing pylint is always nice

Comments

@Pierre-Sassoulas
Copy link
Member

Pierre-Sassoulas commented Aug 26, 2022

Current problem

Desired solution

Markdown creation so it can be used in both context, other issue automatically fixed

Additional context

Noticed during the release of 2.15.0.

@Pierre-Sassoulas Pierre-Sassoulas added Enhancement ✨ Improvement to a component Maintenance Discussion or action around maintaining pylint or the dev workflow labels Aug 26, 2022
@Pierre-Sassoulas Pierre-Sassoulas added this to the 2.16.0 milestone Aug 26, 2022
@DudeNr33
Copy link
Collaborator

Markdown is not really directly supported by towncrier.
But people have found hacks for a workaround.
Alternatively, we could use pandoc or a similar tool to convert it.

For the link generation: This will also require some scripting. Currently we use the issue_format option:
https://github.com/PyCQA/pylint/blob/24eaec26f701cf8adddf27ffa8859e0bb5074a89/towncrier.toml#L6
The {issue} placeholder is simply the first part of the message fragment.
Maybe some pre-commit hook to convert simple #1234 into actual GitHub links would be better?

@Pierre-Sassoulas
Copy link
Member Author

For github we could do with only "#{issue}". I was thinking of using .md in order to not have to generate another document but this is done very unfrequentely so launching a script to generate github's text is reasonable.

@DudeNr33
Copy link
Collaborator

Sorry for the delay. I looked into the issue with the duplicated labels in the release notes.

The problem comes from the sphinx.ext.autosectionlabel extension. Comparing our generated releasenotes with other projects like pytest and twisted that use towncrier, it is normal to have duplicated titles in the resulting document.

The options we have to resolve this are:

  • Add autosectionlabel_maxdepth = 2 to doc/conf.py, which limits the autogeneration of labels to the first two levels (see docs)

OR

  • Use single_file=false in towncrier.toml, which would generate separate files for each release (see docs).

If the first option is OK for you, I would prefer that one.

@Pierre-Sassoulas
Copy link
Member Author

The first option work, I tested that on the release branch for 2.15.4 (on one cherry picked commit only, but I don't thik more test is required). Merge request is #7589

@Pierre-Sassoulas
Copy link
Member Author

Pierre-Sassoulas commented Jan 14, 2023

The new version of contributor-txt handle sorting reasonably well while keeping comments intact.

Pierre-Sassoulas added a commit to Pierre-Sassoulas/pylint that referenced this issue Jan 14, 2023
Pierre-Sassoulas added a commit to Pierre-Sassoulas/pylint that referenced this issue Jan 14, 2023
@Pierre-Sassoulas Pierre-Sassoulas modified the milestones: 2.16.0, 2.17.0 Jan 14, 2023
DanielNoord pushed a commit that referenced this issue Jan 15, 2023
@Pierre-Sassoulas Pierre-Sassoulas modified the milestones: 2.17.0, 3.0.0 Mar 7, 2023
@Pierre-Sassoulas Pierre-Sassoulas removed their assignment May 2, 2023
@Pierre-Sassoulas
Copy link
Member Author

I'm keeping the issue opened but I unassigned myself because with the frequence of release we have we can live with the current shortcoming. It would be different if we want to continuously release fixes or features.

@Pierre-Sassoulas Pierre-Sassoulas added the Minor 💅 Polishing pylint is always nice label May 2, 2023
@Pierre-Sassoulas Pierre-Sassoulas removed this from the 3.0.0 milestone May 2, 2023
@Pierre-Sassoulas Pierre-Sassoulas added Help wanted 🙏 Outside help would be appreciated, good for new contributors Good first issue Friendly and approachable by new contributors labels May 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement ✨ Improvement to a component Good first issue Friendly and approachable by new contributors Help wanted 🙏 Outside help would be appreciated, good for new contributors Maintenance Discussion or action around maintaining pylint or the dev workflow Minor 💅 Polishing pylint is always nice
Projects
None yet
Development

No branches or pull requests

2 participants