15:00:04 #startmeeting modularity 15:00:04 Meeting started Tue Jul 2 15:00:04 2019 UTC. 15:00:04 This meeting is logged and archived in a public location. 15:00:04 The chair is langdon. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:00:04 Useful Commands: #action #agreed #halp #info #idea #link #topic. 15:00:04 The meeting name has been set to 'modularity' 15:00:14 #meetingtopic Weekly Meeting of the Modularity Team 15:00:19 #topic Roll Call 15:00:28 #chair sgallagh langdon contyk 15:00:28 Current chairs: contyk langdon sgallagh 15:00:36 .hello2 15:00:37 langdon: langdon 'Langdon White' 15:01:26 .hello2 15:01:27 not sure we are going to get anyone today... seems like a popular week to be afk 15:01:27 sgallagh: sgallagh 'Stephen Gallagher' 15:01:38 asamalik, ignatenkobrain around for meeting? 15:01:41 Wow, I feel loved :-P 15:01:54 yes 15:01:57 you and i can just trade bad jokes 15:01:58 I am around 15:02:24 ohhh.. i thought there were issues with the meeting tag.. but apparently not 15:02:38 anyone have anything for an agenda? 15:03:26 .hello2 15:03:26 asamalik: asamalik 'Adam Samalik' 15:03:29 well, I was curious what are we going to do with changing defaults 15:03:30 and stream switching 15:03:42 .fesco 2146 15:03:44 sgallagh: Issue #2146: Temporarily revert breaking module changes - fesco - Pagure.io - https://pagure.io/fesco/issue/2146 15:03:45 https://pagure.io/modularity/issue/108#comment-545920 15:04:13 we have agreed on this 7 months ago, but I can't see DNF bug, neither solution for a problem 15:04:39 I'm updating the docs, there's a PR, there will be more, but not sure that's worth a topic 15:04:41 ok.. i think those are two things.. how about ignatenkobrain first? 15:04:46 asamalik: Which? 15:04:48 also, I'm on PTO for two weeks starting next week 15:04:49 EOF 15:05:02 asamalik: pfft 15:05:07 sgallagh: https://pagure.io/fedora-docs/modularity/pull-request/60 15:05:14 I've tagged everyone, but maybe I should ping? 15:05:18 we all love email! 15:05:19 asamalik: Oh sorry. I misread your "not sure that's worth a topic" as a reply to one of our comments 15:05:27 #topic review decision made in https://pagure.io/modularity/issue/108#comment-545920 15:05:30 sgallagh: ah! 15:05:30 I saw that, just haven't gotten to it yet today 15:06:08 i thought we did track the default stream on version upgrades if unspecified.. 15:06:17 first part of the comment 15:06:32 langdon: No, that change hasn't happened in DNF yet 15:06:53 neither I could find any bugzilla for this in DNF 15:07:04 ignatenkobrain: there is 15:07:04 I'm not sure if it's being properly tracked, either. ignatenkobrain is right that no BZ exists; I'm not sure if there's another tracker somewhere that includes it 15:07:17 ignatenkobrain: I've mentioned it in the recent thread on devel... let me find it 15:07:18 asamalik: Oh? 15:08:36 brb 15:08:57 ignatenkobrain: basically this answer: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/OGR7E6LMT4EILCBAXL4OPTMEYLM4VYW5/ 15:09:03 lists all the tickets we have about that 15:10:47 I think in that bugzilla, it is not clear to DNF team what do we want from them 15:10:50 but yes, the BZ is just about the first step, not about the whole thing... so technically there isn't a BZ 15:10:52 #info https://bugzilla.redhat.com/show_bug.cgi?id=1664427 15:11:13 .bug 1664427 15:11:14 sgallagh: 1664427 – [rfe] Remember the way a module stream has been enabled - https://bugzilla.redhat.com/1664427 15:11:28 ignatenkobrain: I remember talking with Daniel about that.. and that's what he wanted as a first step.. but it's months ago 15:12:06 sorry.. interns 15:12:28 so how can we make sure that other people get actionable bugs in their queue? 15:13:47 maybe modularity needs a tracker bug? 15:14:07 or a ref to the dnf rfe to indicate "why" we want to remember how a module stream was enabled? 15:14:18 langdon: https://tree.taiga.io/project/modularity-wg/epic/27 15:14:25 langdon: https://tree.taiga.io/project/modularity-wg/us/102 15:14:44 but I must admit I wasn't driving it/pushing for it recently 15:15:00 * langdon can't even get it load :/ 15:15:01 I just updated that BZ and we'll see where that goes. 15:15:43 i think we need to add this to (not saying his real name) petr's q to follow up on a bunch of these "open" tickets.. just a "bump" may be necessary 15:15:52 * asamalik is not sure how much we're using the Taiga board anymore 15:16:10 ignatenkobrain: I think we agree it needs to be done, it just dropped down on the priority list vs. the big fires we've been putting out 15:16:37 sgallagh: I've pinged Daniel to look at that issue 15:16:41 so let's see what will happen on that 15:16:45 ack 15:16:49 so I supposed we can move to sgallagh 's topic 15:16:55 should we move to sgallagh's topic? 15:16:56 s/supposed/suppose/ 15:17:07 ha.. good timing :) 15:17:36 #topic discuss https://pagure.io/fesco/issue/2146 15:18:28 sgallagh: do you have some specific proposal and/or question you would like to discuss? 15:19:24 one moment. phone just rang 15:21:29 Sorry about that. 15:21:34 I'm back now 15:22:27 We really do need to at least resolve the libgit2 situation 15:22:58 I'd like get this group's opinion on the proposal suggested in the latter few comments. 15:23:49 as I said in FESCo ticket, I'm fine with libgit2_0.2x packages... but this should be temporary workaround until DNF implements proper stream switching 15:23:51 Specifically: get the libgit2 C libraries dropped back out of modules and made into one or more compat packages and then optionally use module streams for the bindings if they differ based on which library backs them 15:24:11 and since it is temporary, I would like to know the rough ETA when the proper fix will happen 15:24:18 ignatenkobrain: We really haven't agreed that the behavior you're asking for is "proper" 15:24:24 Because it breaks a lot of assumptions 15:25:35 I think it's worth exploring, but I'm *not* committing to it happening, let alone an ETA 15:25:54 well, if you are not allowed to change dependencies -- then modularity is just broken 15:26:21 and if default streams are allowed to be changed automatically, why dependencies won't be allowed? it is basically same case 15:26:54 I agree with sgallagh here, we should explore the problem first 15:27:04 which doesn't necessarily mean I'm disagreeing with ignatenkobrain 15:27:17 Right, I feel exactly as asamalik 15:27:35 ignatenkobrain: i don't think the q is can't change dependencies the q is when can you change dependencues 15:27:42 or dependencies even 15:27:45 we just need to keep in mind that "dnf update" won't get a Fedora system to a state that's broken or stuck 15:27:55 I think from a user perspective it does intuitively feel like a better approach. But from a practical perspective, I still don't know if it can actaully work 15:28:08 by either breaking dependencies or blocking further updates by having conflicts 15:28:27 langdon: you can't change dependencies at specific time, because of how you do MSE 15:28:48 sorry.. acronym expansion fail.. MSE? 15:28:57 Module Stream Expansion :) 15:29:04 ohh.. ha.. right 15:29:06 ignatenkobrain: My concern is mainly the case I described in that ticket: what happens when you have both `silver` and `bat` installed and one of them wants to upgrade the libgit2 dep and the other doesn't? 15:29:37 sgallagh: then you get a conflict. same as we have today in rawhide or anywhere else 15:29:46 also, we need to keep in mind that modularity is not a magic that fixes everything... it brings additional possibilities on top of plain RPMs, so it definitely shouldn't remove stuff that RPM could already do, but what it adds on top of that is also limiting 15:29:46 well.. it isn't that right.. it is that they want to upgrade the bindings? cause you can compat package the libgit2's right? 15:29:48 like I have telegram-desktop which requires old version of qt 15:29:53 and I can't update qt becahse of that 15:30:10 *is also limited 15:30:21 langdon: You're conflating two issues right there 15:30:59 how so? couldn't "bat" (and telegram) compat package the new version of libgit2 and then be off on its merry way? 15:31:01 ignatenkobrain: You're probably right and conflict-and-fail is the right approach. 15:31:04 if that is the only problem 15:31:13 so yes, modularity adds *some* new ways to approach "multiple versions", but doesn't fix all "multiple versions" problems that exist... 15:31:21 langdon: You're thinking of a specific case, I'm using it as a stand-in for a module dep in general 15:31:30 it doesnt fix *any* about installing them on the system 15:31:42 sgallagh: but if both now depend on a different stream and I don't care about libgit2 stream, it should just upgrade/downgrade/switch stream 15:31:50 modularity just makes multiple available.. rpm and dnf have to figure out how to get them on disk correctly 15:32:25 langdon: As near as I can tell, you are having an entirely different conversation from the rest of us 15:33:28 Sorry, that came out harsher than I intended. 15:33:59 ignatenkobrain: so to your QT problem... do we want to enable this with Modularity? or should we make it so that this won't happen? can we even? — I think we don't have definitive answers/agreements here, and that's probably part of the problem here :) 15:34:00 i don 15:34:02 oops 15:34:08 There are technical limitations in the way DNF is doing things right now that prevents module stream changes. I don't know if that's insurmountable 15:34:36 They have been operating up to this point under the assumption that dependencies within a stream are *fixed* and that changing those dependencies necessitates the use of a new stream. 15:34:58 I don't have the low-level knowledge to know how deeply that assumption is ingrained. 15:35:30 well.. from my understanding of the problem.. dnf could be doing stream switching all day and it still wouldn't resolve this particular issue.. as the issue is that the "components" need to be parallel installable and they aren't (even with compat packages) 15:35:33 ignatenkobrain: and you might be even right, but we need to first agree on this very basic level to move forward in any way, I think 15:36:11 asamalik: so let's agree 🙂 I think we can't prevent this qt problem... more specifically, telegram-desktop is coming from 3rd party repo.. 15:36:24 so qt will have to not upgrade for some time 15:36:27 so.. perhaps you are talking about allowing stream switching.. but that would not in any way actually resolve 2146 15:37:45 ignatenkobrain: maybe that's a different story? maybe we have two scenarios? one is fedora content where the answer might be different (policy), and the other is 3rd party content that we have to technically support without blowing up with errors, even though the behaviour/module architecture won't be as we want it to be 15:37:51 and this is why i am confused... couldn't qt be compat packaged for telegram.. using modules to make the switching easier (assuming dnf did more dynamic stream switching)? (not sure you or anyone wants to compat package qt) 15:38:44 stream switching would solve this particular FESCo issue 15:39:10 not 2146 per https://pagure.io/fesco/issue/2146#comment-580439 15:39:40 well.. stream switching is one (small) part of the problem 15:39:48 langdon: there are multiple problems... 15:39:53 let me state all of them 15:40:01 right.. i don't think you need too 15:40:06 thats exactly my point 15:40:10 1) default streams can't conflict, tihs makes dnf crazy 15:40:41 re: 1 .. and any human trying to use the system 15:40:52 langdon: Not necessarily true. 15:41:08 sgallagh: which part? 15:41:10 2. if different modules depend on different streams of one module, you can't install that content at the same time. this is fine, but if you don't try to install both at the same time, it should just work 15:41:31 langdon: packages in the Fedora repos conflict with each other.. that's just given.. you can't do "dnf install *" 15:41:32 I don't see a problem having a default stream of, say, Wordpress that installing it means I block myself off from Drupal. 15:41:37 (hypothetically) 15:41:47 sgallagh: "hidden" defaults.. sure.. they "could" be fine.. but as a developer I get really pissed if i can't figure out what libraries i have installed 15:41:53 3. if dependencies change in module streams you have enabled to a new stream, DNF just complains because it does not switch streams automatically 15:42:01 langdon: I can't parse that statement at all 15:43:40 meh.. i think this is too many conversations at once.. much like that ticket.. all of this is like 5-10-20 problems 1/2 of which have been in rpm from the get go .. if not the concept of the distribution itself from the beginning .. trying to conflate them all in to one "answer" and blaming modularity for not having it is a bit frustrating 15:43:44 3. It's not just that it doesn't change streams automatically. IIRC, there's also an issue where DNF ends up having conflicts in the solvables. I don't know the details at all though, so don't press me on it. 15:44:45 so maybe the answer to this ticket is "we've identified three distinct problems that we need to explore / find solution for" 15:45:10 I think I described al lthat in ML 15:45:13 and have three discussions in three tickets 15:45:14 I don't think 2. is a problem at install-time. I think it gets fuzzier at updates. 15:45:14 at least.. and/or point to the fpc guidance for some of them 15:45:15 but I think I have never got any reply to my email :) 15:45:36 In the traditional non-modular distro, the Stable Updates Policy simply forbids introducing breaking ABI in libraries. 15:45:39 langdon: FPC does not manage module guidelines.... 15:45:47 ignatenkobrain: maybe there's just too many things at once, so it's hard to keep up in a single thread.. I thin the thread should identify problems, not to find solutions 15:46:02 Modularity *suggests* that it could provide a workaround here, but then doesn't (today, at least) 15:46:12 ignatenkobrain: right ... it manages rpm guidelines.. like compat packages.. modules inherit from those guidelines and change a few things 15:46:46 the assumption should be rpm-rules-win-unless-explicitly-overriden 15:47:23 https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/OXS7NTPX6KNTR2JCQOV3UGACSTNTJDMD/ 15:48:30 ignatenkobrain: I never saw that message; Just found it in my spam folder :-/ 15:49:01 so.. to bring this back to a meeeting.. do we have any actions here? 15:49:02 Sorry about that 15:49:53 langdon: I am trying to re-kick the conversation about default-stream upgrades which may indeed lead into dependency-updates as well 15:50:31 * asamalik opens his spam folder and is terrified about how many legit emails from lists from people I know end up there randomly... :/ 15:50:46 * asamalik shakes fist at google 15:52:06 * asamalik notes we have less than 8 mins left 15:52:23 hence why i asked for "items to record" :) 15:52:54 Since I need to go, just FTR: I'm fine to add those compat libgit2 packages. This will create maintenance burden.. .Since instead of just one module with 3 streams, I would have to maintain 12 different branches... 15:52:55 But sgallagh is right when we will do default streams upgrade, that will involve dependency changes too... And if we can't support dependency changes, we are busted.. 15:53:40 Yeah, we need to sit down with the DNF team and figure out how to make that work. 15:53:48 asamalik: ^^ i think this is exactly the kind of "scenario"/"note" we want to add to the "not-faq" doc we were talking about 15:54:02 even if we hope it changes over time.. 15:54:20 sgallagh: are you up for scheduling such meeting? And I really hope it won't be yet another internal RH meeting 15:54:33 ignatenkobrain: can you do a single stream with all the packages including compat? 15:55:13 asamalik: I can, but what is the point? I can't put bindings there anyway then 15:55:13 ignatenkobrain: and have it default? 15:55:35 ignatenkobrain: I only meant for your packager workflow of not maintaining 12 branches.. no other reason 15:55:35 I choose modularity for libgit2 because I can put bindings in there 15:57:34 ok.. should i close this down? 15:57:59 just one remark, fixing this won't help upgrading from F30 to F31 because libgit2:0.27 is enabled on most f30 systems 15:58:12 and non-modular apps depend on 0.28 15:58:31 that's something to consider long before beta 15:58:33 have to go, sorry 15:58:39 * sgallagh nods 15:59:00 I'm on vacation for a week on Thursday, but I'll try to organize something with the DNF team after that, if no one else does it first 15:59:02 sgallagh: #info? file ticket? already covered elsewhere? 15:59:36 sgallagh: 4-11? or 4-15? 16:00:01 4-10, actually 16:00:14 I'm off 5-20 16:00:48 gotcha.. 16:00:58 ohh wait.. 16:01:03 now i am confused 16:01:05 :) 16:01:19 but.. closing meeting 16:01:22 in 5 16:01:35 4 16:01:47 3 16:01:56 2 16:02:00 1 16:02:04 #endmeeting