Carport
Dependency Graph from Python imports (CARPORT).
Installation
pip install carport
Usage
# WIP
from carport.core import ImportGraph
depg = ImportGraph(root = '..', project='carport')
# vars(depg)
ignore_nodes = ['io', 'IPython', 'pprint', 'subprocess']
dot = depg.to_dot(ignore_nodes=ignore_nodes)
dot
'digraph {\n"carport.vis";\n"carport.core";\npathlib;\nnetworkx;\nast;\ngraphviz;\nkroki;\n"carport.vis" -> "carport.core" [key=0];\npathlib -> "carport.core" [key=0];\nnetworkx -> "carport.core" [key=0];\nast -> "carport.core" [key=0];\ngraphviz -> "carport.vis" [key=0];\nkroki -> "carport.vis" [key=0];\n}\n'
dotg = depg.draw_dot(ignore_nodes=ignore_nodes)
dotg
d2 = depg.to_d2(ignore_nodes=ignore_nodes)
d2
'\n vars: { \n d2-config: { \n layout-engine: elk \n } \n }\n direction: right\n **.style.border-radius: 99\n *.style.font: mono\n \nsubprocess -> carport.vis\nIPython -> carport.vis\nast -> carport.core\npathlib -> carport.core\nnetworkx -> carport.core\nio -> carport.core\ngraphviz -> carport.vis\ncarport.vis -> carport.core\nkroki -> carport.vis\nio: null\nIPython: null\npprint: null\nsubprocess: null'
d2g = depg.draw_d2(ignore_nodes=ignore_nodes)
d2g
TODOs:
[] imports concerning __init__.py
[] py_d2 to d2 (like graphviz to graphviz)
Related
import-deps: Github
pydeps: Github
snakefood3: Github
kroki: online editor, python-interface
D2: doc, online editor, python-interface
Statistics
Copyright
Copyright © 2024 onward Felidz. All rights reserved, with certain parts of the project specifically licensed and subject to different terms and conditions, e.g., source code of the project under the Apache-2.0 license; you may not use this project except in compliance with the license.
Citation
BibTeX citation:
@misc{felidz2024,
author = {Felidz},
title = {Carport},
year = {2024},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/felidz/carport}}
}
Metadata
Release files for carport 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| carport-0.1.1.tar.gz | 11.7 kB | Without provenance | Details for carport-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| carport-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for carport-0.1.1-py3-none-any.whl |
Total release size: 22.7 kB
Release files / carport-0.1.1.tar.gz
| Download URL | carport-0.1.1.tar.gz |
|---|---|
| Size | 11.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
22569d5ba701e7b000686837fb8c11c066d30f8bae9d10fc1467c6143d3cc861
|
|
BLAKE2b-256 checksum How to use checksums |
62fef6cc404f997031e5e0c3688a4d8f02c19cc305663e490636114da330ced0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.5
|
Release files / carport-0.1.1-py3-none-any.whl
| Download URL | carport-0.1.1-py3-none-any.whl |
|---|---|
| Size | 11.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9ce4f4da7803c0ad5b0293d66b4a7f3cf5de58455794fcd75717509283f8703a
|
|
BLAKE2b-256 checksum How to use checksums |
cea9705ad7e4e4e0e9ff776cb88e2cb897e2a4165cc252c8aedb50731d0050b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.5
|
Security for carport 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.