Forks: https://github.com/orsinium/forks
Find project modules and data files (packages and package_data for setup.py).
install from PyPI:
python3 -m pip install --user dephell_discoverGet root, packages, package_data, package dir:
frompathlibimportPathfromdephell_discoverimportRootroot=Root(path=Path('../dephell'))
root.packages# [Package(path=Path('../dephell/dephell'), root=Path('../dephell')), ...]root.data# {Data(path=Path('../dephell/dephell/templates'), ext='.j2', package=Package(...)), ...}root.package_dir# {'': '.'}Package properties:
p=root.packages[-1]
p.path# Path('../dephell/dephell/commands')p.root# Path('../dephell')p.module# 'dephell.commands'str(p) # 'dephell.commands'list(p) # [Path('../dephell/dephell/commands/base.py'), ...]Data properties:
d=next(iter(root.data))
d.path# Path('../dephell/dephell/templates')d.ext# .j2d.package# Package(path=Path('../dephell/dephell'), root=...)d.module# 'dephell'# relative path from package root:d.relative# 'templates/*.j2'str(d) # 'templates/*.j2'list(d) # [Path('../dephell/dephell/templates/python.html.j2'), ...]Meta information:
root.metainfo.summary# 'Python project management.'root.metainfo.authors# ['Gram (@orsinium)']root.metainfo.license# 'MIT'root.metainfo.version# '0.7.0'