What's Changed
* Move more configs to pyproject.toml by alexfikl in https://github.com/inducer/pyopencl/pull/770
* Add and fix some more ruff rules by alexfikl in https://github.com/inducer/pyopencl/pull/772
* Fix new C409 errors by alexfikl in https://github.com/inducer/pyopencl/pull/776
* Fix ruff issues in notebook by alexfikl in https://github.com/inducer/pyopencl/pull/778
* Ensure that the invoker name is an identifier by inducer in https://github.com/inducer/pyopencl/pull/779
* Add note about Kernel constructor for oddly-named kernels by inducer in https://github.com/inducer/pyopencl/pull/783
* choose_devices: don't short-circuit dev choice when answers available by matthiasdiener in https://github.com/inducer/pyopencl/pull/780
* Update compyte to drop ndarray code by inducer in https://github.com/inducer/pyopencl/pull/785
* Support Nanobind 2.2 by inducer in https://github.com/inducer/pyopencl/pull/791
* CMake updates by matthiasdiener in https://github.com/inducer/pyopencl/pull/793
* Context: remove deprecated cache_dir argument from docs by matthiasdiener in https://github.com/inducer/pyopencl/pull/795
**Full Changelog**: https://github.com/inducer/pyopencl/compare/v2024.2.7...v2024.3