Bug 1757460
Summary: | dnf does not consider newer module versions when a new context is added | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Petr Pisar <ppisar> | |
Component: | dnf | Assignee: | Jaroslav Mracek <jmracek> | |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Eva Mrakova <emrakova> | |
Severity: | unspecified | Docs Contact: | ||
Priority: | high | |||
Version: | 8.2 | CC: | astepano, james.antill, jblazek, jorton, jplesnik, lberton, mdomonko, psabata, sct | |
Target Milestone: | rc | Keywords: | Triaged | |
Target Release: | 8.3 | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | Doc Type: | If docs needed, set a value | ||
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1763593 1837369 (view as bug list) | Environment: | ||
Last Closed: | 2020-07-08 12:45:43 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | 1763593 | |||
Bug Blocks: | 1666770, 1713592, 1825061, 1837369 |
Description
Petr Pisar
2019-10-01 15:01:38 UTC
For the further development of modularity including resolving this issue, DNF team needs specifications (distribution restrictions) what is allowed during the life cycle of stream/module. Like changes in rpm artifacts (adding, removal, replacing), profiles, or module dependencies. The current situation with no restrictions limits changes in modular solving. The restrictions must be announced as a restriction and not as a example of a usage. Additional step would be that the release process must reject any update that do not fulfill the requirements. From the DNF side the most critical part in modular dependency solving is related to missing upgrade path between contexts. The upgrade path is synthetically calculated but we cannot ensure that the new version of the module is child of any previous version. The situation result in: 1. Errors that are not errors (Current behavior) 2. Ignoring critical problems The specific part in modular dependencies is represented by platform_id. Platform ID cannot be distinguished from real dependencies but it is strictly artificial object nearly identical to releasever. From our experience we discovered that auto-detection from metadata brakes some user-case where standard distribution based on releasever works. My question is what the plan? I create a github repository with modify repodata that will resolve adding new context or EOL. See: https://github.com/j-mracek/module_repos. The solution is based on filling metadata gaps by duplication of existing data with modified version. It does not requires any additional rpm or module builds. |