This is a followup of #2630 to fully port the `scripts/create_py_tags.py` script for generating tags for the Python standard library to Python 3.
While continuing on @claudep's work, I noticed plain porting is harder than to more or less rewrite the script. Now the script works by fully importing the modules, if possible, to use Python's `inspect.Signature` API to extract symbols. If this is not possible, the existing regular expression based parser is used as fallback.
Deprecated modules are ignored completely as well as a couple of special modules like the included Idle IDE and executable modules in general.
I'm using the resulting tags file since a few weeks and it feels fine, much better than before especially because of the better extracted argument lists of functions and methods. You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/3039
-- Commit Summary --
* Refs #2615 - Convert create_py_tags.py to Python 3 * Rewrite Python standard library tags creation script for Python 3
-- File Changes --
M data/tags/std.py.tags (27660) M scripts/create_py_tags.py (486)
-- Patch Links --
https://github.com/geany/geany/pull/3039.patch https://github.com/geany/geany/pull/3039.diff