From a180a3bcd0736bbc3a48b6fb6c19e5b8cb921f20 Mon Sep 17 00:00:00 2001 From: jaimergp Date: Mon, 15 Jan 2024 11:13:35 +0100 Subject: [PATCH] fix authenticated downloads --- conda_libmamba_solver/solver.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/conda_libmamba_solver/solver.py b/conda_libmamba_solver/solver.py index a4ee3b44..5c121e16 100644 --- a/conda_libmamba_solver/solver.py +++ b/conda_libmamba_solver/solver.py @@ -891,12 +891,16 @@ def _package_record_from_json_payload( return PackageRecord(**json.loads(json_payload)) kwargs = json.loads(json_payload) + try: + channel_info = index.get_info(channel) + except KeyError: + channel_info = None + if channel_info and channel_info.full_url != channel_info.noauth_url: + kwargs["url"] = kwargs["url"].replace(channel_info.noauth_url, channel_info.full_url) if for_conda_build: # conda-build expects multichannel instances in the Dist->PackageRecord mapping # see https://github.com/conda/conda-libmamba-solver/issues/363 - try: - channel_info = index.get_info(channel) - except KeyError: + if channel_info is None: # this channel was never used to build the index, which # means we obtained an already installed PackageRecord # whose metadata contains a channel that doesn't exist