Project

Profile

Help

Story #5071

closed

Issue #5063: Module defaults need to be considered and copied automatically during recursive dependency solving

As a user, a default module stream is copied together with its module_defaults

Added by ttereshc over 4 years ago. Updated almost 4 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Sprint/Milestone:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Platform Release:
2.21.0
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 56
Quarter:

Description

Motivation

If a module stream is marked as a default one, then nonmodular RPMs are allowed to depend on it.
If we copy the module without copying the module_defaults metadata, clients will not understand that it is special, and they will not be able to use that module to satisfy their dependencies, and the packages they provide will not be able to be installed normally through DNF as intended.

Solution

At copy time, always copy module_defaults if the stream specified in it is copied as well.
*How to merge module_defaults should be decided on this ticket before grooming

Actions #1

Updated by ttereshc over 4 years ago

  • Related to Issue #5063: Module defaults need to be considered and copied automatically during recursive dependency solving added
Actions #2

Updated by dalley over 4 years ago

  • Parent issue set to #5063
Actions #3

Updated by dalley over 4 years ago

  • Status changed from NEW to POST
  • Assignee set to dalley
  • Sprint set to Sprint 56

Added by dalley over 4 years ago

Revision 9ed9e0b6 | View on GitHub

Use placeholder EVR and Arch values

Libsolv does need these, so we have to provide fake ones, not just an empty string.

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision c4cb08fb | View on GitHub

Remove 'obsoletes'

This is unnecessary, according to Igor.

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision f52b0f2f | View on GitHub

Make changes to module default setup code

Change the name of module-default solvables to follow convention. Make sure module-defaults without a default stream aren't setting streams as defaults. Change the way provides are set up, as there should be no such thing as "module-default(name:stream)" since only one module-default exists per-module.

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision a0a10884 | View on GitHub

Hack copy_rpms() to do more than just copy RPMs

Allow it to copy modules also. Ideally, we would do more refactoring to make this less hacky, but unless we change the scope of my work I would prefer to change as little as possible in that regard.

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision 39e310ab | View on GitHub

Rewrite the recursive-conservative solver

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision b474b613 | View on GitHub

Don't try to reuse Solver

It's supposed to be possible, but it's problematic in practice.

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision c7c68551 | View on GitHub

Use empty strings for EVRs

I think Igor was wrong there, empty strings are fine.

re: #5071 https://pulp.plan.io/issues/5071

Added by dalley over 4 years ago

Revision a2380f6b | View on GitHub

Revise note based on PR feedback

re: #5071 https://pulp.plan.io/issues/5071

Actions #4

Updated by dalley over 4 years ago

  • Status changed from POST to MODIFIED
  • Platform Release set to 2.21.0
Actions #5

Updated by dalley over 4 years ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE

Also available in: Atom PDF