Releases: crossplane-contrib/function-pythonic
v0.6.0
What's Changed
Added support for Crossplane v2.2 Capabilities and Required Schemas.
Python packages and modules can be provisioned using ConfigMaps, Secrets, EnvironmentConfigs, or Compositions.
- Implement python packages from EnvironmentConfigs and from Compositions by @iciclespider in #50
- fix(render): Avoid shadowing module 'composite' by @bror-lauritz-sk in #48
Dependency Updates
New Contributors
- @bror-lauritz-sk made their first contribution in #48
Full Changelog: v0.5.0...v0.6.0
v0.5.0
BREAKING CHANGE
Prior versions of function-pythonic included the "Single Use" CompositeResourceDefinition and Composition in it's Crossplane function package, which the formal specification of function packages does not allow.. Crossplane v2.2.0 implemented checks that flag such function packages as invalid. These have been removed from the function-pythonic package.
function-pythonic Single Use Composites have been replaced with Inlined Composites as documented in the README. This provides more flexibility, but does require provisioning your own CompositeResourceDefinition and Composition.
What's Changed
- Remove single use XRD and Composition by @iciclespider in #45
Dependency Updates
- chore(deps): update github artifact actions (major) by @renovate[bot] in #39
- chore(deps): update docker/login-action action to v4 by @renovate[bot] in #40
- chore(deps): update docker/setup-qemu-action action to v4 by @renovate[bot] in #41
- chore(deps): update docker/setup-buildx-action action to v4 by @renovate[bot] in #42
- chore(deps): update docker/build-push-action action to v7 by @renovate[bot] in #44
Full Changelog: v0.4.2...v0.5.0
v0.4.2
What's Changed
Refactored function-pythonic render to allow rendering to be called by other python modules, such as unit tests. Using the refactor, implemented the running of all Compositions under the examples directory during this project's pytests.
- Refactor
function-pythonic renderto enable unit tests @iciclespider in #38
Full Changelog: v0.4.1...v0.4.2
v0.4.1
What's Changed
Fix minor issues found in v0.4.0 release by @iciclespider in #37
- Suppress noisy libraries logging, these can be overridden using --logger-level
- Fix render command's handling of requested resources specifying label matches
- Fix RepeatedMessage's handling of append
- Various bugs found by Codex
Dependency Updates
fix(deps): update dependency kopf to v1.43.0 by @renovate[bot] in #36
Full Changelog: v0.4.0...v0.4.1
v0.4.0
BREAKING CHANGE
The default value of the unknownsFatal flag was changed from True to now be False. This aligns better with the equivalent functionality of function-patch-and-transform.
What's Changed
The function-pythonic render command can now retrieve resources to render from a running Kubernetes cluster using the --kube-context command line option. This enables local interactive debugging and testing of function-pythonic Compositions against an active Kubernetes cluster.
Added sophisticated support for coding explicit composed resource dependencies. The composed resource's ready field is used to track when the dependency is available.
- Explicit dependency handling and integrate render command with an active cluster by @iciclespider in #34
Other updates:
- Allow resource creation to support specifying the kind in either the first or second argument, and the apiVersion in the other.
- Change default unknownsFatal to False.
- Add —logger-level command line option to enable configuring logging output.
- Rework Resource.ready to enable explicit dependency handling.
- Rework auto ready implementation to support explicit dependency handling.
- Implemented Resource.addDependency to enable explicit dependencies.
- Support XR connection running in Crossplane V2 using LegacyCluster compositions.
- Rework function level logging.
- Fix issues with using “append” in protobuf handling.
Dependency Updates
- chore(deps): update dependency kopf to v1.41.0 by @renovate[bot] in #23
- chore(deps): update dependency kopf to v1.41.1 by @renovate[bot] in #24
- chore(deps): update dependency kopf to v1.42.0 by @renovate[bot] in #25
- chore(deps): update dependency kopf to v1.42.1 by @renovate[bot] in #26
- chore(deps): update dependency pip to v26 by @renovate[bot] in #27
- chore(deps): update dependency kopf to v1.42.4 by @renovate[bot] in #28
- chore(deps): update dependency crossplane-function-sdk-python to v0.11.0 by @renovate[bot] in #31
- chore(deps): update dependency pip to v26.0.1 by @renovate[bot] in #30
- chore(deps): update dependency kopf to v1.42.5 by @renovate[bot] in #32
- chore(deps): update dependency kr8s to v0.20.15 by @renovate[bot] in #35
Full Changelog: v0.3.1...v0.4.0
v0.3.1
What has Changed
- Fix --pip-install command line option by @iciclespider in #21
Dependency Updates
Full Changelog: v0.3.0...v0.3.1
v0.3.0
BREAKING CHANGE
When running in Crossplane V1, the --crossplane-v1 command line option should be used as documented here: Crossplane V1
When running in Crossplane V2, generated Usages are now using the protection.crossplane.io/v1beta1 apiVersion, rather than the deprecated apiextensions.crossplane.io/v1beta1 apiVersion.
What's Changed
- Rework Crossplane v2 handling by @iciclespider in #17
- Support for automatically creating XR connection secrets in Crossplane V2
- Refactored the generation of Usages to be Crossplane V2 aware
- Added health checks on standard Kubernetes resources in auto ready handling
- Added --crossplane-v1 command line option
Dependency Updates
Full Changelog: v0.2.1...v0.3.0
v0.2.1
New Features
Added support for Composite and composed resource connection information when running function-pythonic render ....
What's Changed
- Implement support for connection information during function-pythonic render by @iciclespider in #15
Full Changelog: v0.2.0...v0.2.1
v0.2.0
BREAKING CHANGE
function-pythonic when invoked now requires an initial command line argument specifying the command to run. So instead of running the following to run the Crossplane GRPC server
$ function-pythonic --insecure --debugOne must now run:
$ function-pythonic grpc --insecure --debugNew Features
function-pythonic now includes a pure python implementation of the crossplane render ...
command, which can be used to render Compositions that only use function-pythonic. This
makes it very easy to test and debug using your IDE of choice. It is also blindingly
fast compared to crossplane render. See Quick Start Development
What's Changed
- pkg: switch Function package APIs from v1beta1 to v1 by @haarchri in #12
- Implement "function-pythonic render ..." by @iciclespider in #14
Dependency Updates
- chore(deps): update github artifact actions (major) by @renovate[bot] in #11
- chore(deps): update dependency kopf to v1.39.1 by @renovate[bot] in #13
New Contributors
- @haarchri made their first contribution in #12
- @iciclespider made their first contribution in #14
Full Changelog: v0.1.5...v0.2.0
v0.1.5
What's Changed
- Hosted and released at https://github.com/crossplane-contrib/function-pythonic
- Container image runs using Python version 3.14
self.conditionsandresource.conditionsare now iterate'able- Ensure all parent packages are reloaded after ConfigMap based updates
Dependency Updates
- chore(deps): update dependency pyyaml to v6.0.3 by @renovate[bot] in #1
- chore(deps): update dependency pip to v25.3 by @renovate[bot] in #2
- chore(deps): update python docker tag to v3.14 by @renovate[bot] in #4
- chore(deps): update actions/checkout action to v5 by @renovate[bot] in #5
- chore(deps): update actions/setup-python action to v6 by @renovate[bot] in #6
- chore(deps): update github artifact actions (major) by @renovate[bot] in #7
- chore(deps): update actions/checkout action to v6 by @renovate[bot] in #8
Full Changelog: v0.1.4...v0.1.5