Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Py doxygen #539

Draft
wants to merge 10 commits into
base: master
Choose a base branch
from
Draft

Py doxygen #539

wants to merge 10 commits into from

Conversation

Robadob
Copy link
Member

@Robadob Robadob commented May 21, 2021

Experimental work trying to make python API docs build without needing to compile the lib.

Cautiously appears to be working. But will obviously need further testing and cleanup.

Furthermore, when pyflamegpu is split into modules, this will need reworking.

Haven't actually tested this.
…t to compile the SWIG outputs.

Therefore I implmented this which uses a custom command.

I cautiously think it works, although will require some refactoring and refinement.
@Robadob
Copy link
Member Author

Robadob commented May 21, 2021

Appears somehow I've broken regular pyflamegpu target, so will need to investigate that too.

@Robadob
Copy link
Member Author

Robadob commented May 21, 2021

It is working, it just outputs to the same docs directory as regular docs.

@Robadob
Copy link
Member Author

Robadob commented May 24, 2021

Ok, from checking this.

Failing to provide the -doxygen to swig, stops all doc comments being transferred to python in any form (had assumed lack of translation would simply mean comments were copied verbatim).

Earlier reading of SWIG docs had suggested that %feature("doxygen:notranslate") would copy the doxygen, without translating it to pydocs format. But on testing this, it was breaking compilation of the swig code.

So this kind of works, however there are obvious issues where swig is changing the args.

I'm also thinking CI will now die trying to build pyflamegpu, as when I previously had this line in flamegpu.i, it wasn't happy building the cxx.
@Robadob
Copy link
Member Author

Robadob commented May 24, 2021

Issue with the SWIG docs, is that many functions have their args switched to * args, which appears to by Python variadic args format.

Example here:
image
image

Similar example of it not being a problem here:

image

Assumption is that it's related to overloading.

@Robadob
Copy link
Member Author

Robadob commented May 26, 2021

James Knight, UK RSE slack, re:swig docu for overloaded fns

@ptheywood ptheywood mentioned this pull request Aug 6, 2021
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant