Skip to content

Commit fd09bf0

Browse files
author
Ruinong Tian
committed
Swallow PackagesNotFoundError when generating size report
1 parent 3628594 commit fd09bf0

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

src/utils.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import os
33

44
import conda.cli.python_api
5+
from conda.exceptions import PackagesNotFoundError
56
from conda.env.specs import RequirementsSpec
67
from conda.models.match_spec import MatchSpec
78
from semver import Version
@@ -104,9 +105,12 @@ def pull_conda_package_metadata(image_config, image_artifact_dir):
104105
for package, match_spec_out in target_packages_match_spec_out.items():
105106
if str(match_spec_out).startswith("conda-forge"):
106107
# Pull package metadata from conda-forge and dump into json file
107-
search_result = conda.cli.python_api.run_command("search", str(match_spec_out), "--json")
108-
package_metadata = json.loads(search_result[0])[package][0]
109-
results[package] = {"version": package_metadata["version"], "size": package_metadata["size"]}
108+
try:
109+
search_result = conda.cli.python_api.run_command("search", str(match_spec_out), "--json")
110+
package_metadata = json.loads(search_result[0])[package][0]
111+
results[package] = {"version": package_metadata["version"], "size": package_metadata["size"]}
112+
except PackagesNotFoundError:
113+
print(f"Failed to pull package metadata for {package}, {match_spec_out} from conda-forge, ignore. Potentially this package is broken.")
110114
# Sort the pakcage sizes in decreasing order
111115
results = {k: v for k, v in sorted(results.items(), key=lambda item: item[1]["size"], reverse=True)}
112116

0 commit comments

Comments
 (0)