Description
Detailed Description
As the create
command supports a template based creation of release notes (RN), so the export
command should do it as well.
Possible Implementation
Currently the export
command reads the already created markdown RN from a release and exports them as they are. To support templates it would require to load the milestones issues and then create the RN based on the original data using the template.
Parsing of the markdown RN is IMO not recommended, because it cannot be assured that the RN have the same format or contains all the data the user wants to export.
The following parameters should be added:
-m, --milestone
: The milestone to use.--template
: The template file path.
The logic could be as follows:
- If no or the
-tagName
parameter is passed, the RN would be exported as they were created (current feature) - If the
--milestone
parameter is passed, the milestone issues will be loaded and the RN created based on the default template. - If the
--template
parameter is passed (with or without--milestone
), the milestone issues will be loaded and the RN created based on the provided template.
Context
The GitHub API allows to fetch the issues over pages. Although it is limited to 5000 requests it were (theoretically) possible
to get up to 500.000 issues. This is more than enough for a complete release notes export.
The change from the release markdown RN to the milestones issues data would also allow the user to create RN for pre-release versions, without to have create a (draft) release first.