mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 04:07:57 +00:00
a813d54965
* add a python script to show the dependencies * add the header line and modify the mod
35 lines
933 B
Python
Executable File
35 lines
933 B
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
# To run this script, you need to install the 'toml' python package and install the 'graphviz' package:
|
|
# pip install toml
|
|
# sudo apt-get install graphviz
|
|
# the first parameter is the runtime folder
|
|
# python ./scripts/runtime-dep.py ./substrate/runtime | dot -Tpng -o output.png
|
|
import sys
|
|
import os
|
|
import toml
|
|
|
|
if len(sys.argv) != 2:
|
|
print("needs the runtime folder.")
|
|
sys.exit(-1)
|
|
|
|
runtime_dir = sys.argv[1]
|
|
|
|
files = [os.path.join(runtime_dir, f, 'Cargo.toml') for f in os.listdir(runtime_dir) if os.path.isfile(os.path.join(runtime_dir, f, 'Cargo.toml')) and f != 'example']
|
|
|
|
print("digraph G {")
|
|
|
|
|
|
PREFIX = "substrate-runtime-"
|
|
|
|
for f in files:
|
|
manifest = toml.load(f)
|
|
|
|
package_name = manifest['package']['name']
|
|
deps = [d for d in manifest['dependencies'].keys() if d.startswith(PREFIX)]
|
|
|
|
for d in deps:
|
|
print(" \"{}\" -> \"{}\";".format(package_name, d))
|
|
|
|
print("}")
|