English Japanese
Also, *upgrading an existing Fedora installation won’t require any special steps* as there are no changes to the main Fedora repository. The new content is in a separate repository that is completely optional.
*Client tooling (DNF) has been improved to be able to manage multiple streams of software*. Users can choose the right stream for their use case and DNF makes sure that:
Different users have different needs. Developers want the latest versions possible, system administrators want stability for longer period of time.
Features
Fedora Add-On Modularity
link:++https://docs.pagure.org/modularity/++[Fedora Modularity] introduces an optional Modular repository that provides additional versions of software on independent lifecycles.
Modularity makes some parts of the system to move slowly, and other parts to move faster — so users can choose the right speed of different parts according to their use case.
Modules are collection of packages representing an application, a language stack, or a collection of package that make sense to be delivered together. An example could be a nodejs module.
Modules can have independent lifecycles from the base Fedora release. Starting next release, it will be possible to build modules against multiple Fedora releases thanks to the link:++https://fedoraproject.org/wiki/Infrastructure/Factory2/Focus/StreamExpansion++[Stream Expansion functionality].
Next steps
Should users choose not to bother with modules and streams, they always get the distribution default. This means that modularity can be used without any changes to the existing workflows.
Streams are series of versions that are backwards compatible. An example could be two streams of nodejs — version 6.x and version 8.x compatible.
That means users will be able to upgrade to the new Fedora version while keeping the streams of software they need for their applications. This will be particularly useful for Fedora Server.
The right versions of packages get installed.
This change introduces three *new optional repositories for additional versions of software* delivered as module streams.
Updating the system also updates the packages within the module streams to their latest versions.
Updating the system will never cause a module to skip to another stream, even when there are newer versions available. Changing streams is always a conscious decision the user explicitly makes.
Users can now keep their operating system up-to-date while having the right version of an application for their use case, even when the default version in the distribution changes.
What are the benefits?