mamba-org / mamba

The Fast Cross-Platform Package Manager
https://mamba.readthedocs.io
BSD 3-Clause "New" or "Revised" License
6.68k stars 346 forks source link

1.x: retain add_channel_specific_matchspec between create_whatprovides calls #3232

Closed tl-hbk closed 5 months ago

tl-hbk commented 5 months ago

https://github.com/conda/conda-libmamba-solver/issues/447

conda-libmamba-solver reuses the same pool between solve attempts but creates a new solver each attempt. The solver initialization calls create_whatprovides and wipes the whatprovides relationships added for the channel specific matchspecs.

The problem with this is that the channel specific match spec is still present in the pool's string cache so later add_jobs calls just return the id for the channel specific match spec without readding the wiped whatprovides