(In reply to Yunhe Guo from comment #8) > (In reply to Dominique Leuenberger from comment #7) > > From what I see, the main trouble is php8 providing php-json and obsoleting > > php7-json > > > > so anything asking for 'php-json' gets php8 > > > > The provides is probably ok (for completeness, it should also provide the > > php8-* symbol), but the obsolete leads to this kind of issue. > > Better to Conflict: php7-json in this case > > Does it help if we make php7-json a "Requires" of php7? Not entirely sure - the Obsoletes in php8 might still give hints that php7-should not be present, as it's an obsolete package. so zypp might very well try to get PHP8 in place. I'd argue, with PHP8 not ready to step in the shoes of php7, it should not obsolete php7-*, but only conflict: where needed; this gives much more control to the user and not to the solver trying to find a solution