15:00:00 #startmeeting Bodhi stakeholders (2019-03-22) 15:00:00 Meeting started Fri Mar 22 15:00:00 2019 UTC. 15:00:00 This meeting is logged and archived in a public location. 15:00:00 The chair is bowlofeggs. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:00:00 Useful Commands: #action #agreed #halp #info #idea #link #topic. 15:00:00 The meeting name has been set to 'bodhi_stakeholders_(2019-03-22)' 15:00:03 #meetingname bodhi_stakeholders 15:00:03 The meeting name has been set to 'bodhi_stakeholders' 15:00:04 #topic salutations 15:00:06 #chair bowlofeggs adamw kparal mboddu nirik puiterwijk abompard cverna sebwoj 15:00:06 Current chairs: abompard adamw bowlofeggs cverna kparal mboddu nirik puiterwijk sebwoj 15:00:11 hello o/ 15:00:12 * pingou hello 15:00:17 hello 15:00:20 * kparal lurks 15:00:34 hello everyone :) 15:01:05 * cverna waves at sebwoj 15:01:12 i'll wait another minute to see if some more folks turn up 15:01:18 .hello2 15:01:19 abompard: abompard 'Aurelien Bompard' 15:01:38 the agenda is in gobby if you are the sort of person that likes knowing the future 15:01:41 morning 15:02:04 excellent, let's get this party started 15:02:13 #topic announcements and information 15:02:15 #info Bodhi 3.13.3 is the latest release https://bodhi.fedoraproject.org/docs/user/release_notes.html#v3-13-3 15:02:43 that's all the announcements about past events - we've been slow at releasing lately due to bodhi 4.0 (which has its own topics later) 15:03:01 3.13.3 seems to be stable though (of course, not bug free ☺) 15:03:23 oh i guess there is one more announcement 15:03:51 #info we are most likely going to make a 3.14.0 release to allow flatpaks to change their namespace without having to wait for 4.0.0 to stabilize 15:04:13 3.14.0 may have a couple bugfixes or small features included (if they arent' too tricky to backport) 15:04:13 oh yeah, that would be a good one to get done 15:04:25 i would also love to make a 3.14.1 15:04:27 and a 3.14.15 15:04:31 and so forth 15:04:35 we'll never make 4.0 15:04:54 3.14.159 15:05:00 anyways… 15:05:03 .hello mohanboddu 15:05:04 mboddu: mohanboddu 'Mohan Boddu' 15:05:22 let's talk about the scary and uncertain future, using our IRC crystal ball! 15:05:35 #topic Looking forward 15:05:37 #info We have decided to release 4.0.0 as soon as the issues needed for single build rawhide gating are done, and we currently have open pull requests for all of them 15:05:39 #info bodhi 4.0.0 https://github.com/fedora-infra/bodhi/projects/6 15:05:41 #info Rawhide Gating https://github.com/fedora-infra/bodhi/projects/3 15:06:01 so bodhi 4.0.0 is going to be a huuuuuge release, but it actually will not have many of the changes that were originally proposed 15:06:25 mainly because we don't want to hold the changes we've done for too long and we finally have the ones needed for single package gating done 15:06:35 we will likely have to make a 5.0.0 to support multi-build updates 15:06:39 (gating) 15:07:16 we've been making a lot of progress on the foundations we need for rawhide gating 15:07:27 mostly it's been solving some of the backwards incompatible changes needed to enable it 15:07:41 4.0.0 won't have rawhide gating, but it will have a lot of what we need to make it happen 15:09:01 4.0.0 will be using fedora-messaging 15:09:05 \o/ 15:09:18 4.0.0 won't have single package gating? 15:09:20 so we've been hard at work on this stuff. there's a lot left to do, but i am very happy with the level of activity we've seen towards these initiatives 15:09:21 bowlofeggs: So, how is rawhide gating is related to 4.0.0 (We have decided to release 4.0.0 as soon as the issues needed for single build rawhide gating are done) 15:09:35 which then would land in a 4.y version later? 15:09:39 pingou: no, but it will have all the backwards incompatible changes we need for it (which is why it's 4 and not 3) 15:09:44 pingou: yeah 15:09:46 cool 15:10:15 mboddu: rawhide gating requires some backwards incompatible changes to bodhi, so 4.0.0 has those changes 15:10:33 multi-build gating requires more than we are doing in 4.0.0, so we are going to have to do a 5.0.0 as well later 15:10:42 bowlofeggs: Got it, thanks 15:11:01 the motivation for cutting 4.0.0 now is that i am concerned about how much change we've got - it's been a while since we've had a release 15:11:01 is fedora-messaging ready for prod? 15:11:13 and this is a big change (there's a separate topic about this next) 15:11:24 jlanda: i think so 15:11:28 abompard: ? 15:12:25 the public node was being worked on the last couple of days 15:12:31 in stg things work 15:12:47 we made some changes to stg, especially around the bridge fedmsg <-> fedora-messaging 15:12:58 so these may be pending the end of freeze but otherwise, afaik, yes 15:13:03 sweet 15:13:09 well, let's talk about 4.0.0 some more: 15:13:17 #topic Looking forward 15:13:19 nirik++ and jcline++ for the public node 15:13:19 #info We have decided to release 4.0.0 as soon as the issues needed for single build rawhide gating are done, and we currently have open pull requests for all of them 15:13:21 #info bodhi 4.0.0 https://github.com/fedora-infra/bodhi/projects/6 15:13:23 #info Rawhide Gating https://github.com/fedora-infra/bodhi/projects/3 15:13:25 haha wrong paste 15:13:27 #topic Backwards incompatible changes 15:13:29 #info Bodhi 4.0.0 has many backwards incompatible changes https://github.com/fedora-infra/bodhi/blob/82c8926/docs/user/release_notes.rst#backwards-incompatible-changes 15:13:31 #info If you integrate with Bodhi, you should carefully review this list 15:13:42 so the list of backwards incompatible changes in 4.0.0 is huuuge 15:14:51 (sorry, i don't have a rendered version of that doc yet since we don't have a build, so the links don't work) 15:16:44 any comments/questions about this list of changes? 15:17:58 (the rest of the release notes haven't been written yet, so new features/bug fixes aren't in there but they will be, of course - this is just a list of backwards incompatible changes) 15:18:06 hum... so bodhi is all python3 now... 15:18:10 oh yeah 15:18:12 python 3 baby 15:18:20 does that mean you can't use 'fedpkg update' on epel7 ? 15:18:20 and not just python 3, 3.6! 15:18:24 rhel7 rather 15:18:39 I guess you can just use the web interface there. 15:18:53 well two things about that: fedpkg i think uses bodhi via subprocess, and 2) bodhi hasn't supported EPEL in a long time (i think more than a year) 15:19:01 EPEL 7 is still on 2.11 i think? 15:19:08 and EPEL 6 is on 0.9 (ooof) 15:19:45 yeah. ;( Note that epel7 has python36 now... 15:19:47 the REST API changes will break the 2.11 client for some features (like querying and editing), but i think it might still be possible to create updates 15:20:00 i've considered asking for an EPEL exception to update it to a new version and switch to py3 15:20:09 but EPEL 6 i'm not sure what to do about 15:20:52 i will also need a FESCo exception to update stable fedoras to bodhi 4, because the bodhi 3 client will also not be able to edit/query against a 4.0 server 15:22:02 one other big change to note is taht bodhi's fedmsgs have changed a lot 15:22:05 they actually have schemas now! 15:22:10 like, real true schemas! 15:22:14 no kiddin'! 15:22:28 and all masher topics got renamed to composer 15:22:39 and a lot of the schemas changed (and are now actually documented) 15:22:56 (and the schemas are tested too, unlike how they have been for eternity) 15:23:24 we'll need to adjust FMN for this then? 15:23:39 pingou: yes, and sadly FMN probably can't use fedora messaging yet :/ 15:23:45 fmn... oof 15:23:49 via the bridge it will 15:23:58 pingou: what i mean is that it can't use my schemas 15:24:06 because that's how it *should* work 15:24:16 then it would be a dnf update and it'd just keep working :) 15:24:28 oh agreed on this 15:24:51 I thougth you were referring to fmn not listening to fedora-messaging 15:25:01 one note to highlight ont he topic of schemas - i've purposely under-schema'd my messages 15:25:07 pingou: ah yeah, it will still see them 15:25:22 we should create an issue in fmn not to forgot about it 15:25:27 by "under-schema'd", i mean that i put a very bare minimum of data into the documented schema 15:25:39 and anything that uses data that isn't in my schema is not supported 15:25:48 i reserve the right to change any data that isn't part of the schema 15:26:23 i say this because bodhi still sends messages that have huge amounts of silly data (it's mooostly similar to the messages it sends in 3.x), but i'm only promising to keep a very thin amount of it stable starting with 4.0 15:26:47 so if you integrate wtih bodhi's fedmsgs, you should make sure you aren't using any fields that are not in bodhi's schemas 15:27:03 if you find that you need data that isn't in the schema, please let us know and we can work with you 15:27:50 i haven't ptu the schemas in bodhi's RST docs yet, but they are documented as JSON-schema at https://github.com/fedora-infra/bodhi/tree/develop/bodhi/messages/schemas 15:28:03 i plan to make teh RST docs render those, and also to have the bodhi server serve them 15:29:01 if you aren't familiar with json schema, here's an example for the schema i have for update comment messages: https://github.com/fedora-infra/bodhi/blob/82c8926/bodhi/messages/schemas/update.py#L88-L120 15:29:33 that's not quite complete, because there are variables in there that get rendered, but you get the idea 15:29:46 sorry if I missed it, but will our scripts using python-fedora suddenly break when bodhi gets upgraded to 4.0? 15:30:03 python-fedora hasn't supported bodhi for a long time (more than a year) 15:30:07 so... yes! 15:30:26 kparal: the BodhiClient got moved to bodhi.client.bindings.BodhiClient a long time ago 15:30:33 i think 2 years ago or so? 15:30:35 hmm, we still use it. because bodhi-client is broken in pypi 15:30:56 I actually don't know which calls do we execute if any, will need to figure that out 15:30:59 kparal: ah interesting - and you can't dnf install it? 15:31:03 https://github.com/fedora-infra/bodhi/issues/2401 15:31:26 bowlofeggs: sure we can, but we want it in virtualenv 15:31:27 yeah i'm familiar wiht the pip issue - it hasnt' been high on my priority list though since using bodhi from pip doesn't seem particualrly practical 15:31:52 kparal: and you can't use --system-site-packages? 15:32:15 the bodhi client does import koji, though i think it is conditional and not required, so i guess we could try to fix that 15:32:29 (koji is not in pypi, and neither is rpm) 15:32:37 I'll look into that. I was simply waiting until the pypi issue is fixed :) 15:32:53 actually, koji is in pypi now 15:33:05 there is a placeholder for rpm though: https://pypi.org/project/rpm/ 15:33:07 I'm not sure if it's feature complete or anything, but it's there 15:33:18 kparal: oh interesting, i didn't know that 15:33:31 ok, well i marked that ticket as high priority which might help its chances 15:33:44 i can't promise to do it any time soon though because of rawhide gating work :/ 15:33:44 (just so things don't crash if rpm is in the requirements.txt) 15:34:48 bodhi's setup.py is suuuuper weird and suuuuuper wrong 15:34:53 it's a hack 15:35:12 i do need to do something about bodhi's python packaging 15:35:13 https://pypi.org/project/koji/ oh 15:36:12 sorry, side-tracking 15:36:13 it seems we have the bodhi code in libtaskotron but no task is actually using it atm, so that might be why we don't know that python-fedora code no longer works (assuming it's true for all cases) 15:36:20 i'm conflicted between separating the packages in the same repo (and letting them diverge on versions, which makes git tags weird), and giving bodhi many repos (which solves the version problem, but makes change management weird) 15:37:03 kparal: the python-fedora code, if you have a version that still has the bodhi-client, will probably work for some operations and not others 15:37:12 kparal: but 4.0 will def break it a lot 15:37:30 ok. is there some transition period planned? 15:37:45 or do you intend to update all bodhi consumers at once? 15:38:03 normally i put releases in staging for a week in case anyone wants to try things out. for 4.0.0 i will give a longer period, but not sure how long yet 15:38:30 I wonder what will happen to things like fedora-easy-karma etc 15:38:33 kparal: ideally we'd update them at once, but i don't even know waht they all are 15:38:51 we'll likely want to announce it to devel-announce 15:38:55 right, because many third party scripts might be using bodhi without you knowing 15:39:15 f-e-k does use the new client, and it probably will mostly keep working (has a chance of having no problems) 15:39:39 yes, i will put it on announce - and there have also been devel threads abotu 4.0 already (in december) 15:39:52 of course, no matter how much announcing you do, someone won't know ☺ 15:40:04 I remember those, but haven't understood that it would break my scripts :) 15:40:05 clearly :) 15:40:17 so a clear announcement is definitely helpful 15:40:23 indeed 15:40:30 though i also didn't know people were still using python-fedora hahah 15:41:01 any other thoughts on the backwards incompatible changes? 15:41:13 nothing else from me 15:42:04 #topic triage 15:42:06 #info Bodhi's high priority issues: https://github.com/fedora-infra/bodhi/issues?q=is%3Aopen+is%3Aissue+label%3A%22High+priority%22 15:42:08 Are there any items that are not on that list that should be? Anything on that list that should not be? 15:42:22 oof, there are 70 items on this list now :/ 15:42:32 thats... a lot 15:43:09 everything that's not related to rawhide gating, not high priority :P 15:43:49 medium priority :) 15:44:15 hah, yeah maybe i need another label 15:44:31 things that are on a kanban board are def higher priority than things that are not 15:44:49 there is also a "critical priority", which i use for things that are "drop everything and do this now" 15:45:29 move to a 1-100 scale? ;) 15:45:54 hah, yeah 15:46:02 there is also a low priority 15:46:12 which i put on things that i just know i'll never actually do 15:46:13 the nice thing about it is that you can always increase the scale then :D 15:46:14 haha 15:46:29 so unlabeled is actually medium priority 15:46:45 I use "wishful" for things that I'll likely never get to :) 15:47:54 ha yeha, similar idea 15:48:02 #topic Open floor 15:49:57 so is there an approx time when 4.0.0 will land? 15:50:10 well, I guess when it's ready 15:50:23 nirik: yeah i think we're almost ready to start trying to stabilize it 15:50:33 nirik: i want to get 3.14.0 done first for otaylor 15:50:40 which i'd like to deploy when the freeze is lifted 15:50:49 once that's in prod, we can start building 4.0.0 for staging 15:51:10 it might be realistic to havea 4.0.0 beta in stage in a month or so? 15:53:01 and then we do 5.0.0 for multi-build gating, and then 6.0.0 is when we re-write bodhi in rust 15:53:07 (jk) (or am i) 15:53:14 closing in 60 s 15:53:27 (unless someone has something else) 15:54:02 (i've been doing a lot of rust lately - it. is. so. good.) 15:54:14 #endmeeting