def _generate_python_package_dependency_report()

in src/package_report.py [0:0]


def _generate_python_package_dependency_report(image_config, base_version_dir, target_version_dir):
    # Get a list of newly introduced marquee packages in changeset and their versions.
    _, new_packages = derive_changeset(target_version_dir, base_version_dir, image_config)

    results = dict()
    for package, version in new_packages.items():
        # Pull package metadata from conda-forge and dump into json file
        search_result = conda.cli.python_api.run_command("search", f"{package}=={version}", "--json")
        package_metadata = json.loads(search_result[0])[package][0]
        results[package] = {"version": package_metadata["version"], "depends": package_metadata["depends"]}

    print(
        create_markdown_table(
            ["Package", "Version in the Target Image", "Dependencies"],
            [
                {"pkg": k, "version": v["version"], "depends": v["depends"]}
                for k, v in islice(results.items(), None, 20)
            ],
        )
    )