Releases: frequenz-floss/frequenz-repo-config-python
v0.4.0
Frequenz Repository Configuration Release Notes
Summary
This release only ships fixes and improvements for Cookiecutter templates, it is recommended for existing projects to regenerate the templates.
Upgrading
Cookiecutter templates
- You might want to remove the
_output_dir
from the
.cookiecutter-replay.json
file, if there is one in your project. - You will need to manually add
local_extensions.as_identifier
to the_extensions
key in the.cookiecutter-replay.json
file before running the replay.
New Features
Cookiecutter templates
-
Add linting to the CI with
protolint
for API projects. -
Capitalize project name in title and expand shortened words.
-
Add templates variables reference documentation in the genrated docs and when running Cookiecutter.
-
Do some basic templates variables validation.
-
labeler
workflow configuration- Label
docs/*.py
as tooling. - Add example on how to exclude files.
- Label
-
pyproject.toml
- Bump SDK version to v0.22.0.
- Disable
pylint
'sunsubscriptable-object
check. - Add a few more default keywords.
- Run
isort
inbenchmarks/
too
-
mkdocs
- Add more cross-reference inventories:
typing-extensions
,frequenz-sdk
,frequenz-channels
,grpc
. - Add some extra markdown plugins: code annotations, copy button and line numbers, keys representation.
- Be strict when building the docs (any warning will make the generation fail).
- Add more cross-reference inventories:
Bug Fixes
Cookiecutter templates
-
Fix hardcoded MIT license headers. Now the user selected license is used instead.
-
Properly handle project names with
-
and_
in them. -
pyproject.toml
- Add missing
repo-config
todev-mkdocs
dependencies. - Fix wrong optional dependency name for
dev
dependencies.
- Add missing
What's Changed
- Update templates to v0.3.0 by @llucax in #73
- Fix replay file processing by @llucax in #74
- Fix a few minor bugs by @llucax in #75
- Improve cookiecutter mkdocs configuration by @llucax in #77
- Minor fixes and improvements by @llucax in #81
- Add linting to the CI with
protolint
for API projects by @llucax in #84 - cookiecutter: Update SDK dependency to v0.22.0 by @llucax in #88
- Capitalize project name in title by @llucax in #89
- Add example on how to exclude files in the labeler workflow by @llucax in #92
- Add a few more default keywords by @llucax in #90
- Fix license headers by @llucax in #91
- Add template variables docs and warning about cookiecutter command by @llucax in #94
- Add golden tests for generated files by @llucax in #87
- Validate template variables and improve defaults by @llucax in #95
- Prepare v0.4.0 release by @llucax in #96
Full Changelog: v0.3.0...v0.4.0
v0.3.0
Frequenz Repository Configuration Release Notes
Summary
This release is a major step and adds many features and breaking changes.
Upgrading
Since this project is still in heavy development, the easiest way to upgrade is
to regenerate the templates. Please follow the instructions in the new
documentation website about updating
projects.
New Features
This is just a quick (non-comprehensive) summary of the new features:
-
Add
--diff
as a default argument forisort
-
Improve
README
-
Don't import modules into packages
-
Support migrating and updating existing projects with Cookiecutter
-
Cookiecutter template
- Add
dependabot
configuration - Add issue templates, keyword labeler, and PR labeler
- Add
CODEOWNERS
file - Add
direnv
-related files to.gitignore
- Add GitHub CI workflow to
cookiecutter
- Add
CONTRIBUTING
guide tocookiecutter
- Add
RELEASE_NOTES
tocookiecutter
- Add support to generate documentation using
mkdocs
- Add
-
Apply all the Cookiecutter template improvements to this project
Bug Fixes
This is just a quick (non-comprehensive) summary of bug fixes:
- Fix some comments about creating labels
- Fix tests
What's Changed
- Add dependabot config to the cookiecutter template by @leandro-lucarella-frequenz in #44
- Add issue templates, keyword labeler and PR labeler to cookiecutter by @llucax in #51
- Add CODEOWNERS file in cookiecutter by @llucax in #49
- Fix python3.11 in printed nox example by @cwasicki in #45
- Add files related to direnv to gitignore by @cwasicki in #47
- Fix some comments about creating labels by @llucax in #53
- Add
--diff
as a default argument forisort
by @shsms in #55 - Fix escaping issues in workflows templates by @llucax in #60
- Add GitHub CI workflow by @llucax in #57
- Add CONTRIBUTING guide by @llucax in #61
- Fix and speed up the CI workflow by @llucax in #63
- Add RELEASE_NOTES to cookiecutter by @llucax in #65
- Add support to generate documentation using
mkdocs
by @llucax in #64 - Copy follow-up instructions to README by @cwasicki in #67
- Don't import modules into packages and fix tests by @llucax in #68
- Support migrating and updating existing projects by @llucax in #69
- Generate extra configuration files using the cookiecutter template by @llucax in #66
- Fix issues in CI and updating projects by @llucax in #70
- Fix and improve documentation and generation by @llucax in #72
New Contributors
- @llucax made their first contribution in #51
- @cwasicki made their first contribution in #45
- @shsms made their first contribution in #55
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
- Small fixes and improvements by @leandro-lucarella-frequenz in #35
- Add repository generation via
cookiecutter
by @leandro-lucarella-frequenz in #39 - Add support for
frequenz-api-common
by @leandro-lucarella-frequenz in #42
Full Changelog: v0.1.0...v0.2.0
v0.1.0
Initial release with minimal functionality.
What's Changed
- Add a setuptools support for building proto files by @leandro-lucarella-frequenz in #1
- Miscelaneous improvements by @leandro-lucarella-frequenz in #16
- Improve and fix support for compiling protobuf files by @leandro-lucarella-frequenz in #19
New Contributors
- @leandro-lucarella-frequenz made their first contribution in #1
Full Changelog: https://github.com/frequenz-floss/frequenz-repo-config-python/commits/v0.1.0