nicholasjng / nanobind-bazel

Bazel defs and rules for building Python projects with nanobind extensions.
Apache License 2.0
6 stars 0 forks source link

Update nanobind to v2.0.0 #27

Closed nicholasjng closed 4 months ago

nicholasjng commented 4 months ago

Changes needed to make the upgrade work:

1) Bump robin-map to v1.3.0. This is due to the added API erase_fast(iterator pos) contributed to robin-map that is used in nanobind to avoid expensive lookups in hashmaps. 2) Bump nanobind to v2.0.0. I had to exclude the nb_combined.cpp file to fix a compilation error when building libnanobind.

Also includes some core dependency updates in fff5a8486806d5a829580014478f8b9c12cd607d.

Addresses #26.

Source thread for the robin-map change is in https://github.com/Tessil/robin-map/pull/76, backstory is contained in https://github.com/wjakob/nanobind/issues/507 and references therein.

nicholasjng commented 4 months ago

cc @hawkinsp.

nicholasjng commented 4 months ago

My plan is now to issue a new v2.0.0 tag to the BCR for nanobind-bazel mirroring nanobind@v2.

The new BCR release will also probably have to have its compatibility_level raised to 2 to prevent build failures.