From ccf6754ee00ac40a7b95d8463ef9508112429a8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Santiago=20Due=C3=B1as?= Date: Fri, 25 Aug 2023 13:47:35 +0200 Subject: [PATCH] Release 0.6.0 --- NEWS | 74 +++++++++++++++++++++++++++++++++++++++ pyproject.toml | 2 +- release_tools/_version.py | 4 +-- releases/0.6.0.md | 73 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 150 insertions(+), 3 deletions(-) create mode 100644 releases/0.6.0.md diff --git a/NEWS b/NEWS index 78f9864..23b5f15 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,79 @@ # Releases +## Release Tools 0.6.0 - (2023-08-25) + +**New features:** + + * Notes command supports multiple authors in changelog entries (#49)\ + The notes command supports exporting of multiple authors from the + changelog entries. You can add more than one author to the changelog + entry by defining them as ``` author: - John Smith + - John Doe ``` + * Option `--bump-version` to increase version manually\ + Include `--bump-version=[MAJOR, MINOR, PATCH]` argument to `sermverup` + command to increase the version number regardless the release notes + changes. + * Generate release notes for pre-releases\ + The flag `--pre-release`, on the command `notes`, generates the notes + of a release candidate. Release notes include the changes in between + releases - regular and candidate releases - while the release + candidate notes only include the latest changes since the previous + release. + * Option to not cleanup on publishing\ + Running `publish` with `--no-cleanup' option doesn't remove any + changelog entry from the repository. + * Option for release candidates versions\ + Include a new argument to `semverup` to create pre-releases versions. + If the option `--pre-release` is included and the current version is + not a release candidate, it will create a new pre-release version + based on files or `--bump-version` argument. If the current version is + a release candidate, it will increase its pre-release part. For + example, in a repository with a bugfix changelog entry: - `0.2.0` + + `semverup --pre-release` = `0.2.1-rc.1` - `0.2.1-rc.1` + `semverup + --pre-release` = `0.2.1-rc.2` When the version is a pre-release, and + `--pre-release` is not specified, it will remove the pre-release part + and generate the final version. In a repository with changelog + entries: - `0.2.2-rc.1` + `semverup` = `0.2.2` + +**Bug fixes:** + + * Changelog valid filenames\ + Creating filename from the title could create invalid paths. This + commits change the way the filename is created from the title + removing many of the special chars. + * Error removing changelog entries\ + Changelog entries that are processed while doing a release that is not + a release candidate were raising a Git error. + * Ignore unreleased directory when publishing\ + Publish command continues the execution if the directory + `releases/unreleased` doesn't exist. + * Option to include branch in `publish` command\ + Include the `--remote-branch ` option in `publish` to push to + a specific remote branch. By default it is `master`. + * Invalid release candidate version number when adding new changes\ + `semverup` was not increasing the correct version number when the old + version was a release candidate and a new changelog was included. + Before it increased `0.0.5-rc.1` to `0.0.5-rc.2` when a minor + changelog entry was added while it should be `0.1.0-rc.1`. + +**Breaking changes:** + + * New categories definition (#55)\ + Previously, only the `fixed` notes incremented the `patch` version, + and the other changes incremented MINOR. We updated this behavior. + From now on, `changed` and `removed` entries increment major version. + `added`, `deprecated`, `security`, `performance` and `other` increment + the minor version. `Fixed` and `dependency` increment the patch + version. If the version is 0.x.x new entries will upgrade minor + version at most. + +**Dependencies updateds:** + + * Update PyYAML version and drop Python 3.7\ + PyYAML dependency updated to support Python 3.10 and drop Python 3.7 + support + + ## Release Tools 0.6.0-rc.2 - (2023-08-25) **New features:** diff --git a/pyproject.toml b/pyproject.toml index 3d1f484..f8afa5b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "release-tools" -version = "0.6.0-rc.2" +version = "0.6.0" description = "Set of tools to generate Python releases." authors = [ "Santiago DueƱas " diff --git a/release_tools/_version.py b/release_tools/_version.py index b728443..c1cd571 100644 --- a/release_tools/_version.py +++ b/release_tools/_version.py @@ -1,2 +1,2 @@ -# File auto-generated by semverup on 2023-08-25 11:25:26.179801 -__version__ = "0.6.0-rc.2" +# File auto-generated by semverup on 2023-08-25 11:45:06.072018 +__version__ = "0.6.0" diff --git a/releases/0.6.0.md b/releases/0.6.0.md new file mode 100644 index 0000000..453e25e --- /dev/null +++ b/releases/0.6.0.md @@ -0,0 +1,73 @@ +## Release Tools 0.6.0 - (2023-08-25) + +**New features:** + + * Notes command supports multiple authors in changelog entries (#49)\ + The notes command supports exporting of multiple authors from the + changelog entries. You can add more than one author to the changelog + entry by defining them as ``` author: - John Smith + - John Doe ``` + * Option `--bump-version` to increase version manually\ + Include `--bump-version=[MAJOR, MINOR, PATCH]` argument to `sermverup` + command to increase the version number regardless the release notes + changes. + * Generate release notes for pre-releases\ + The flag `--pre-release`, on the command `notes`, generates the notes + of a release candidate. Release notes include the changes in between + releases - regular and candidate releases - while the release + candidate notes only include the latest changes since the previous + release. + * Option to not cleanup on publishing\ + Running `publish` with `--no-cleanup' option doesn't remove any + changelog entry from the repository. + * Option for release candidates versions\ + Include a new argument to `semverup` to create pre-releases versions. + If the option `--pre-release` is included and the current version is + not a release candidate, it will create a new pre-release version + based on files or `--bump-version` argument. If the current version is + a release candidate, it will increase its pre-release part. For + example, in a repository with a bugfix changelog entry: - `0.2.0` + + `semverup --pre-release` = `0.2.1-rc.1` - `0.2.1-rc.1` + `semverup + --pre-release` = `0.2.1-rc.2` When the version is a pre-release, and + `--pre-release` is not specified, it will remove the pre-release part + and generate the final version. In a repository with changelog + entries: - `0.2.2-rc.1` + `semverup` = `0.2.2` + +**Bug fixes:** + + * Changelog valid filenames\ + Creating filename from the title could create invalid paths. This + commits change the way the filename is created from the title + removing many of the special chars. + * Error removing changelog entries\ + Changelog entries that are processed while doing a release that is not + a release candidate were raising a Git error. + * Ignore unreleased directory when publishing\ + Publish command continues the execution if the directory + `releases/unreleased` doesn't exist. + * Option to include branch in `publish` command\ + Include the `--remote-branch ` option in `publish` to push to + a specific remote branch. By default it is `master`. + * Invalid release candidate version number when adding new changes\ + `semverup` was not increasing the correct version number when the old + version was a release candidate and a new changelog was included. + Before it increased `0.0.5-rc.1` to `0.0.5-rc.2` when a minor + changelog entry was added while it should be `0.1.0-rc.1`. + +**Breaking changes:** + + * New categories definition (#55)\ + Previously, only the `fixed` notes incremented the `patch` version, + and the other changes incremented MINOR. We updated this behavior. + From now on, `changed` and `removed` entries increment major version. + `added`, `deprecated`, `security`, `performance` and `other` increment + the minor version. `Fixed` and `dependency` increment the patch + version. If the version is 0.x.x new entries will upgrade minor + version at most. + +**Dependencies updateds:** + + * Update PyYAML version and drop Python 3.7\ + PyYAML dependency updated to support Python 3.10 and drop Python 3.7 + support +