github project-akri/akri v0.14.0

3 hours ago

v0.14.0

Announcing Akri v0.14.0!

Akri v0.14.0 is the first release since v0.13.8. It is a large modernization release: the Kubernetes and Rust stacks are brought current (kube-rs 1.0, tonic 0.13, Rust 1.88), the supported Kubernetes baseline moves to ≥ 1.33, several RUSTSEC advisories are cleared, and the sample brokers/apps have moved to the project-akri/examples repository.

To find out more about Akri, check out our documentation and start
contributing today!

New Features

The v0.14.0 release contains the following changes:

Features

  • feat: Toleration support for agent, controller, and webhook (#742)
  • feat: Device-plugin ENV variables (#788)
  • feat: Accept YAML udev discoveryDetails in the validating webhook (#802)
  • feat: Device mount-permission check in the webhook (#753)
  • feat: Configurable device mount permissions in the udev handler (#737)
  • feat: Improved device-plugin registration error messages (#754)

Dependencies & toolchain

  • kube-rs 0.91 → 1.0 (#815, #777); tonic 0.10 → 0.13 (#823); prost 0.12 → 0.13; hyper 0.14 → 1.0; rustls 0.21 → 0.23
  • prometheus 0.13.4 → 0.14.0 (#822); removed async-std (#824) and humantime (#756)
  • Rust toolchain 1.82 → 1.88 (#763, #777)
  • Bumped hyper-http-proxy → 1.2.0 to drop the unmaintained rustls-pemfile (#840)
  • Refreshed the pinned h2 patch, now pinned by commit (#827)

Security

  • Cleared RUSTSEC-2024-0437 (#822), RUSTSEC-2026-0098 / -0099 / -0104 (#823), RUSTSEC-2025-0052 (#824), and RUSTSEC-2025-0134 (#840)

Bug fixes

  • fix: correct the kube::runtime import path (#782)
  • fix: use the right platform in the container build (#781)

Platform & CRDs

  • CI matrix advanced to Kubernetes 1.33 / 1.34 / 1.36 (#817, #716)
  • CRDs now appear in kubectl get all (#800, #816)
  • ArgoCD-safe CRD sync: strip null values (#766), preserve name / namespace (#761)

Helm / packaging

  • Fix brokerJob image.tag typo (#769), webhook nodeSelector indentation (#749), and imagePullPolicy for broker pods (#752)

Repository & CI

  • Sample brokers/apps moved to project-akri/examples (#790, #832, #792)
  • update-versions no longer overwrites a PR's version.sh (#819); versioning / check-script hardening (#784)
  • GitHub Actions in CI bumped to latest (#751)
  • Maintainer updates (#774, #729, #741, #759); CoC contact (#789)
  • Docs: developer guide (#833), refreshed badges/supported versions/handler list (#825),
    community-call time (#828), adopters list (#798, #820), repo-wide typo fixes (#773)

View the full change log.

Breaking Changes

  • Kubernetes baseline raised from ≥ 1.16 to ≥ 1.33 (k8s-openapi pinned to v1_33); validated on 1.33 / 1.34 / 1.36.
  • Embedder / API surface updated: kube-rs 1.0, tonic 0.13, prost 0.13, hyper 1.0, rustls 0.23 — projects embedding Akri crates must update accordingly.
  • MSRV raised to Rust 1.88.
  • Sample brokers/apps moved to project-akri/examples: pinned ghcr.io/project-akri/akri/<sample>:latest-dev image references no longer resolve — switch to the examples-repo images/paths.

Known Issues

  • RUSTSEC-2024-0421 (idna) and RUSTSEC-2024-0388 (derivative) remain — both are pulled solely via the frozen opcua 0.12 crate. Deferred to a later release and tracked in #841 (opcuaasync-opcua migration).
  • RUSTSEC-2026-0258 (h2 unbounded empty DATA frames) is present via the pinned h2 patch fork; awaiting an upstream fix.

Validated With

Distribution Version
Kubernetes 1.36.1
Kubernetes 1.34.8
Kubernetes 1.33.12
K3s v1.36.1+k3s1
K3s v1.34.8+k3s1
K3s v1.33.12+k3s1
MicroK8s 1.36/stable
MicroK8s 1.34/stable
MicroK8s 1.33/stable

What's next?

Check out our roadmap to see the features we are looking forward to!

Thanks 👏

Thank you everyone in the community who helped Akri get to this release! Your interest and contributions help Akri
prosper.

⭐ Contributors to v0.14.0 ⭐

Don't miss a new akri release

NewReleases is sending notifications on new releases.