#156 Policy Decision: In-development streams
Opened 8 months ago by sgallagh. Modified 6 months ago

@ppisar noted on the Fedora devel mailing list "I'm still missing an offical recognition that there can be modules under development in stable Fedora. Otherwise we have no way of developing new modules. Fedora tries very hard to align module lifecycle to Fedora lifecycle. It does not work for me."

I see the following questions here:

  1. Is it permissible to put pre-release streams into Fedora stable releases?

  2. Is it acceptable for stream upgrades to break compatibility for a time before stabilizing the stream fully in a Fedora stable release or should we limit such streams to Rawhide until they are stable?

  3. If we allow pre-release streams in stable Fedoras, can they be "promoted" to released streams or do we require that the stable stream be renamed? (So we might have a "prerelease" stream that we then later release another stream with the appropriate version when it stabilizes.)

My policy proposal is this:

  • It is not permissible to make a prerelease stream the default stream for a module in any release.(*)
  • It is permissible to include a pre-release stream in Rawhide at any time.
  • It is permissible to include a pre-release stream in a stable branch of Fedora if the stream name clearly identifies it as unstable in some manner. When the stream is ready to be treated as stable, a new stream should be created with an appropriate name (such as a version number or other indicator of API/UX compatibility).

(*) Note that this is different from a "rolling" stream, in that the expectation on rolling streams are that all of the updates are stable, not that they are experimental and might change.

Metadata Update from @sgallagh:
- Issue tagged with: Meeting

8 months ago

I worry that renaming streams will left the prerelease streams in Fedora. Unmaintained and infecting stream expansion. And possibly forever if the maintainer forgets to retire them in Rawhide. There would have to be a standard operation procedure for relengs to do that properly.

Forbidding prerelease streams to enter non-Rawhide would prevent from actually testing them on stable Fedoras.

When I was facing this issue I solved it by keeping the stream in updates-testing repository and never pushing it to updates until the stream became production ready.

Forbidding prerelease streams to enter non-Rawhide would prevent from actually testing them on stable Fedoras.

I agree. prerelease streams that you see "master", "devel" and "rolling" stream from "dnf module list" is a safe way before releasing the stable module stream.
Because there is no way to test and check a module before releasing right now.

As a reference, someone asked me to update a default stream and profile configuration file about the "master" stream to have a default profile. Because it does not match their criteria. But I am declining it. Because I am just using the "master" branch for internal testing.

On Fedora 31 the ruby module does not meet the criteria.

Metadata Update from @asamalik:
- Issue untagged with: Meeting

6 months ago

Login to comment on this ticket.