What’s new in Pigweed# Index April 2026 Async and concurrency Void future support in pw::async2::Select Bluetooth Dynamic credit sharing mode in pw_bluetooth_proxy Build systems New Python API for Bazel introspection and queries C++ data structures and utilities pw_function config override header Non-owning callbacks via pw::FunctionRef Dynamic containers reset support std::variant support in pw::Hash New pw_numeric arithmetic and rounding utilities Developer tools pw_ide Bazel code intelligence and VS Code UI overhaul pw_presubmit v2 Embedded memory regions support in pw_snapshot diagnostics HALs pw_i2c mcuxpresso hardware timeouts support for deadlines Kernel Userspace process control Shareable .text sections Userspace time support Out-of-band channel signaling System generation RPC pw_transfer server-side lifecycle callbacks Third-party hardware and software pw_allocator support for Zephyr Timing and clocks pw_clock_tree improvements March 2026 Async and concurrency Handle futures of varying types with BoxedFuture Simplified polling with PW_AWAIT Coroutine and task rework Bluetooth Allocator support for buffers and packets in pw_bluetooth_sapphire C++ data structures and utilities Dynamically allocated maps with pw::DynamicMap New FIFO queue with performant push and pop operations Developer tools Improved pw_ide reliability Kernel Async IPC Process termination and ownership Reduce footprint of kernel-only applications RPC Support multiple clients on a transfer thread in pw_transfer Toolchains and compilers Access toolchain tools through Bazelisk