On Wed, Aug 5, 2020 at 5:38 PM Dominik 'Rathann' Mierzejewski
<dominik(a)greysector.net> wrote:
Hi, Stephen.
On Wednesday, 05 August 2020 at 21:36, Stephen Gallagher wrote:
> FESCo has requested that I submit the module policy once more to the
> Fedora development list for discussion. Feedback is welcome.
[...]
> * The default stream of a module *MUST NOT* change to a different
> stream within a released Fedora version.footnote:[This is an extension
> of the
https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/#stable-release...
> updates policy].] The default stream *MAY* be changed in Rawhide or
> during Fedora upgrades. Changes to default streams *MUST* be approved
> via a
https://docs.fedoraproject.org/en-US/program_management/changes_policy/#_...
> Change proposal].
> * Packages *MAY* convert from a non-modular package to a modular
> default stream (or the reverse) only in Rawhide or during Fedora
> upgrades.
> * Default streams *MUST NOT* provide a binary RPM with the same
> package name as a non-modular RPM in the same release except in the
> case of a transition from one to the other.footnote:[Modular packages
> shadow non-modular ones. This rule ensures that we don't have any
> shadowed packages in the default package set.]
[1] Transitions to/from modular are already forbidden in Fedora
releases, so saying "in the same release" makes no sense. I'd say "in
rawhide or during Fedora upgrades".
It's redundant, but it doesn't need to be changed if we ever end up
allowing default streams in Fedora releases.
> * Default streams *MUST NOT* provide a binary RPM with the same
> package name as an RPM in a default stream in the same release except
> in the case of a transition from one to the other.footnote:[In this
> situation, whichever has the highest NEVRA would win the depsolving
> and could break the other module.]
I guess "transition to another default module" is what is meant above.
This was a bad copy-paste. Everything after "in the same release"
should be dropped. I'll fix that.
> * Multiple default streams *MUST NOT* provide the same binary package
> names at runtime.footnote:[They *MAY* provide other well-known names
> in the same manner as permitted for non-modular content. For example,
> two different default streams *MAY* provide content to be used with
> the `alternatives` system or virtual `Provides` for capabilities.]
> * Default streams *MUST NOT* provide a package that overrides a
> package of the same name in the non-modular content except in approved
> cases of migration between modular and non-modular delivery.
This is redundant, already mentioned above[1].
It's not redundant for ELN, which is a rolling stream like Rawhide.