Kopf

Latest version: v1.37.4

Safety actively analyzes 714736 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 12 of 18

0.23.2

> _Originally released on 2019-11-21 12:53:24+00:00 ([link](https://github.com/zalando-incubator/kopf/releases/tag/0.23.2))._

Bugfixes:

* Fix an issue with crashing on startup due to 404 on peerings in the default auto-detection mode. 252

0.23.1

> _Originally released on 2019-11-20 18:06:35+00:00 ([link](https://github.com/zalando-incubator/kopf/releases/tag/0.23.1))._

Bugfixes:

* Hot-fix the cluster-scoped resource discovery in the namespaced operators. 250

0.23

> _Originally released on 2019-11-20 10:15:07+00:00 ([link](https://github.com/zalando-incubator/kopf/releases/tag/0.23))._

**TL;DR:** Massive refactoring, renames, code moves. Generally, should be backward-compatible.

RISKY CHANGES (can be BREAKING, should be not):

* Authentication and API talking are fully reworked: `pykube-ng` and `kubernetes` clients are now piggybacked by default to extract the endpoints and credentials, but are not used for the API communication. This can break API connectivity in some cases. 226 227
* In-memory structures were introduced to carry the technical information/objects/flags for individual resources. This can lead to **increased memory usage in huge clusters** with _thousands_ of monitored resources. 230
* `kopf.on.resume()` handlers were fixed, and now execute when previously they were not executed by mistake, but this could be taken as an expected behaviour. This can lead to massive **patches of all resumable objects on every operator startup** (if there are 2+ handlers), which can be a problem in huge clusters. 230 236
* Massive internal renames and code moves; not exposed publicly, unless hacks or monkey-patching were used. 209 210 211

New features:

* `kopf.on.startup()` handlers for operator initialisation. 225
* `kopf.on.cleanup()` handlers for operator shutdown. 225
* `kopf.on.login()` custom authentication handlers. 226
* `kopf.on.probe()` handlers for liveness metrics. 226
* Liveness probes with `kopf run --liveness`. 228
* `memo` kwargs to keep runtime-only operator-lifetime-limited arbitrary values. 234
* `retries=` limiter for handlers in addition to `timeout=`. 222
* `errors=TEMPORARY`, `errors=PERMANENT`, `errors=IGNORED` modes for handlers. 222
* Explicit owner is not needed in `kopf.adopt()` and hierarchy methods, current object is used by default. 203

Bugfixes:

* `kopf.on.resume()` handlers fixed:
* There can be more than one resuming handler. 230
* Are executed if they go after the on-create/on-update handlers. 230
* Are not repeated every few minutes for no reason, guaranteed to be called once. 229 230
* Can be retried in case of temporary or arbitrary errors. 230
* Can have sub-handlers. 230
* Are not invoked if the object is being deleted. 233
* Can be explicitly marked as deletion-safe, and hence be invoked on resuming during deletion. 233
* `spec`, `status`, `metadata` fields are not added to the `body` when originally absent. 198
* OS signal handlers are ignored on Windows (not supported by asyncio). 220

Internal changes:

* Fully type-annotated in the code (not in the tests). 195 196 197 200 201
* Fully asynchronous internally (asyncio/aiohttp); synchronous pykube-ng client is removed. 217 227
* Handler outcomes and persistent state management separated from each other. 221
* E2E tests are now isolated from each other, preventing false-positives. 205
* The latest k8s & minikube versions are used in e2e tests. 193
* No logging of empty meaningless diffs in on-resume and other handlers. 236
* No patching of the objects if there is no need to patch (and no logging). 236
* No purging of the handler progress if there is only one handler (and no logging). 236
* `cause.event` is renamed to `cause.reason` to avoid terminology conflicts. 201
* `kex` is added as an alias for `KopfExample` CRD for demos/docs. 235

0.23rc5

> _Originally released on 2019-11-20 01:11:43+00:00 ([link](https://github.com/zalando-incubator/kopf/releases/tag/0.23rc5))._

Bugfixes:

* Raw data for CA, client certificates and private keys are accepted. 244
* `Authorization: Bearer` is not injected by default, breaking username+password auth. 243

0.23rc4

> _Originally released on 2019-11-15 11:42:02+00:00 ([link](https://github.com/zalando-incubator/kopf/releases/tag/0.23rc4))._

Internal changes:

* Avoid logging of empty meaningless diffs in on-resume handlers. 236
* Avoid patching the objects if there is no need to patch (and skip logging). 236
* Avoid purging the handler progress if there is only one handler (and skip logging). 236
* Add `kex` as an alias for `KopfExample` CRD for demos/docs. 235

0.23rc3

> _Originally released on 2019-11-14 13:47:58+00:00 ([link](https://github.com/zalando-incubator/kopf/releases/tag/0.23rc3))._

New features:

* `memo` kwargs to keep the runtime-only operator-lifetime-limited arbitrary values. 234

Page 12 of 18

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.