Releases: projectsyn/commodore
v1.3.1
Summary
We're pleased to announce the release of Commodore v1.3.1. This is a pure bugfix release which addresses a bug which only manifests when compiling a cluster for the first time when the cluster catalog repository is completely empty.
Changes
1 changes since v1.3.0
🐛 Fixes
- Fix bug in catalog update logic for initial compilation of a cluster (#531)
v1.3.0
Summary
We're pleased to announce Commodore v1.3.0. Apart from a number of dependency updates, this release fixes the .gitignore file in the component template and improves the README.md in the component template to contain a link to the rendered component documentation on the Commodore Components Hub.
Changes
10 changes since v1.2.0
🚀 Features
- Add link to rendered documentation in component template README (#529)
🐛 Fixes
- Fix component template
.gitignoreentries (#528)
🔗 Dependency Updates
- Update dependency pylint to v2.14.1 (#521)
- Update dependency docker.io/python to v3.10.5 (#524)
- Update dependency pyxdg to v0.28 (#522)
- Update dependency docker.io/alpine to v3.16 (#513)
- Update dependency responses to v0.21.0 (#519)
- Lock file maintenance (#523)
- Restrict cookiecutter version to <2 (#525)
- Update actions/setup-python action to v4 (#527)
v1.2.0
Summary
We're pleased to announce Commodore v1.2.0. This release brings additional features for working with configuration packages. Commodore v1.2.0 introduces new commands package new and package compile which can be used to bootstrap new config packages and compile config packages standalone respectively.
Please note that -- in contrast to command component new -- the command package new fetches the package template from an external Git repository and uses Cruft to render the Cookiecutter template which allows users to update their packages to the latest template version.
We're currently planning to provide more seamless Cruft update support in a future Commodore release.
Changes
11 changes since v1.1.1
🚀 Features
- Add command
commodore package compile(#505) - Add flags
--localand--no-fetch-dependenciesforpackage compile(#506) - Add command
package new(#509) - Add support for adding additional test cases in new config packages (#510)
🛠️ Minor Changes
- Remove redundant parameter
fetch_dependenciesofkapitan_compile(#508) - Change
package compileto always use a temporary directory (#514)
🔗 Dependency Updates
v1.1.1
Summary
This release fixes unexpected errors about illegal component library names when compiling a component (or cluster) while there's temporary hidden files present in the component's library directory (e.g. a Vim swap file).
Additionally, the release adds support for printing help text of Commodore commands with -h.
Changes
3 changes since v1.1.0
🚀 Features
- Configure CLI to also accept
-hto print help text (#503)
🐛 Fixes
- Skip hidden files when enumerating component library files (#502)
🔗 Dependency Updates
- Lock file maintenance (#501)
v1.1.0
Summary
This release introduces support for configuration packages (cf. https://syn.tools/syn/SDDs/0028-reusable-config-packages.html) in commodore catalog compile.
Changes
3 changes since v1.0.2
🚀 Features
- Add support for configuration packages in
commodore catalog compile(#497)
🛠️ Minor Changes
- Refactor
commodore.dependency_mgmtinto a package (#498)
🔗 Dependency Updates
- Lock file maintenance (#496)
v1.0.2
v1.0.1
Summary
This release ensures that the Commodore OIDC login support also works when running Commodore in Docker.
Changes
5 changes since v1.0.0
🐛 Fixes
- Fix Commodore OIDC login when running in Docker (#493)
🔗 Dependency Updates
v1.0.0
Summary
We're pleased to announce Commodore v1.0.0 after 1463 commits across 326 merged PRs and 40 v0.x releases. It took us a bit less than two and a half years (907 days since the initial commit in the repo) to get to v1.0.0. Over this time, we've gotten code contributions from 17 different authors. At this point, we'd like to thank everyone who's contributed code or ideas to Commodore.
For those curious, Commodore started out as a single file Python script with 82 lines of code (8ada1d7). Over time, the code base has grown to 3480 lines of Python code and 5243 lines of tests for Commodore v1.0.0. We're happy to note that Commodore's test coverage is approximately 93%.
The bulk of the release consists of removing features which were deprecated in various v0.x releases.
Please note that Commodore v1.0.0 drops support for Python 3.7. We encourage users to upgrade to Python 3.8, 3.9 or 3.10. If that's not possible for you, please use the pre-built Docker image.
Changes
31 changes since v0.17.1
🚀 Features
- Add linter for deprecated inventory parameters (#463)
- Add command
commodore fetch-tokento print API token to stdout (#475) - Raise error when compiling a cluster which uses removed reclass variables (#482)
- Raise error when compiling a component which uses removed reclass variables (#483)
🛠️ Minor Changes
- Refactor
component_compile()(#448) - Refactor
_discover_components()to reduce complexity (#449) - Refactor
_push_catalog()to return early in local mode (#450) - Add test for
update_catalog()(#452) - Modularize inventory linting infrastructure (#461)
- Add more tests for builtin postprocessing filters (#466)
- Add more tests for the Jsonnet postprocessing filter runner (#467)
- Add integration test for
catalog compile --local(#472) - Add tests for CLI functions (#477)
- Add tests for
catalog.catalog_list(#481) - Convert type annotations for standard collections to PEP-585 (#484)
🔎 Breaking Changes
- Remove support for external postprocessing filter definitions (#453)
- Remove deprecated parameter
component_versions(#454) - Remove deprecated inventory parameters (#460)
- Remove support for component specifications without an explicit version (#462)
- Remove support for multi-instance advertisement in top-level parameter
multi_instance(#464) - Raise error for component library name with invalid prefix (#469)
- Remove Python 3.7 support (#476)
🐛 Fixes
- Correctly remove dangling link destinations in
relsymlink()(#456) - Fix potential KeyError in
tokencache.get()(#458) - Fix edge cases in
_is_semantic_diff_kapitan_029_030()(#451) - Fix
KeyErrorin error message for invalid postprocessing filters (#465)
📄 Documentation
- Update README (#485)
🔗 Dependency Updates
v0.17.1
v0.17.1-rc0
0 changes since v0.17.0