#139 Expected DNF behaviour of switching streams
Closed: Fixed a year ago by asamalik. Opened a year ago by mizdebsk.

Modular DNF behavior specification requires that "Enabling a different stream of a module will automatically disable the old stream". Howewer, in Fedora rawhide DNF does not behave this way.

Example reproducer:

dnf -y module enable postgresql:9.6
dnf -y module enable postgresql:10

But DNF refuses to switch streams:

The operation would result in switching of module 'postgresql' stream '9.6' to stream '10'
Error: It is not possible to switch enabled streams of a module.
It is recommended to remove all installed content from the module, and reset the module using 'dnf module reset <module_name>' command. After you reset the module, you can enable the other stream.

That used to work before - DNF would disable the old stream and enable the new one, as documented in aforementioned docs. I would normally report this non-conformant behavior as a DNF bug, but I've been told that this is the new desired behaviour.

Can you please confirm whether this is intended behaviour, and if so, update documentation?

The documentation is wrong. DNF's behavior is correct. Late in development, we realized that stream switches have too many edge-cases to be generally-supportable. As a result, we opted to disallow them entirely for consistency.

@asamalik can you please update the documentation?

Sorry I'm quite confused, the modularity user documentation has that for a while now. Is there any other place that needs updating?

Ah! More coffee brewed, documentation updated!

Metadata Update from @asamalik:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

a year ago

Looks like its still there, even after I flush my browser cache.

The docs rebuild every hour at the top of the hour, then it takes up to an hour for the mirrors to pick it up.

Login to comment on this ticket.