15:08:18 #startmeeting Modularity Team Meeting 15:08:18 Meeting started Tue Oct 8 15:08:18 2019 UTC. 15:08:18 This meeting is logged and archived in a public location. 15:08:18 The chair is langdon. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:08:18 Useful Commands: #action #agreed #halp #info #idea #link #topic. 15:08:18 The meeting name has been set to 'modularity_team_meeting' 15:08:30 #meetingname modularity 15:08:30 The meeting name has been set to 'modularity' 15:08:37 #topic roll call 15:08:39 .hello2 15:08:40 langdon: langdon 'Langdon White' 15:08:42 .hello psabata 15:08:43 contyk: psabata 'Petr Ĺ abata' 15:08:51 #chair contyk sgallagh 15:08:51 Current chairs: contyk langdon sgallagh 15:08:55 .hello2 15:08:56 asamalik: asamalik 'Adam Samalik' 15:09:03 #chair asamalik 15:09:03 Current chairs: asamalik contyk langdon sgallagh 15:09:21 .hello2 15:09:21 sgallagh: sgallagh 'Stephen Gallagher' 15:09:31 .chair langdon 15:09:31 langdon is seated in a chair with a nice view of a placid lake, unsuspecting that another chair is about to be slammed into them. 15:10:03 technically standing 15:10:08 #topic agenda 15:10:16 #info update on ursa prime 15:10:22 any other ideas? 15:10:43 hahaha 15:10:53 is that a new feature? 15:10:59 zodbot++ 15:11:13 I can update on recent libmodulemd changes 15:11:14 im not sure how i feel about not killing him this week 15:11:23 #info update on libmodulemd 15:12:26 ok.. want to get to it then? 15:12:31 Rock on 15:12:33 #topic update on ursa prime 15:12:39 contyk: i think this is yours 15:12:44 or maybe sgallagh 15:13:05 maybe 15:13:17 so basically it should be functionally ready 15:13:25 The major point to bring up here is our timeline for deployment 15:13:26 there are just three things left to do 15:13:46 ...and sgallagh suggested we aim for Monday in prod :) 15:14:08 I do have more to add on that. I spoke with mboddu briefly this morning 15:14:39 He'd recommend limiting the roll-out to Rawhide/F32 and EPEL8[-playground] for now 15:14:46 Since we'll be in Infrastructure Freeze next week 15:14:50 I think that was the plan 15:15:07 I wanted to make sure it was in writing somewhere 15:15:37 maybe let's even info that 15:16:09 Let's do that once we have discussed the timeline a bit. 15:16:28 I think it's a good thing it's just in Rawhide because it's a change 15:16:37 The goal is for us to have whatever PRs are outstanding be reviewed and merged by Friday (giving us the weekend to deal with slippage) 15:16:55 And then do the deployement at the beginning of next week. 15:17:19 I originally suggested Monday, but I just remembered that I will not be around on Monday (due to it being a school holiday in Massachusetts) 15:17:41 Though it doesn't have to block on me. I don't know who else might be missing though 15:17:42 i bet we will be missing a bunch of people in fact 15:18:32 So perhaps it would be wiser to make it Tuesday? 15:18:46 yes 15:19:01 contyk, asamalik: Does that seem workable to you? 15:21:11 definitely good to plan to do it outside holidays, yes :) 15:21:41 #info Ursa Prime will be deployed to production next Tuesday 15:22:08 #info Ursa Prime configuration will initially be limited to Rawhide/F32 and EPEL8[-playground] buildroots 15:22:15 it does 15:22:27 contyk: Could you enumerate the three remaining tasks? 15:22:34 sure 15:22:36 (#info would be best) 15:22:43 it's all releng stuff 15:24:19 #info The remaining tasks to be done for Ursa Prime: 1) modify the f32/rawhide platform.yaml record in MBS to enable this feature, 2) set up a repo compose based on the defaults+overrides inputs, 3) configure koji tags and targets so that the rawhide target is a merged repo containing the modular and non-modular content 15:24:47 Thank you 15:25:24 \o/ 15:25:53 #action contyk and sgallagh to work with nirik to finish those three tasks. 15:26:17 we're going to discuss these steps with nirik in 30 minutes on #fedora-modularity 15:26:31 cool 15:26:38 move on? or is there more to say? 15:27:33 everything's been said 15:27:34 "It's been a long road, but the end is in sight" 15:27:58 ha 15:28:01 is it because the bridge has fallen? or because we're actually nearly there? :P 15:28:13 6 of one... 15:28:35 I should take my PTO starting next Wednesday 15:28:51 I took my PTO starting next Thursday afternoon 15:28:55 so Wednesday seems reasonable 15:29:08 how about tues afternoon in eu? 15:29:20 or now 15:29:24 for a month 15:29:24 https://www.dictionary.com/browse/six-of-one--half-a-dozen-of-the-other 15:29:32 ok.. moving on 15:29:33 #topic libmodulemd update 15:29:44 sgallagh: please enlighten us 15:30:07 * sgallagh flips the switch 15:30:42 I've been working on a set of changes for the 2.8.1 and 1.8.16 releases of libmodulemd to how merging Modulemd Defaults works 15:31:10 Full details of the change in behavior are in 15:31:10 .link https://github.com/fedora-modularity/libmodulemd/issues/368 15:31:20 #link https://github.com/fedora-modularity/libmodulemd/issues/368 15:31:37 The 2.x changes are approved and landed, awaiting a release. 15:31:44 \o/ 15:31:57 The 1.x changes are actually a little harder, but I plan to have them out for review today 15:32:18 (I'd much prefer it if libdnf would move to the supportable API instead, but they keep kicking that can down the road) 15:32:58 To the best of my knowledge, the only remaining consumers of libmodulemd 1.x are libdnf and a few older tests in the fedora-modulemd-defaults repository. 15:33:24 heh 15:33:45 I'm strongly considering retiring it from Rawhide/F32 to force the issue. 15:33:51 how hard is it to migrate vs. making you maintain it... ? 15:33:58 +1 15:34:33 ha 15:34:36 asamalik: "I'm not scalable" is the short answer to that question 15:35:10 you aren't that short 15:35:24 Yes I am, but that's beside the point 15:35:29 ha 15:35:31 lol 15:35:39 Oh, hmm. Looks like COPR is still using 1.x also. le sigh 15:36:23 maybe they're waiting for an external motivation, possibly in F32, to move over :P 15:36:42 or patches :/ 15:37:06 langdon: I've attempted to write some for libdnf, but it's incomprehensible and contains few comments. 15:37:17 So I really need someone who understands that codebase to take point on it 15:37:33 ick 15:37:41 * sgallagh notes that part of the reason for 2.x is that the design of it forbids some of the mistakes libdnf is making with 1.x 15:38:10 So it's probably a slightly tougher merge for them than for others, as they have to fix some mistakes in their usage too. 15:38:13 ha.. well.. at least we have learned 15:38:18 s/merge/migration/ 15:38:34 anything for the #info'ing? 15:38:45 I'll have a look at COPR after we get Ursa Prime out the door and see if that's something I can provide 15:39:00 langdon: maybe some naming and shaming? :P 15:39:10 #action sgallagh to investigate libmodulemd 2.x migration for COPR 15:39:51 #info slow migration away from libmodulemd 1.x is resulting in increasing maintenance burden 15:39:58 proposed #info dnf and copr forcing the continued maintainance (*cannot* spell thta word .. will look up) of libmodulemd v1 ?? 15:40:37 "maintenance" 15:40:55 langdon: I don't think we need to specifically name them. They know who they are 15:41:04 yeah.. saw yours right after... i always want the "ai" part to be both before and after the t 15:41:04 Anyway, I have one more topic to raise. 15:41:09 sgallagh: ack 15:41:16 ok.. you are chair if you want to #topic 15:41:37 #topic Tagging Module Defaults into non-modular repo 15:41:52 So, mattdm reraised this question after discussion on the devel@ list 15:42:24 We originally had plans to have the contents of default module streams tagged into the non-modular repositories, but we scrapped that. 15:42:37 * langdon really needs to respond to a couple emails this afternoon 15:42:44 I cannot remember the specific reasons for why (or whether they are still valid, given other changes since) 15:42:58 So, please remind me :-) 15:43:07 what are the reasons to do so? 15:43:19 I thought that was technically impossible for the same reasons we have "default" and "enabled" as two distinct states 15:43:37 asamalik: Ahh, that may have been a big part of it, yes. 15:43:38 i thought we *did* want them.. 15:44:14 default would only be enabled if the non-modular rpm used the content of the default module 15:44:25 although I'm still not 100 % clear we practically need/want those two, but that's a different topic likely 15:44:28 or maybe not 15:44:36 contyk usually knows everything 15:44:44 :P 15:44:48 asamalik: The reason we need them is because two default modules might have non-default dependencies. 15:44:52 we definitely need the two "states" 15:45:16 *conflicting non-default dependencies 15:45:18 so why would we want modular packages in the non-modular repo? 15:45:22 sgallagh: right, which back to my practicality point... byt I don't want to rabbit hole :) 15:45:25 what problem is that solving? 15:45:30 ohh.. i think it is because "tagging the default module in" is the equiv of "enabling the module" .. which is not quite what we want 15:45:50 contyk: build deps on a module 15:46:03 Not just build deps, but also allowing the Modular repos to be disabled entirely. 15:46:04 that's Ursa Prime, has nothing to do with repos 15:46:21 I'm not saying this is a good reason, but it is one that has come up 15:46:22 I remember that being discussed a very early in the process of switching to this "Modularity 2" thing, as one option, and I don't think we decided to go that way 15:46:45 we could make just one hybrid repo, I'm all for it 15:46:54 +1 to a hybrid repo 15:47:02 contyk: I don't think that addresses the actual issues though. 15:47:06 which is something rather different :) 15:47:15 sgallagh: so what are the issues? 15:47:16 well, if we really want Modularity to succeed 15:47:18 People are suggesting this as an alternative to the default streams upgrade problem 15:47:41 in other words "take default streams entirely out of the equation" 15:47:52 I think the problem is that Modularity is rolling critical path features gradually, making certain things like upgrades broken 15:48:34 making this change would mean more work, resulting in the final state to be delivered even later... 15:48:38 again, I'm not advocating in favor of this approach, I'm trying to remember why we decided it wouldn't work anyway 15:48:58 with people having modular repos disabled potentially 15:49:02 probably many reasons 15:49:15 could be that distinction between defaults and enabled 15:49:33 it's also not compatible with the failsafe mechanism (assuming it's about just tagging the packages without supplying modulemd) 15:49:58 and if it's about upgrades, it seems more like a workaround 15:50:18 like avoiding the actual issue by pretending there's no modularity 15:50:28 yep, rather than this, we need to get that "following default" thing in place 15:50:38 yep 15:50:41 Well, there are a *lot* of voices clamoring for default streams to be disallowed in Fedora and to require that modules exist solely for alternative streams 15:51:19 that would brake so many assumptions Modularity is relying on, that this should be considered wisely :) 15:51:21 And this would be one way that we could still allow them to build as modules so they don't have to follow two different workflows, depending on the release 15:52:10 Of course, we are committed to supporting default streams for RHEL 8, so we must keep that also in mind 15:52:15 "no defaults" could just be a policy decision.. so i am not sure it would break anything.. i think it is a terrible idea.. but i am not sure it would break things 15:52:20 But RHEL doesn't really have the upgrade issue 15:52:39 sgallagh: but that's what CentOS Stream would be for if I got the announcement right 15:52:48 so if I had to maintain my software twice... I wouldn't 15:52:53 asamalik: Sorry, i'm not following. 15:52:58 so I'd not use modules at all 15:53:11 contyk: I've been doing it for Node.js for two years now. 15:53:12 contyk: right 15:53:17 It's not ideal, but it's not *terrible* 15:53:17 sgallagh: for rhel 8... but yes that still means maintaining software twice 15:54:17 so maybe I'm missing something 15:54:28 but with Ursa Prime putting the defaults in the buildroot 15:54:37 and the upgrade path being fixed later on 15:54:52 why would anyone want to force these workflows on others? 15:54:53 contyk: right, those two will fix it 15:55:02 the problem is likely the "later on" 15:55:05 asamalik: We hope :-) 15:55:14 sgallagh: :-) 15:55:16 we are almost out of time.. 15:55:26 I blame langdon 15:55:37 most people do 15:55:49 contyk: Ursa Prime solves the two problems we're facing today. 15:55:59 Sorry, one of the problems 15:56:01 is there a way someone representing the opinion could come to the meeting for discussion? 15:56:10 i still think much of this is the point in time problem 15:56:13 We're still trying to get a formal specification for how upgrades should work with defaults 15:56:24 We understand it conceptually, but there's been pushback on my proposed spec 15:56:31 sgallagh: we are? i thought we just had to write it up 15:56:38 langdon: I wrote it up 15:56:48 yeah.. i thought so.. i didn't see push back i guess 15:56:50 there are still some corner cases that need to be investigated, afaik 15:56:51 jmracek is not happy with it (and some others) 15:56:56 but.. i have been out of sorts 15:57:07 sort(langdon) 15:57:48 ok.. next steps?> 15:57:56 how can we close the meeting? 15:58:29 I think I have enough information to reply about why we aren't doing the tagging-into-non-modular approach 15:59:09 And I *hope* we can avoid the call to "drop defaults" if we get Ursa Prime deployed and a ratification of the upgrade proposal 15:59:21 ok.. #info? or #action? 15:59:24 I feel like our answer is "no" because we want to implement a way to track defaults which will fix it 15:59:36 * sgallagh nods 15:59:43 so that should be our answer 15:59:52 +1 15:59:55 and if there are enough people disagreeing, I think FESCo is the right place to talk 15:59:58 and make a decision 16:00:06 +1 16:00:14 instead of endless arguing :) 16:00:21 defaults are there to make things simpler for everyone 16:00:25 let's do #agreed? 16:00:32 they exist so that you don't have to think about using modules 16:00:33 ok 16:00:36 contyk: I can see the smirk behind that sentence from here :) 16:00:57 They're there to make things simpler for *users*. Jury is out on maintainers 16:00:59 contyk: the problem is that's not true now and won't be for some time, so I get why people are mad 16:01:03 but yes, that's the aspiration 16:01:31 i think it is true for users 16:01:43 langdon: Until they want to upgrade, sure 16:01:52 but that is just dumb 16:02:04 Upgrading? 16:02:18 we established forever ago how that should work.. and it made sense.. 16:02:24 we are just swirling agian 16:02:29 but.. thats for another dya 16:02:39 do we have any agreed? i have a lunch i have to get to 16:02:42 langdon: We were wrong then 16:02:49 anyway, I think we're good here for now 16:02:57 sgallagh: i don't think so :) 16:03:10 ok.. so.. just end? 16:03:19 asamalik: do you have an #agreed? 16:03:42 I don't but can write one 16:04:03 proposed #agree to disagree 16:04:26 i kinda wonder if #disagree is a thing 16:04:58 #proposed #agreed We disagree with merging default streams into the main repo as non-modular packages. Our approach is to implement a mechanism of following default stream to give people the experience they want. 16:05:05 it is! 16:05:37 s/ following default stream / following default stream(s) 16:05:45 but i agree otherwise 16:05:52 #proposed #agreed We disagree with merging default streams into the main repo as non-modular packages. Our approach is to implement a mechanism of following default streams to give people the experience they want. 16:05:56 langdon: thanks, typo, fixed 16:06:13 +1 16:06:24 sgallagh, contyk: do you agree with the disagreement? 16:07:01 +1 16:07:07 oh, it's for real 16:07:11 +1 ftr 16:07:26 +1 16:07:27 ha 16:07:40 #agreed We disagree with merging default streams into the main repo as non-modular packages. Our approach is to implement a mechanism of following default streams to give people the experience they want. (+4 0 -0) 16:08:34 OK.. anything else? 16:08:47 * asamalik has nothing else here 16:09:41 OK.. going once? 16:10:04 2 3 :) 16:11:53 and three times! 16:11:58 #endmeeting