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