Hi Christian,
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Saturday, May 25, 2019 1:42 AM, Christian Hergert <[email protected]> wrote: > The complicating factor is that we almost certainly want to run the > python script to extract symbols from the build container which may look > very different from the host, or Builder's mount namespace, and has all > of the application dependencies. > > Having a self-contained python script (that can do py2 and py3 if > possible) would allow us to copy it into the build environment and > execute there. The in-process plugin for Builder could consume that > and implement the appropriate indexer interface. > > Implementing the IdeCodeIndexer interface from Python isn't as friendly > as I'd like because doing async tasks in Python is rather cumbersome > and the API is designed for performance, not flexibility. But the NPM > plugin does implement it in Python and can serve as an example. I've implemented a small script available here: https://framagit.org/snippets/3594 It's compatible with both Python 2 and Python3 and it's using Python's ast module which should make it very robust in terms of how it finds Python classes and functions, but there is a caveat: it needs to be called using the same version of Python than the project it has to parse the code of. Please let me know if this kind of script would be enough. Cheers! -- Pierre _______________________________________________ builder-list mailing list [email protected] https://mail.gnome.org/mailman/listinfo/builder-list
