From b6a4f500d704202781cabb8a008ab8942855ad25 Mon Sep 17 00:00:00 2001 From: Miro Hrončok Date: Sep 22 2020 18:52:45 +0000 Subject: Docuemnt modular rules approved in fesco#2406 The rules have been approved in https://pagure.io/fesco/issue/2406 The rules are reworded to use the MUST NOT/MAY/SHOULD language. --- diff --git a/modules/ROOT/pages/policies/index.adoc b/modules/ROOT/pages/policies/index.adoc index 1cdec06..ae27337 100644 --- a/modules/ROOT/pages/policies/index.adoc +++ b/modules/ROOT/pages/policies/index.adoc @@ -5,6 +5,11 @@ * Components built into a module *MUST* be associated with a reachable commit in Fedora dist-git.footnote:[There are legal and licensing requirements for reproducibility of builds.] * If a stream of a module has build-time-only components, all such components *MUST* be marked as `buildonly: True` in the module metadata to avoid shipping them to users and polluting their repository. +== Requirements for Modules in Fedora +* Modular-only packages *MUST NOT* exist in Fedora. Modular versions *MAY* exist as alternatives to non-modular packages only. There is an exception to this rule: if the package does not function in non-modular Fedora (with a reasonable amount of work), it is permitted to have it in module only.footnote:[As an example if non-modular Fedora has dnf 4, and there is module with dnf 5, a package that only works with dnf 5 can remain modular only, until dnf 5 is included in non-modular Fedora.] For the time being, such exceptions can be granted by FESCo. +* Default streams *MUST NOT* be used in Fedora.footnote:[This rule may be revised in the future, especially if the functionality of default streams is improved.] +* Packagers *SHOULD* prefer compatibility packages rather than modules wherever reasonable (e.g., libraries, language interpreters, …, and anything that can benefit from parallel installability). + == Requirements for Default Streams in Fedora ELN * *Default streams are not permitted in Fedora or EPEL 8.* Fedora ELN permits defaults streams that adhere to the policy below. * All RPMs in default module streams are required to conform to the same https://docs.fedoraproject.org/en-US/packaging-guidelines/Conflicts/[requirements around Conflicts] as non-modular RPMs.