Bug 1636711 - Switching module streams doesn't do anything useful
Summary: Switching module streams doesn't do anything useful
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: libmodulemd
Version: rawhide
Hardware: Unspecified
OS: Unspecified
medium
high
Target Milestone: ---
Assignee: Stephen Gallagher
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-10-07 06:31 UTC by Igor Raits
Modified: 2019-01-15 19:08 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-01-15 19:08:16 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
libgit-switch-stream.tar.xz (7.68 MB, application/x-xz)
2018-10-08 11:55 UTC, Igor Raits
no flags Details

Description Igor Raits 2018-10-07 06:31:55 UTC
⋊> ~ rpm -q libgit2                                                                                                                 08:29:33
libgit2-0.27.4-1.module_2222+2faedab6.x86_64
⋊> ~ rpm -e --test libgit2                                                                                                          08:29:35
error: Failed dependencies:
	libgit2(x86-64) = 0.27.4-1.module_2222+2faedab6 is needed by (installed) libgit2-devel-0.27.4-1.module_2222+2faedab6.x86_64
	libgit2.so.27()(64bit) is needed by (installed) git-evtag-2016.1-8.fc29.x86_64
	libgit2.so.27()(64bit) is needed by (installed) libgit2-devel-0.27.4-1.module_2222+2faedab6.x86_64
	libgit2.so.27()(64bit) is needed by (installed) bat-0.7.1-1.fc30.x86_64
⋊> ~ sudo dnf module install libgit2:0.26                                                                                           08:29:36
Last metadata expiration check: 0:00:09 ago on Sun 07 Oct 2018 08:29:29 AM CEST.
No default profiles for module libgit2:0.26
Default profile default not matched for module libgit2:0.26
Dependencies resolved.
============================================================================================================================================
 Package                          Arch                            Version                            Repository                        Size
============================================================================================================================================
Installing module profiles:
 libgit2/default                                                                                                                           
Switching module streams:
 libgit2                                                          0.27 -> 0.26                                                             

Transaction Summary
============================================================================================================================================

Is this ok [y/N]: n
Operation aborted.

---

What I would expect that it would immediately fail (because libgit2 RPM from 0.26 stream would create broken dependencies), however it does nothing.

---

libdnf-0.20.0-2.fc30.x86_64
dnf-3.6.1-2.fc30.noarch

Comment 1 Jaroslav Mracek 2018-10-08 11:40:21 UTC
Please can you provide a debugsolver

Comment 2 Igor Raits 2018-10-08 11:55:46 UTC
Created attachment 1491639 [details]
libgit-switch-stream.tar.xz

Comment 3 Igor Raits 2018-10-08 11:56:35 UTC
⋊> ~ sudo dnf module enable libgit2:0.26 --debugsolver --assumeno                                                                                                                                          13:54:33
Last metadata expiration check: 0:01:11 ago on Mon 08 Oct 2018 01:53:28 PM CEST.
Dependencies resolved.
===================================================================================================================================================================================================================
 Package                                            Arch                                              Version                                             Repository                                          Size
===================================================================================================================================================================================================================
Switching module streams:
 libgit2                                                                                              0.27 -> 0.26                                                                                                

Transaction Summary
===================================================================================================================================================================================================================

Comment 4 Jaroslav Mracek 2018-10-08 15:02:07 UTC
I think it does exactly according to specification.

Comment 5 Igor Raits 2018-10-08 15:03:32 UTC
(In reply to Jaroslav Mracek from comment #4)
> I think it does exactly according to specification.

can you point me to the specification?

If I switch module stream, all RPMs from old stream must be changed to new stream. This is not what is happening here.

Comment 6 Jaroslav Mracek 2018-10-08 18:09:46 UTC
I am sorry, I don't have a link, but I am sure that people from modularity team will have. Changing a component.

Comment 7 Petr Šabata 2018-10-09 15:56:20 UTC
This behavior was never specified by anything but the DNF team decided to do it this way because it's closer to how repositories are handled.  You're expected to run distro-sync after switching streams.

I believe DNF hints this to you or used to at one point.  When we discussed this with desktop representatives, they plan on doing something similar -- offer package sync but leave the decision to the user.

I see this is not documented under https://docs.fedoraproject.org/en-US/modularity/using-modules/#_changing_a_stream and it should be. CC'ing Adam.

I'm not a fan of this either but I wouldn't consider it a bug; perhaps the UI could be improved.


Note You need to log in before you can comment on or make changes to this bug.