m.css icon indicating copy to clipboard operation
m.css copied to clipboard

Nanobind support in the python doc generator

Open mosra opened this issue 1 year ago • 0 comments

Just a rough initial sketch for #261. Quite some things can be reused from pybind11, especially the signature parsing. Other things such as detecting what's an enum or or what's a function have to be redone for nanobind.

Things to do:

  • [ ] Make the nanobind tests opt-in so we can still test pybind11 w/ older cmake
  • [ ] Nothing should rely on PYBIND11_COMPATIBILITY being enabled
  • [ ] Aim for as much test reuse with pybind11 as possible, if the output can be 1:1 it'd be great
    • [ ] Unnamed arguments seem to be named differently (arg vs arg0?), that may also affect static/class/method distinction
      • [ ] I think I had a stash fixing this for pybind in a better way? Adding real support for classmethods and such. Fix that first
  • [ ] Port all tests, not just a subset of one
  • [ ] Anything else to do for pybind first, and then just port to nanobind? Enum value docs etc.

Right now I don't think I can find time to finish this, wanted mainly to see how hard it would be -- it seems a manageable scope.

mosra avatar Dec 10 '24 12:12 mosra