1 2import json 3import os 4from pathlib import Path 5import subprocess 6import sys 7import yaml 8 9dependencies_path = Path(sys.argv[1]) 10package_implications_json = sys.argv[2] 11out_path = Path(sys.argv[3]) 12 13package_implications = json.loads(package_implications_json) 14with open(dependencies_path) as f: 15 desired_packages = yaml.safe_load(f) or [] 16 17extra_package_names = [] 18for pkg in desired_packages: 19 if pkg["name"] in package_implications: 20 extra_package_names.extend(package_implications[pkg["name"]]) 21 22if len(extra_package_names) > 0: 23 with open(out_path, "w") as f: 24 f.write("\n".join(extra_package_names))