Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

\uD83D\uDDD3 Date

02

\uD83D\uDC65 Participants

⏪ Previous TODOs

Task report
pages4031447158
columnsdescription,assignee,location
isMissingRequiredParameterstrue

\uD83D\uDDE3 Discussion topics

Feanil Patel: Okay.

Feanil Patel: Anything else on that subject?

Feanil Patel: Kyle I'm gonna

Kyle McCormick: This is just inform that has been plugging away at the tutor side of the Redwood upgrades. So to your necklace running Mongo 7, which means so well Redwood.

...

Topic

Presenter

Notes

https://github.com/openedx/edx-platform/pull/34746

Feanil Patel

  • The change creates a maintainer team, wg-maintenance-edx-platform, with Feanil and Kyle as members

  • maintainers OEP: https://open-edx-proposals.readthedocs.io/en/latest/processes/oep-0055-proc-project-maintainers.html#removing-a-maintainer

  • Robert: what does this change mean? should we have an ADR for it?

    • why change it? to have a different contact team

      • Feanil: Yes

      • Feanil: with DD work, it seems like arch-bom doesn’t have time to be the contact

      • Feanil has been doing a lot of decision making around edx-platform, would be good to represent that

  • Robert: edx-platform is in a state of evolution

    • not perfect architecturally

    • in the past, we have let things land imperfectly, eg things that should be plugins landing in the core

    • seems like Axim’s stance is to block these sort of changes going forward

    • question: is Axim investing in plugin points/improvements so that people are preemtively unblocked?

      • Feanil: willing to negotiate, but our drive to make those plugin points is higher

        • It is hard to remove things later

          • eg, edx-enterprise

  • Discussion around hopes/fears of having Axim be the “decider” on edx-platform changes

    • Feanil: Looking forward to having a framework in place for negotiating architectural tradeoffs

  • Jeremy & Robert will discuss and comment on PR

DD for server-side templates

Robert Raposa

(tabled)

Redwood bug triage for edx-platform

Kyle McCormick

(tabled)

Node.js RetroSettings Files

  • Settings get set in yaml files and override in multiple settings.py files should we re-think this wholly.

    • Good to have this discussion on the obeseletion of OEP-45

New label for OSPRs needing reviewers?

Michelle Philbrick

✅ Action items

  •  Feanil Patel reach out to DKH to see who at 2U should be included in the Node 20 Retro, maybe an Arbibom Person? (Also optional, Sarina C, Robert R)
  •  

⤴ Decisions

⏺️ Recording and Transcripts

Recording

...

titleTranscript

edx-platform Maintenance  Sub-Group (2024-05-02 09:05 GMT-4) - Transcript

Attendees

Adolfo Brandes, Feanil Patel, Feanil Patel's Presentation, Felipe Montoya, Kyle McCormick, Maksim Sokolskiy, Michelle Philbrick, Muhammad Qasim Gulzar, Nihad Rahim, Robert Raposa, Sarina Canelake

Transcript

This editable transcript was computer generated and might contain errors. People can also change the text after it was created.

Feanil Patel: share my screen also

Feanil Patel: Everybody let's get Welcome to the edx platform maintenance meeting.

Feanil Patel: A couple of things first the python 311 related changes for edx platform have all landed. I merged the final PR this morning posted in the CCX platform room, and I talked about this with Kyle a little bit. But we decided that I know that there's to you freeze, but the pr is actually fairly minimal because most of the changes have already gone out. So this I think just restricts a couple of requirements to be running at it restricts a couple of requirements and it updates the Sci-Fi numpy requirements, which I'll pass unit tests. So it should be good and it won't upgrade them in the two use sandboxes because of the changes Kyle landed earlier last week so felt pretty safe to land so that we can get the tutor stuff up and running and tested.

Robert Raposa: And I haven't thought that's announced in the CC channel on Tim to work. Okay?

Feanil Patel: Yeah. Yeah, I posted it in the CC Channel and I posted it on discourse and on the tutor related tickets so could be good.

Feanil Patel: So yeah, I think that. Is all having that Kyle you want to talk about the unit test Matrix?

Kyle McCormick: Sure, just get this cat off me. That's something.

Kyle McCormick: so we're running tests for both create and 311, which is awesome. We are also running tests for both mongo4 and mango 7 if you look at APR that is running tests right now. You can see the number of unit tests shards of fires off.

Kyle McCormick: And that's the base number of shards which I believe is.

Kyle McCormick: about 12 let's say times two times two so each mango version Let's four different python Mongo. potential versions times every shard we don't have any data yet on how much that slows down tests. Looking at my PR right now, none of them have started. So if that's any indication this pair has been trying to run test for about five minutes.

Feanil Patel: It was 107 checks that get run on a PR now.

Kyle McCormick: cool and if we're just swimming into unit test, that's probably about the majority like 80 so

Feanil Patel: Yeah. Yeah.

Kyle McCormick: I think so. If x is the number of the unit tests like base shards instead of running x times 4. I think we could do. Run excess that are the newest things so python 311 and Mongo seven. and then handpick a Set of shards to run the old versions of things so. Mongo four and python 38

Feanil Patel: I think that makes a lot of sense.

Kyle McCormick: Particularly, I'm interested in running the old mango tests on any code which touches mango directly. which is

Kyle McCormick: These charts next module with CMS.

Feanil Patel: Okay.

Kyle McCormick: So what I can do is make a PR that picks and shards and floated by this group. But before I did that I was wondering if anyone either disagreed or wanted to see certain shards or certain version combinations run.

Robert Raposa: Yeah, I think that more than I do at this point about what Sharps it sounds generally okay, I think that probably doing some communication. I saw a little bit of your discussion about this previously. So just double checking as far as you're aware the mango four testing at all is just for you at this point may also be for others.

Feanil Patel: I think so Kyle we're talking about I think the conclusion is sort of landed. that it's valuable the test for four until Redwood is cut. Because then we can say that Redwood works with both four and seven.

Feanil Patel: At the moment it is forever. It is for everybody because the scenario that can happen is that if we stop testing today something could be introduced within the next two weeks that works with Mongo 7 but not for and we wouldn't know it and then anybody running for four with redwood would receive that failure. The chances of that happening are very very minuscule in my mind. But also it doesn't I think especially with Kyle's proposal as long as our core module story tests are being tested that is enough for the Mongo stuff.

00:05:00

Robert Raposa: That sense that sounds good. And then yeah, so I think it's more just sharing part of what I was asking about too is I don't know where we are and if we're on Mongo five now and if it makes sense to also adjusts, but you're talking about compatibility. That is four four, so Well,…

Feanil Patel: Yeah. Yeah,…

Robert Raposa: that should stay at four. Muhammad

Feanil Patel: and I think currently. To you is on Mongo six. I want to say or five it's there. I think they're on five and they're about to be on sex. Because everybody has to do this.

Robert Raposa: Yeah.

Feanil Patel: Everybody has to go through all intermediate manga versions.

Robert Raposa: Okay, so I mean in general the sense fine to me. I think it's more I mean communicating internally and

Robert Raposa: I'll even ask you. Do you know who are…

Feanil Patel: Yeah,…

Feanil Patel: I do know who is it? Let me see.

Robert Raposa: who is

Robert Raposa: Maybe because Otherwise,…

Feanil Patel: It's fine.

Robert Raposa: it was just good Jeremy, but I might be able to

Feanil Patel: I think I asked them in the ass to if you look and ask to you Robert I asked about this. recently Yeah,…

Robert Raposa: good and exit

Feanil Patel: I'm sure that there's a thread there they're on.

Feanil Patel: Their planning to have everything ready by the time Redwood is cut. So we'll drop four right after Redwood is cut. Did you find that thread Roberta? Do you want me to link it?

Robert Raposa: I got distracted and…

Feanil Patel: I'm just driving.

Robert Raposa: else asking if I'm available for a meeting right now and I don't need to say no to that.

Feanil Patel: Yeah, I dropped the link in the neat messages for you I think that's a great proposal. I think it's special. Especially on three eight you're thinking we would do this and then also for Mongo 4 we would do this. Is that right like Okay.

Kyle McCormick: Yeah for both of them. I need to look at the full Matrix and see what makes sense. That I'm thinking that we can have a handful of tests that are a small set of tests that are three eight manga 7 a small set of tests that are 311 mango four in a small Setter test that are three eight mango four. And then otherwise we ruin the full Suite with all the new stuff.

Feanil Patel: Okay, essentially. Right, so 311 and…

Kyle McCormick: we want to make sure that

Feanil Patel: seven runs the full suite and everything else runs the minimal Suite whatever we decide that is.

Kyle McCormick: right the idea being that we want to catch any interactions between Mongo four and model store and we want to make sure every line of code is still tested with three eight.

Feanil Patel: Yeah. That makes sense to me. cool

Robert Raposa: and Yeah, so I imagine the most explicit communication of this will be whatever you put actually just and…

Feanil Patel: Yeah, yeah.

Kyle McCormick: Yeah. definitely

Robert Raposa: then I'll be once an additional chart or whatever they can comment there, but I wouldn't know what that shirt would be.

Feanil Patel: I suspect very few people will know that I could. but yeah, I think it's a good starting point and once the list exists, it'll be easier to modify and we can sort of learn and improve as we go And that list I feel like will want for all the future maintenance upgrade.

Kyle McCormick: definitely Yeah.

Robert Raposa: Yeah.

Feanil Patel: So it feels like a Nice thing to cultivate.

Kyle McCormick: Sure thing.

Feanil Patel: That sounds good.

Feanil Patel: I'm not gonna make an act. I guess I'll make an action for that so we can follow up…

Kyle McCormick: Yeah, yeah good blood to me.

Feanil Patel: but if you make a pull request.

Kyle McCormick: I'll do it after this meeting. Because I don't think I'm gonna be making any edx platform here before that.

Feanil Patel: Yeah.

Kyle McCormick: self-interested

Robert Raposa: And yeah, I'll watch That already missing mango thread…

00:10:00

Feanil Patel: Yeah.

Robert Raposa: if that's where you're going to drop in the pr, okay. That's good.

Kyle McCormick: thank you, too.

Feanil Patel: All So next is that I would get on this.

Kyle McCormick: I'm good.

Feanil Patel: awesome, custom settings files Kyle you want to Walk through this a little bit.

Kyle McCormick: Yeah, so some background context that I think we all know, but we'll be good to highlight Is that back brand like 2018-2019? There's this 45. and it's thesis which we never fully implemented but is implemented in Parts is that

Kyle McCormick: open edx should just have a couple core settings files and then yaml should be really the method of customizing those so you'd have a common dot pi.

Kyle McCormick: it loads up. EML file for it for any given idea or any given operator and that ml file would contain Django settings or other things and the common top, I would process the yaml input and do everything you need to do engine go and no one would need to have a custom settings that I

Kyle McCormick: Is that summarization Sunrise everyone?

Feanil Patel: Yeah.

Robert Raposa: Yeah, I don't the part that I remember most about it. So I didn't actually remember that difference was more like the default stopped by proposal and separating that out and…

Feanil Patel: Yeah.

Robert Raposa: I and…

Kyle McCormick: right I think We could dive into that.

Robert Raposa: I Don't know if that's a whole separate conversation or if that's part of what you're talking about.

Kyle McCormick: I don't know if we need to right now. The idea is that For some reason we wanted to separate out the things that have reasonable defaults from the things that don't.

Feanil Patel: Not like we need to know.

Kyle McCormick: Have reasonable defaults. In that way changing an error would be raised if you did so there be required that pie and default step. Bye defaults would have reasonable defaults.

Kyle McCormick: Whereas required.pi would be things like passwords that there is You can configure a reasonably well for that. So if there were things and required that I weren't overridden on error would be raised. and that's…

Feanil Patel: Yeah. I think we should skip over that part…

Kyle McCormick: what nothing

Feanil Patel: because it's honestly the part that I least agree with and is not implemented anywhere.

Kyle McCormick: Yeah.

Kyle McCormick: yeah same but I think for the purpose of this conversation if you combine those and consider a common dot Pi then That's what production of bias today. Is the combination of those two things?

Feanil Patel: right

Robert Raposa: It again, alright so first you were trying to summarize this and then you were going to go into probably what you wish to see as updates to this and then follow up board or something.

Kyle McCormick: right,

Kyle McCormick: I think Is wrong with that thesis is that there are customizations that operators need to do that. Can't be done. Just with Gamble.

Kyle McCormick: particularly if you are trying to deeply customize. edx platform

Kyle McCormick: You'll need to do things like import a default setting tweak that dictionary maybe import a class from somewhere and use a part of that class as the configuration setting. but things that yeml

Kyle McCormick: things that to be done in yaml would have to require adding a bunch of knowledge of those settings to come and apply so coming up I could like

Kyle McCormick: process all those special cases

Kyle McCormick: I wish I came with examples because this is probably pretty abstract.

Feanil Patel: Yeah, I mean, I think a really good example that we got lucky on recently was loading. Because it was loading mix-ins into the system.

Kyle McCormick: Yeah.

Feanil Patel: So I think it was for loading xblock extras.

Feanil Patel: there was sort of a hacky bit added to commend up pie that tried to import the class and then add it to the list because the settings expects a list of classes and a common pattern is which is a common pattern of give me a list of objects that are all of the X blocks that we want to be able to enable or give me a list of and in some cases we've implemented this class if you give us a class path, we will automatically import Using sort of introspection and in other places we haven't implemented it and it's not consistent. And so

00:15:00

Feanil Patel: rather than being like we have to have this Helper and have this other stuff if we're just said you have your own settings file and you can import whatever you want to into your settings file and then add it or append it to the lists or dictionaries. However, you sit fit and Give the control over to the operators. I think that's valuable and I think that's sort of what Kyle's trying to get out right is We're finding that more and more people want that value tutor has its own settings file. So perhaps it's worth revisiting this underlying assumption that everybody needs a yaml settings file.

Kyle McCormick: so two things I can.

Kyle McCormick: Talk more concretely about the examples of nail is just talking about so it's this skill that I linked. How it originally in lmsn was common dot by they just conditionally imported the skill tagging Mixon and then added it to the Xbox maintenance list which

Kyle McCormick: I think is pretty clearly not good.

Feanil Patel: It certainly not if everybody had to update the common.5 settings file in order to add new customizations. Then you're gonna get into the situation where nobody can plug in anything.

Kyle McCormick: fortunately the resolution to that. Was if you hit the expand button. at the bottom of that file

Kyle McCormick: who is Sharon right now? Danielle can you hit the Expand text button there. Yeah, there's that extra mixins setting that had already been added and if you provide that a class path, it'll dynamically load the class for you and add it to Xbox missions. So that was The Simple Solution that to you is able to do. because that functionality had been built in a common depth But if that hadn't been built in we would have been in kind of this awkward situation where axon would be saying. Hey, we need you to get this out of the settings file. And you guys might be saying there's nothing we can put in our yaml that will do the same thing.

Kyle McCormick: And so my thinking is that

Kyle McCormick: other operate people using tutor can directly add things to files. There's tutorials you do that. So you can python settings it provides to you might want to have the same capability in case this comes up again in a way that There isn't an easy app for there isn't like an Xbox extra mixins that will float a class path for you.

Kyle McCormick: So that's like the two you takeaways I see and then the general takeaway I see is that the oep is just kind of unrealistic.

Kyle McCormick: could be Revisited when one of us has time to do that.

Robert Raposa: yeah, and

Muhammad Qasim Gulzar: Okay, I can look into it if I can have more context of it.

Robert Raposa: so if I can play back a summary of what I'm hearing is there's an oep that we think is unrealistic and…

Kyle McCormick: Yeah.

Robert Raposa: that we don't want that's one part two is

Robert Raposa: We're not moving forward in that way. Just based on today's reality of what's happening it seems like anyone who's using tutor. Is all set and anyone who's not. Should probably invest in.

Robert Raposa: having equivalent functionality that tutor provides around settings. for themselves whether it's via two or a method of Doing exactly that. is that's the

Kyle McCormick: Yeah, and I think switching to tutor would be a big. list for this change, but having a into you private dot Pi settings file would be

00:20:00

Kyle McCormick: If I'm imagining the code change in my head that I would have admit I've made if I worked that to you, I think it'd be pretty straightforward.

Robert Raposa: that sense that's good.

Muhammad Qasim Gulzar: And here's the way David tutor is actually providing the settings.

Robert Raposa: Yeah.

Muhammad Qasim Gulzar: It's pretty much the edxy thing. I didn't see a big drastic change in settings or Twitter provides. So probably that is pretty much very in line with the edx convention. I probably cannot connect the doors. Also, I need probably more content out of it. But the way edx is having the settings is very generically. Compatible with notes of the customization even if we want to want to deeply customize the opening it is compatible with the Deep customizations as well.

Feanil Patel: yeah.

Muhammad Qasim Gulzar: So I like the way edx is actually implementing the settings and even I am replicating this to other projects. Yeah, I'm not sure why we are even thinking of changing the way.

Feanil Patel: You're wondering why we're changing away from the way that edx. Does it towards? the thing that Kyle is talking about or something else.

Muhammad Qasim Gulzar: yeah, even if we are going to The college probably the background. I have understand so far from the discussion is probably due to has to do some custom around their recommend. The settings are probably not. Compatible with those customization probably I could be wrong, but that is my understanding.

Feanil Patel: Yeah.

Muhammad Qasim Gulzar: But yeah, that's why I'm just adding I need more context to understand…

Feanil Patel: So I think the here let's go back to this plural quests group.

Muhammad Qasim Gulzar: what exactly the changes we want to make.

Feanil Patel: Actually just go back to edx platform real quick. Make sure we're on the same page. So inside of each of our LMS and CMS or there's a common-up high settings in the comment up high file has all of the default settings for everything.

Feanil Patel: Sometimes those settings the values are strings and that's pretty easy. Sometimes they're lists and sometimes they're even objects. So if we go back to this pull request you can see that what this was adding was actually importing an object a module and then adding that to a list of modules. That sort of thing is really easy to do in Python code and really hard to do if what you're doing is importing yaml code. Yeah because yaml is all strings. So we end up having things like if we look at the production dot Pi file. Right. Now we have I think occasionally done things where we look at.

Feanil Patel: I think here.

Feanil Patel: We look at a feature.

Feanil Patel: Notice What we're doing is we're loading all the features out of the config. And then adding them to the existing list rather than updating and replacing the full list. So we get into the situation where we have to have sort of python logic And it makes it so that the ml file is no longer a complete list The python file is not a complete list of all of the features. The only way to know is to complete features is to run the entire system and that kind of sort of like opacity is part of the problem we run into and also We're lucky because these are sort of false features for the most part. But if this had been a list of objects that needed to be passed in we couldn't do that from yaml. We'd have to load it from yaml and then do some translation from strings to class paths.

Muhammad Qasim Gulzar: just

Feanil Patel: And then load the object for those class paths and that's a thing that is. Cumbersome and we'd have to remember to do it everywhere. We want to support it and rather than adding that compatibility layer. It's a little bit easier to Simply say if you use Python you could do whatever you wanted and that's less code to maintain from the platform perspective.

00:25:00

Feanil Patel: Does that make sense?

Muhammad Qasim Gulzar: Perfectly. Yeah,…

Feanil Patel: Okay.

Muhammad Qasim Gulzar: That makes sense. So autophagus in favor of I'm just gonna interrupt time. I'm just gonna add a comment probably we can discuss it later.

Feanil Patel: Yeah.

Muhammad Qasim Gulzar: I would recommend. Let's go to work the standardizing the thing if we even start making the Imports in a way we have to have trained anyway, and we can use it Inception to import the classes from the class. so that could be very helpful in longer. But in several time we can make compute here and probably you can one to one chat.

Feanil Patel: Yeah, and worth if you want to start a conversation in the working group maintenance lack Channel. I think we can sort of have more of a follow-up there and provide more examples and talk through what we all want to do.

Robert Raposa: Yeah.

Feanil Patel: Okay, awesome. Yeah.

Robert Raposa: Yeah, one other thought but I don't know if it's too late for that. It's not 31, but it Sense, sounds good.

Feanil Patel: You have until somebody else shows up.

Robert Raposa: It is whether

Robert Raposa: it doesn't have to necessarily be black and white in terms of one way versus the other but Having it the black and…

Feanil Patel: Yeah.

Robert Raposa: white at least temporarily. Let's say according to the forces you to think about what?

Feanil Patel: push

Feanil Patel: right

Robert Raposa: What are the types of settings that we want and the type of code that's required to actually deal with those settings in a general way so that I'm adding a new setting I don't think I'm adding a new setting and I can do whatever the hell I want. So I'm going to do whatever the hell I want every time I add a new setting but here's the standards that you do and then maybe there's the one rare super exception required,…

Feanil Patel: Yeah.

Kyle McCormick: Yeah.

Robert Raposa: but maybe there's never a super exception required because we have these valid ways of doing things and…

Kyle McCormick: Definitely, I think we should have an architectural conversation about it less than a tactical one…

Robert Raposa: then there's still Legacy settings and…

Kyle McCormick: because right now this isn't a fire.

Robert Raposa: whether or not we ever want to convert them to the new sit,…

Kyle McCormick: There's nothing no problems.

Robert Raposa: but, just allowing anything might not provide enough direction for people…

Kyle McCormick: It's actively causing. So I think when we have time we should step back and figure out what do we want to look like?

Robert Raposa: who are adding new settings of here's…

Kyle McCormick: Yeah, I think. The ml right now is a bit of the specific language.

Robert Raposa: what we actually want and don't want so it's something. consider

Feanil Patel: Yeah, yeah, there's weird hacks that are really hard to read unless you've looked at that file for as long as I think only a few people have especially around how celery accuser managed where the naming convention is magically generated and things like that. I put it on the list of potential maintenance that we're going to talk about in this next section…

Robert Raposa: Yeah.

Feanil Patel: because I've been slowly making Headway into that. But I don't think it's something that necessarily is gonna go into the sumac timeline, but I think I don't want to drop it as a thing that we need to do because other services actually have much more Common in production up eyes that don't have all of the happiness that edx platform does and it's a matter of cleaning up some of that to make it more consistent with those other services. to

Feanil Patel: all right, let me Link to this. Perfect. Also, I forgot that they're trimming a tree right outside this window today. So if it's extra loud, please let me know. I'll mute more often if the noise canceling is mostly working.

Robert Raposa: It's been for us.

Feanil Patel: It's So nice noise canceling is working or Yeah, because there's a chainsaw right outside my window.

Feanil Patel: All right. cool

Feanil Patel: in that case Let's get going. So.

Feanil Patel: The core thing I wanted to do today is identify anything's on this list that I missed of potential major maintenance that we want to do by sumac so that hopefully we can sequence that work. In a way that is saying and where we can be clear about what's necessary before sumac and what is optional the node 20 upgrade is the only thing that I'm aware of that is necessary. before sumac

00:30:00

Feanil Patel: react I think is ongoing but not necessarily high priority and I don't know what the state of that is. I think the two you are with bomb team is mostly leading that Robert, but I don't know if you have any more insight into that at the moment. Yeah, that's

Robert Raposa: No, I didn't even have that Insight. So I do.

Feanil Patel: Yeah, I think so. Jeremy restau has been sort of providing some updates there, so

Robert Raposa: Okay.

Feanil Patel: just real quick from my perspective and then if others have other things to add. So the new 20 upgrade I think node 18 goes out of support. Sometime after sumac is released but before teak is released. So we want to get the note 20 before sumac. Python 312 we should do. for the couple services that Don't have it already but we're not going to lose anything by waiting until after sumac if we need to based on capacity react. I haven't actually looked at it's actually yeah.

Feanil Patel: All right. We're getting security support pretty far back. It looks like.

Feanil Patel: but active support It's ended a while ago.

Feanil Patel: So she probably figure that I don't actually know what version of react we're on even right now because anybody else aware what version wrong? Yeah. I'm hoping Adolfo would show up. But today's the day he doesn't. Composable mfe's is in conversation right now.

Feanil Patel: that's probably not a thing. We're gonna favorite. Thank you. So composable mfe's is in proposal right now. If you haven't been following that oap should definitely take a look at it. I think we'll probably have a trial balloon in the sumac timeline, but probably not a let's implement everything to composable mfes all at once. so

Robert Raposa: by the way Do you have a date by the way just to help me out? Yeah.

Feanil Patel: pursuing that October

Robert Raposa: Sounds good.

Feanil Patel: Yeah.

Robert Raposa: I just needed help with that. Thanks.

Feanil Patel: Yeah. Yeah, it's like I'm actually November right if we're Assuming this one on May 9th goes well.

Feanil Patel: Yeah.

Feanil Patel: Great.

Feanil Patel: Cool can do. All let's say October 9th is our deadline Adolfo. do you know what The react upgrade I wanted to know what they like version were on right now and what the version we're trying to go to is are you aware of this?

Adolfo Brandes: We are on a 17 as far as I know. but I have not looked into which one we want to upgrade to right after This was Of pet bombs played a while ago. I don't know if they continued…

Feanil Patel: Yeah. I believe.

Adolfo Brandes: but it was supposed to be 18.

Feanil Patel: Yeah. Yeah, I think they are still working on it. It was my understanding from Jeremy wrist out is that the front-end folks in RB, bom are still working on it?

Feanil Patel: So I'll catch up with him about that. But there's no deadline. It looked like with react. We're getting security support. On the older versions as well. So the deadline I assume is more that Other things that use react don't support it, which is much harder to glean.

Adolfo Brandes: Yeah, it hasn't come up explicitly I think yet. that you want a library we want a feature that doesn't exist in 17, but If it's bound to come up.

Feanil Patel: I've got it, Yeah, but we're just trying to keep that treadmill running which is fine. We're just trying to enumerate the things that are either ongoing or need to happen before sumac. On node 20 was the only thing I flagged so far that needs to happen before sumac.

00:35:00

Adolfo Brandes: Yeah, perfect. Got it.

Adolfo Brandes: As far as the front and go that I'm aware of. Yes.

Feanil Patel: Yeah, and then python 312 is fine composable mfeas. I assume there's gonna be a trial by seeing that but it's not like we're going to commit to convert doing all of the maintenance to backport it to all of the mfes by CMAC

Adolfo Brandes: Yeah, it's always a desire that we get this fully done before the cutoff,…

Feanil Patel: Yeah.

Adolfo Brandes: but no promises at all.

Feanil Patel: right right Yeah, and the goal here is it's sort of like what? I think a thing Jeremy brought up last week that I think was really valuable is it'd be great if we could make some promises even if they're gonna be hard so that we can focus on those pieces instead of focusing on all of the pieces the composable amphi seems like it's early enough that …

Adolfo Brandes: I'm sure.

Feanil Patel: we don't want to promise anything on that today.

Adolfo Brandes: I let's get the web accepted first and then we can have an actual implementation plan.

Feanil Patel: right Yeah.

Feanil Patel: Sounds good Melia search I think. trial for sumac but I think that's gonna be one of those things were in teak. We're gonna be looking to start moving other pieces to it. And that's maintenance we're gonna want to schedule on edx platform settings cleanup I don't think that's a major thing and put it on there mostly so I wouldn't forget about it, which is the production dot Pi file is huge in messy and could be simplified. It's not being used in tutor. So it's not necessarily low impact that's just like a two you and Me coordinating for although I think you guys move off of that file that and we can just get rid of it. That's also extremely valuable.

Robert Raposa: It's yeah, I don't even know enough about it to know if our containerization project is that or…

Feanil Patel: using it Yeah,…

Robert Raposa: that if would be

Feanil Patel: Maybe we should catch up maybe independent of this on that.

Kyle McCormick: I think the settings cleanup will touch tutor 2 because tutor also has to use the animal settings files.

Feanil Patel: Right, right. I think if it uses common and builds on top of that it's fine if it uses production and builds on top of that and It's Tricky. Yeah. Okay good.

Kyle McCormick: is production

Feanil Patel: Cool, and then deprecation and removal of pavers. I know Kyle's been working hard to get all of the replacement pieces for the paper deprecation landed before Redwood with the goal that after Redwood is cut we can do this. So that feels like one that there's no sort of external deadline on but feels pretty high priority and we want to get any definitely aim for land like we're gonna land that right? I think Kyle and I are pretty committed to Landing the paper deprecation and removal by sumac.

Kyle McCormick: Yeah, for sure by sumac. I'd like to talk with anybody who's deleting paper. I know to you is and figure out. Removable day that works good for all of them. So if you use paper if you don't use tutor and you use paper to build things then please comment on that ticket.

Feanil Patel: Yeah, I got.

Feanil Patel: cool So yeah in terms of sort of focus. these top four is priorities in even maybe react before the python. If that's already in process just to reduce the number of things in process.

Feanil Patel: Feels like the right.

Feanil Patel: things to try to focus on pursue Mac in terms of maintenance for the people think

Adolfo Brandes: There's one. I don't know if this is maintenance except in a general a context…

Feanil Patel: yeah.

Adolfo Brandes: but The needs to figure out how to render X blocks in the front end is something that became much more important. recently, there are three projects that are Hinging on it.

Feanil Patel: Okay.

Adolfo Brandes: And this is also going to be a focus. I imagine in the initumic cycle. But yeah.

Feanil Patel: Yeah. Right. I think that should be on the product roadmap and we should have a product discussion about that Focus, but I think not on the there's nothing to be work other than maintenance, but that feels more like a new project to enable a capability. And then when it's time to get rid of the old stuff, I think when it falls back onto this group, it's my thinking. Is that feel right?

00:40:00

Feanil Patel: if there's as a result, I think Malia searches in a similar example where it's a product thing that is happening where we're adding new Malia search. But once we decide that everything should be Melanie search then I think it falls onto this team to sort of help make sure that actually happens.

Feanil Patel: Right, that's at least how this is open to negotiation. But that's how I've been thinking about it because it's hard to draw boundaries across things and I don't want to consume the entire project into the maintenance project.

Feanil Patel: I mean I want to but I should.

Feanil Patel: All right, any other things people want to mention here?

Felipe Montoya: Maybe tokens, that's something that Falls into the same category. It's approaching that will. maintenance

Feanil Patel: Yeah.

Feanil Patel: Yeah, there were some sort of I thought hygiene things.

Feanil Patel: Spell hygiene. And yeah.

Robert Raposa: he

Feanil Patel: because pie set up that CFG by project. Tamil there's a bunch of The way python is working is changing right and the way that you can figure python is changing. So I think we need to keep up with that and do that maintenance at some point. I dont know enough about I think things have settled down. Finally. There was a long time where it was like no we use this or use this or use this but there's a path now for Pi Project tunnel and things and tools are moving towards that so that is I think stable enough for us to start making a plan.

Feanil Patel: I don't think we need to do it by sumac. So maybe that's a good one to do some research for now and then by teak we can have a plan for

Feanil Patel: And Felipe sounds like design tokens this is in the same boat. Is it in sort of? Early development now and then at some point we'll want to actually go figure out where all needs to be updated to use it.

Felipe Montoya: maybe a little faster than that because We just started a funded contribution to actually Over The Line so by sometime Right before the conference.

Feanil Patel: Got it,…

Felipe Montoya: We want to have one pilot that is already. using one of the

Feanil Patel: That sounds good. So that might Will have started on that work and maybe we can help finish that work or at least make sure that we didn't miss anything with that. When we're ready to move off of it or move off of the old stuff onto that.

Feanil Patel: Okay, anything else?

Robert Raposa: After this topic, just a reminder question. I didn't know if you wanted to go through the task list or if you

Feanil Patel: Yeah, yeah, let's do that. So yeah, I think barring any. New information I'm gonna say that we focus on the new 20 upgrade next. After the 311 stuff lands. and that's probably worth putting in here.

Feanil Patel: Right as we have python. we have it for NX platform as of this morning, but course Discovery credentials commerce and various other things that are getting tag don't have it at the moment. I think the other half of this that we should consider is if we couldn't find people to make the updates for python 311 for these things. Perhaps those are pieces that shouldn't get tagged for the release.

00:45:00

Feanil Patel: Right now, I think the e-commerce stuff has pull requests. So those will probably land but I think most of the Enterprise repositories do not and I wonder if it makes sense to pull them from the release.

Kyle McCormick: So tagging something for release is not an indication of support rather. It's like a declaration of this is what the code was when the release was cut. Declaration of support,…

Feanil Patel: Okay.

Kyle McCormick: I mean because we say the support distribution is really whatever tutor says is supported.

Feanil Patel: Yeah.

Kyle McCormick: so I don't know how that squares with what you're thinking. Maybe we should move them from the Oregon.

Feanil Patel: I mean

Kyle McCormick: I don't know.

Feanil Patel: right, and I think perhaps that's actually the real question then is are we happy with whatever tutors running is what's supported? Versus US declaring as a community what we support from the open edx community and at what level which I think is the direction we want to be moving in. This perhaps is a conversation that we need to involve product and BTR in as well. to really get something real and concrete but

Kyle McCormick: Yeah. I guess. carefully

Felipe Montoya: Maybe even if we are going to use that tagging as a way of marking that we Actually supporting that then marking some repost. is Code when the release was cut would still be valuable for teams that are supporting. Later on.

Feanil Patel: Let's see the beer saying it's valuable to tag them even if we're not supporting them.

Felipe Montoya: Yeah, even if it's a different tag that says unsupported release so much.

Feanil Patel: right Right unsupported to Mac versus supported to Mac as a way of differentiating. That's not a bad idea. I'm happy to tag everything at a particular time just because that's a helpful way of knowing that it's more likely to work together. And interoperate better and then being clear about what we support and that's actually probably a conversation to have with. I feel like Jenna and Sarina you've both been sort of talking about that from the product side of the world as well. So in terms of what do we support and perhaps we just need to align on how to indicate that somewhere.

Feanil Patel: I'm gonna make Sarina to do it.

Sarina Canelake: My favorite thing about meetings is getting to do items. happy

Feanil Patel: You get it with me too, so we can just figure it out.

Sarina Canelake: perfect.

  • Context:

    • Lots of repos still need maintainers or maintainers are out of date.

      • Can we update the auto tagging of reviewers on repos that are no longer maintained?

    • Needs reviewer filtering not working because PRs have people assigned that no longer makes sense.

      • Can we fix this or have a label that is independent?

    • Michelle and Tim not able to remove reviewers in certain cases which makes it hard to manage PRs that need review.

      • You need write access to a repo to remove reviewers on an issue.

      • We need to be able to identify PRs where the assigned reviewer is no longer reviewing or has otherwise stalled.

      • It would be great for other reviewers to quickly find these items and get them reviewed.

✅ Action items

  •  Feanil Patel reach out to DKH to see who at 2U should be included in the Node 20 Retro, maybe an Arbibom Person? (Also optional, Sarina C, Robert R)
  •  Michelle Philbrick will put in an Axim Request to add a new label to all repos.

⤴ Decisions

    ⏺️ Recording and Transcripts

    Recording: https://drive.google.com/file/d/1Gy0MQ0zk-h0QNOvHHeYrGJP5PrVdhjuT/view?usp=sharing

    Expand
    titleTranscript

    edx-platform Maintenance  Sub-Group (2024-05-09 09:04 GMT-4) - Transcript

    Attendees

    Adolfo Brandes, Chintan Joshi, Feanil Patel, Feanil Patel's Presentation, Felipe Montoya, Jeremy Ristau, Kyle McCormick, Kyle McCormick's Presentation, Maksim Sokolskiy, Maria Grimaldi, Michelle Philbrick, Mohamed Rafeeh Ibrahim, Nihad Rahim, Piotr Surowiec, Robert Raposa, Sarina Canelake

    Transcript

    This editable transcript was computer generated and might contain errors. People can also change the text after it was created.

    Feanil Patel: Hi everybody. Welcome. I think we got a couple of things to go through here. Let me share my screen.

    Feanil Patel: too many Tab and

    Feanil Patel: yes, we can see that.

    Kyle McCormick: Yep.

    Feanil Patel: size of permanent

    Feanil Patel: I yeah.

    Feanil Patel: Hopefully that's a little bit better. Can you hear me? Okay.

    Feanil Patel: Yes, okay. I can you say something? Okay, cool. It's not going to make you okay. so

    Feanil Patel: yeah, not a lot of to talk about for today. I think the biggest One is updating the catalog info noticed platform. I don't think this will come as a surprise, but I wanted to mention it here before it fully changes. I think that our bomb has not had time to sort of do. The maintenance ownership for edx platform and while I think you guys are super committed to helping with it. I don't think you're the current leader of it. So I wanted to just update that. So that's easier to reach out to the right people.

    Robert Raposa: so question about that has there been other discussions about this because it is okay,…

    Feanil Patel: first person

    Robert Raposa: because it is sort of a surprise to me but not a surprise doesn't make sense,…

    Feanil Patel: right

    Robert Raposa: but guys and I wonder if this PR shouldn't be Accompanied with some ADR of what this means because because It's a unique kind of change right and…

    Feanil Patel: Yeah.

    Robert Raposa: it could mean so many different things and I feel like maybe we should discuss. what it means?

    Feanil Patel: Yeah, what are the things that tell me about the things that they could mean to you? We'll start from there.

    Robert Raposa: What I guess. we'll start with why did you want to change it you wanted to change it to this because just to literally have a different contact, and…

    Feanil Patel: Yeah.

    Robert Raposa: all that it means to start then okay, that's simple and…

    Feanil Patel: Yeah.

    Robert Raposa: and small obviously, I imagine there's a whole rock on what? The responsibilities of a maintainer are right and…

    Feanil Patel: right, that's

    Robert Raposa: so that there would be questions about. How did that these work?

    Feanil Patel: I mean I yeah.

    Robert Raposa: with this team

    Feanil Patel: Yeah, that's a great question. I think my perspective is that. This group and this meeting are still. How we figure that out? And I think it's just the contact changes are basically so that we can say if you're stuck on a repo and you need to contact somebody to unblock contact these people and I want that to be true across the board and…

    00:05:00

    Robert Raposa: Yeah.

    Feanil Patel: I just think that with the data dog work you guys aren't suited to do that at the moment.

    Robert Raposa: Yeah, that sounds that sensorism. and yeah, so it sounds reasonable that that's less about …

    Feanil Patel: Yeah.

    Robert Raposa: here's where we say who the maintenance is and it means all these other things. It's like here's how to contact the maintainer and wolf. We're going to need to figure out all the other things.

    Feanil Patel: All right. right

    Feanil Patel: Yeah, edx platform is big enough that I don't expect me and Kyle to individually maintain the entire thing. I think all of the conversations and planning that we've been moving forward. Are going to continue to happen. I think This is more or less to just Update how we can do this routing better the other part of this that I do think that it is worth mentioning, right? Is that I think that

    Feanil Patel: I feel like I've been doing a lot of decision making in this space and I'm gonna be continuing to do a lot of decision making in this space and I wanted to sort of back that with the like because I am maintaining this thing I am that is part of why I'm making these decisions and making sure that those two dots connect.

    Robert Raposa: Students so that's reasonable and are you imagining that to you are bum is in that the new group? or not

    Feanil Patel: That's a good question. I didn't put them in there at the moment. Mostly because I think you guys don't have the capacity to do that. I think that you are ideally you are and this is a thing I will have time for now that we're doing this you will be CC's on edx platform and you'll be part of the discussions in the next platform. But I don't think that You are the maintenance going forward of edx platform. In the way that it is described in the maintenance.

    Robert Raposa: so does that mean? Harveybum will not you that you're gonna take over all the upgrade work and everything as well, too.

    Feanil Patel: No, I mean this is the same as it was before everybody is still helping build at X platform together. that part is not changing the part that is changing is just the part where it's like the people who can help you with unblocking and decision-making are gonna be over here not over there. Right? And if you guys think that you should be a part of that group of people who can unblock PRS and unblock reviews. I totally on board with that but based on what you guys have told me about your focus at least the next couple months, but I suspect for the foreseeable future that's not a job that you want. I'm happy to be wrong. But I think based on actions.

    Robert Raposa: Good.

    Feanil Patel: This is what is me reading the room?

    Robert Raposa: right, and yeah, I think I was just wondering about because working group maintenance edx platform could have Any number of people in it to rent so it wasn't a question of should you not be making decisions?

    Feanil Patel: Yeah, absolutely. Yeah.

    Robert Raposa: But could we also still be decisions was part of

    Feanil Patel: Yeah, I mean obviously With that next platform even with other repos where there is a maintainer. There is everybody should be like lots of people who are cc's in those repos make decisions all the time. And I expect that to be true even more true that it's platform than other places. Because of how large it is, but this is more sort of like to set up.

    Feanil Patel: I am happy to be the person where the buck stops here. I don't think Arc bomb currently is positioned to be where the buck stops.

    Robert Raposa: who is in that group?

    Feanil Patel: currently myself and Kyle we want to make sure that we don't lose on have a plan for upgrades have a plan for cleanup and deprecations make sure that are the architectural stuff is clear and improve our documentation and we're going to be able to spend time on that more importantly than wanting it. I think a lot of people want it, but I think we'll be able to dedicate time to it. And so I think that's why I put this up.

    Kyle McCormick: I think

    Kyle McCormick: For one vanilla and I talked about this. We looked at the Redwood upgrades as kind of like Evidence, right like finial led the Redwood upgrades Red X platform. It was the person with a buck stop there on the python 311 upgrade.

    00:10:00

    Kyle McCormick: Do you guys have a different? sense of how that went

    Robert Raposa: Yeah, and that's so. the idea of you both being owners is not unreasonable in any way right and then the idea of us not being honors. Is also potentially not unreasonable and as you said this shouldn't be a surprise to you. I'm just saying it is a surprise only in that now in the moment. I'm just trying to think through the implications of that and whether it actually matters or doesn't matter or if it's just representing reality. And …

    Feanil Patel: Yeah.

    Robert Raposa: I'm not responding in a way of this is the wrong thing or we absolutely need to be there. what is that?

    Feanil Patel: Yeah, no totally and that's what I put it up as this is not an emergency. I put it up as a PR so that we could have some longer term discussions on it, but that it's clear in public that I think this is a change worth making and we don't have to agree on it today and if you want to sort of hash out with that means Happy to do that let's hash it all out on the pr and then if that leads to an AVR that we put in the pr as a part of it. I'm happy to write that up. But I think it was.

    Robert Raposa: And to keep in mind sorry to clarify I had imagined when I first saw this that to you art from was just being moved into that group along with you and Kyle because we had past discussion is about joint ownership. So an idiot are made more sense from the standpoint of…

    Feanil Patel: right

    Robert Raposa: how does going ownership work. from the standpoint of there is no join ownership the less of a native and…

    Feanil Patel: Yeah, I got it.

    Feanil Patel: right

    Robert Raposa: ADR and more just a question of is that and okay change and are there any problems that we're going

    Feanil Patel: Yeah, right, concerns with this change and the implications that you feel it might have and let's figure those out and I said, I think edx platform. I still need everybody's help. but I'm happy to be the person who figures out who's helped to go get and figures out what we need to do next and help prioritize and help do All of that organizational work that needs to happen for ex platform to sort of keep moving forward and I think that your focus is not that right now and probably won't be for a little bit but that said I'm obviously gonna tap you a thousand times on the shoulder, especially for a bunch of architectural things.

    Robert Raposa: I think so example one thing that comes to mind is Edx platform is in a particular state of evolution, it is where It is not. architecturally perfect in terms of where we wish to go and so we've had a long history of probably airing in certain places of going it's not architecturally there and we need to make something happen. So let's just figure out how to make that happen and try to evolve the architecture in the future. There's the other extreme which is I think extreme that

    Robert Raposa: We know what we want and that's the only thing that we're going to allow from this point forward. So if it's not architecturally set up to have plug ability in particular ways that is Then that's just required work before anything can land right and then there's a whole Spectrum in between and…

    Feanil Patel: yeah.

    Robert Raposa: I'm not saying you're only there but I'm saying you're starting there which makes sense. And how do we figure out if that's the stance? Is their work that you are all going to do to preemively allow for more ability in different ways and to set that up so that when people get to that point, they're not blocked and if not, how do we work together to make it so that we're both investing in that area and allowing things to move forward and …

    Feanil Patel: right

    Robert Raposa: Maybe Were in fewer problems that we have today, and with the hooks framework and stuff like that. And so I'm not really sure if there are major issues, but there are still issues of …

    00:15:00

    Feanil Patel: Yeah, I mean you've got the second point on here,…

    Robert Raposa: if you

    Feanil Patel: which it's gonna require Nuance right like the data dog in server side templates is going to require new ones.

    Robert Raposa: right right yeah, right and it's a question because it's also going Stuff that we know We all want to get rid of and replace with Ms. Anyway and whatever.

    Feanil Patel: Yeah. Yeah.

    Robert Raposa: Yeah.

    Feanil Patel: I'm gonna take as a first attempt at this answer, which is that the better way to describe it, I think Kyle and my perspective and Kyle tell me if I'm misrepresenting this is that our desire to reach that point at which plug ability and the good architecture exists that drive is higher but are willingness to negotiate is not necessarily zero, right? we're definitely somewhere in between those two things. It's just that We want to invest in those things sooner rather than later. if we run into a problem where we don't have the right entry points. I think they're like we can either invest immediately in that and figure that out or we can have a pathway forward where we agree on. Both what we're doing in the short term and also agree on what we're going to do in the long term, right one of the hardest parts about adding.

    Feanil Patel: pieces that are hyperspecific to edx platform is not having a plan to remove those pieces edx. Enterprise is a really good example of this where we added a thing that we said was going to be removable and it is complex. And I know we're currently in the process of starting that but it was so big that it was never sort of the viable option for such a long time. So I think having those conversations up front is a thing that we're definitely gonna hold ourselves and others accountable for but I think that we're not in flexible.

    Kyle McCormick: Yeah, I'd agree I'd say. By default we want to do the right thing. Even if that means blocking. but not against exceptions, but I think the exceptions would be the exception not the norm if that makes sense.

    Robert Raposa: right and I think we're on the same page that's the desire. I think it's a question of if

    Robert Raposa: this is just a Fear thought if all the decision making is on you too. It's very easy to Simply say To this is just the way it's going to be and the impact because it doesn't actually impact you All. Right. it just impacts, someone else who's coming from the historical impact of what's going on there. and I'm not saying that you will do that or have done that right? it's and…

    Feanil Patel: Yeah.

    Robert Raposa: IPA totally unfounded fear, but it's like when to you

    Robert Raposa: Was part of the owner of it. here's not that we're going to make that decision. That is the opposite of you but it feels like a little bit more of here's the committee that needs to actually figure out what's going to happen versus …

    Kyle McCormick: I mean our incentive is that you're a huge partner to the open edx project and…

    Robert Raposa: because there's sort of in some respects very little incentive for you to Not just hold to drink

    Kyle McCormick: we want you guys to be successful.

    Feanil Patel: right our whole job is making the projects successful and If two you had to fully walk away from it, it would be harder to achieve that goal.

    Robert Raposa: what would be architecturally best.

    Feanil Patel: Right, I think you're certainly right like there.

    Robert Raposa: right and…

    Feanil Patel: There's a way in…

    Robert Raposa: which

    Feanil Patel: which I can be like, I'm in charge now and you can't do anything that I don't want you to do and my hope is that I built up enough trust that you'll believe me when I say that that won't happen and also definitely some of that will happen because that I have certain desires about how to move this platform that I want to move forward on and I'm happy to discuss what those are and tell you exactly what my plans are up front. None of them are.

    Feanil Patel: None of them are inflexible. But I think not unreasonable I want to make sure that I'm really simple and we currently install seven or eight. Packages in our python dependencies that are coming from the edx org, we need to figure out what the plan is that involves figuring out is should this move to the open edxort can this be an optional dependency? What is preventing those things and like that stuff that I want to prioritize and…

    00:20:00

    Robert Raposa: Yep.

    Feanil Patel: have those conversations and that research but it doesn't mean I'm gonna Just delete it out of the platform without talking to you guys first.

    Robert Raposa: No, no. And yeah, I mean but I

    Robert Raposa: When I said I think the only things that have come up recently for me around some of the data dog work is trying to figure out too and where? It makes sense to have an option where here's a project and we might be iterating towards what we want to get to and we have some agreement that we're not actually going to leave that project until we get to the thing that we agree.

    Feanil Patel: Yeah.

    Robert Raposa: We want to get to but that timeline-wise that we're not necessarily blocked on it given that There are certain things that need to happen and the platform just isn't ready.

    Feanil Patel: Yeah.

    Robert Raposa: It's not like it's something wrong whatever and Is that an available process if it's not like we're gonna do this and then we're gonna move on to some other project. It's like all of a single project.

    Feanil Patel: I mean I honestly believe that this doesn't change anything for the discussions around data dog or other projects not as platform because even if Kyle, my names hadn't been in that catalog info file. I think you would have been getting the same arguments from us, but it sounds like maybe there's a concern that the arguments hold more power now, which I don't think is true because I think they held a lot of power before.

    Feanil Patel: So I don't think we're gaining sort of new traction than we already had. But I do think that we care a lot about that that architectural bit and I think let's take the data dog project as a good example, right I fully aware that this is a tight timeline for you guys. And at the same time, I'm fully aware of how an organizations priorities can shift such that work doesn't get completed to the final Vision that everybody has at the beginning and so From my perspective when we work with this sort of problem.

    Feanil Patel: We have to do a little bit of the work up front more than it's gonna be uncomfortable on both sides is probably the best way to describe it where it's like you guys we're probably gonna ask you to do slightly more work up front than you're willing to and we're gonna have to give slightly more leeway than we want to in terms of architectural cleanliness and if we're both a little bit unhappy, it's probably the right decision.

    Robert Raposa: And there are options of saying Hey, we're going to make an agreement that this is the point that we all agree. We're going to get to and if priorities change and we don't get there. We're agreeing that we're going to just yank the code that we didn't want. we could make an agreements that are like no that's part of the end of this project like you can't you and…

    Feanil Patel: Yeah.

    Feanil Patel: Yeah.

    Robert Raposa: and I'm just saying that from the standpoint of I get the priorities change, but I also get that there are some timelines that are just very useful that make progress in a particular way and…

    Feanil Patel: That's right.

    Robert Raposa: and to be able to have that option when it's necessary I'm with you we want that to be an extreme exception,…

    Feanil Patel: Yep.

    Robert Raposa: rather than the and…

    Feanil Patel: Yeah.

    Robert Raposa: again All of what I'm saying now. I agree this PR is just provoking the conversation, but it's not about this PR change.

    Feanil Patel: Yeah, that's totally fine. and this is the meta version of the negotiation that I want us to be doing which is the negotiation about here's the velocity. We need to hear the promises. We want to make and here is how we're gonna hold them accountable that conversation happening before everything lands. He's exactly the thing that I think we should strive for because I think that that's the conversations that weren't happening and aren't happening is right now in a bunch of other aspects of the system and…

    Robert Raposa: Yeah.

    Feanil Patel: we want to move more towards those conversations happening up front like all of this.

    00:25:00

    Feanil Patel: AI translations stuff that has been like getting into a bunch of repos that the product working group was not aware of and…

    Robert Raposa: Yeah.

    Feanil Patel: that we didn't know what the architectural plan was behind …

    Robert Raposa: That sounds good.

    Feanil Patel: it's another situation where I think these kinds of conversations up front about hey,…

    Robert Raposa: I'm done talking to Jeremy. I imagine you saw that that Is related to this…

    Feanil Patel: here's the experiment here the things that might touch here's by when we will pull them out into plugins and…

    Robert Raposa: which is it's very and…

    Jeremy Ristau: Yeah, yeah, sorry.

    Feanil Patel: here's by when we will remove them.

    Robert Raposa: and just has me thinking about things not.

    Feanil Patel: Even if we don't pull them out into plugins like that upfront conversation should have happened.

    Robert Raposa: but since you're also like

    Feanil Patel: We just don't have the framework in place yet for that to successfully happen. And this is kind of a step towards that framework.

    Robert Raposa: The manager your fine I imagine with this proceeding net or if you're not you should speak or add comments to the yeah.

    Robert Raposa: Okay.

    Feanil Patel: I'm not a Russian emergent. but

    Feanil Patel: yeah the thing so, I think we're on the same page.

    Feanil Patel: Okay, welcome everybody.

    Feanil Patel: Excuse me. and fighting a cold the last couple of days the cut Redwood. I'm just falling asleep immediately afterwards.

    Feanil Patel: Let me share nice help take notes suggest topics review things that I was supposed to do previously but haven't done yet.

    Feanil Patel: if people a minute or two to arrive It's feel free to add yourself here.

    Feanil Patel: Kyle you already did that the first thing good job. Yeah. yeah,…

    Kyle McCormick: done

    Feanil Patel: let's start going through these and then as people catch up we'll sort of move into the rest of the discussion and I checked in about

    Feanil Patel: release tagging process stuff where I think we punted on a bunch of that till after the Redwood cut because it was getting close to that and we both had a lot of other work to do. There are some 110 updates that sarina's gonna make

    Sarina Canelake: Why is that one on there twice? There's a bunch of them chronically.

    Feanil Patel: it's probably I think somebody must have copied something from one page to another. And so we've had some repeats. Yeah, because this is a summary of all of the pages in this space so somebody copied a page. It would show up twice.

    Sarina Canelake: Was terrified with the number as I have.

    Kyle McCormick: yeah, that was me if you refresh now, it might be

    Feanil Patel: Yeah.

    Feanil Patel: Because you copied this page from my previous meeting notes page Kyle. Yeah, that would.

    Sarina Canelake: He's scaring me Kyle giving me twice the number to do items. Yeah, of 10 update we talked about that last time. I think it'd be good to update before we cut sumac but I'm gonna probably wait…

    Feanil Patel: said

    Sarina Canelake: until after the conference frankly to even make that update so it's on my list.

    Feanil Patel: sounds good. is it helpful to have on this list as well, or do you want it as a ticket somewhere that you're gonna not lose and it's okay to remove from this list, or do you want us to check it with you? What would be helpful?

    Sarina Canelake: it's up to you. I have not put it on my physical list, but I can do that right now and then you can remove it.

    Feanil Patel: Okay, put it on your physical list and then I'll remove it.

    Sarina Canelake: Okay.

    Kyle McCormick: What's up?

    Robert Raposa: actually one is that the one we had discussed?

    Feanil Patel: the releases so this is

    00:30:00

    Feanil Patel: about dependencies and releases. It looks like It's about the release process. So.

    Sarina Canelake: all It's on my list. You can remove it.

    Feanil Patel: And it's weird that that's of 10 Yeah,…

    Kyle McCormick: That looks like it's about 45.

    Feanil Patel: I think it should be a 45.

    Sarina Canelake: And sounds perfect. I love it.

    Robert Raposa: Right either the description or the ideas.

    Feanil Patel: Yeah, yeah.

    Robert Raposa: I'm not sure which we wanted to talk about and if it is the 45 discussion that we had in the past. I'm also wondering if update updates of oops have typically been pretty minor things and this one if it's A real difference. Maybe it should be at a whole new that's going to replace. That are and that would make it like the platform.

    Kyle McCormick: AG

    Feanil Patel: Yeah.

    Robert Raposa: Okay.

    Kyle McCormick: I think we don't even have consensus on what the replacement decision is. So maybe revoke. the right step

    Feanil Patel: yeah, we're looking 45 might be the right way to go or I forget what the stage actually is called, but

    Sarina Canelake: Yeah, I mean, I think my plan was to use one of my weekly one-on-ones with Kyle to just have a conversation about this to start and then maybe come back to you guys with some of our thoughts around the way to move forward. So I think that is a decent route to consider.

    Feanil Patel: cool Yeah, that sounds good.

    Feanil Patel: And then yeah you and I spoke about this yesterday. We're gonna catch up more later around the release tagging stuff. I think that's probably why it's so at 10 up there is because this conversation is about release tagging in the previous ones about configuration.

    Sarina Canelake: gosh

    Feanil Patel: And then Kyle already reduced the number of tests in the next platform, which has been super helpful.

    Feanil Patel: Note upgrade retro. I've not scheduled but I will be scheduling for next week.

    Feanil Patel: I need to coordinate with. Brian Smith on that. Is there anybody Robert to you side that you want me to include for sure on the node.js? upgrade stuff

    Robert Raposa: I mean I imagine Diana and then maybe just reaching out to Diana to find out who else and if anyone else.

    Feanil Patel: Yeah.

    Robert Raposa: I mean and I'd be happy to be I only added to it, so depending on timing. I'd love to be there but I'm not sure if I'm going to be there and I don't want

    Sarina Canelake: Yeah, I'd also like to be optionally added to that and…

    Feanil Patel: That's good.

    Sarina Canelake: I'll try to make it if I can.

    Robert Raposa: and I don't know Jeremy if there's anyone from Arby bomb that you want to

    Feanil Patel: Yeah, I would love R Bieber presentation. I'm happy to hold it at an early time to make it easier for them.

    Robert Raposa: yeah, so then let's figure that out.

    Feanil Patel: Yeah, I'll reach out to today and figure out if there's an RV bone personal also.

    Robert Raposa: Yeah.

    Feanil Patel: Okay, that's good though. Excuse me. I think this conversation about extra requires happened in the maintenance slide channels or Fallout that needs to happen for this.

    Robert Raposa: And I know him did things. I don't know exactly what I did and if he did all the things that you wanted him to do or not.

    Kyle McCormick: I gave him suggestions and he said he'd look into them and that's where we left off. So I think I'm not concerned if he wants.

    Robert Raposa: You got it. I can check in to see if that's like

    Feanil Patel: If that Loop is closed.

    Robert Raposa: Yeah, or if it's ticketed or what it is.

    Feanil Patel: That sounds good. And then

    Feanil Patel: dependency removal and that it's platform we chatted about that. We wanted to chat about this last time a little bit. I forget if we've talked a little bit about this already, this is related to the customization conversation that we've had Robert about To you sort of managing their own settings file to be able to do things. Mostly because of the shortcomings of the yaml config file this feels like it's related to the oep45 rejection and change conversations. So maybe I'm going to close

    00:35:00

    Feanil Patel: Yeah, and somebody can help me take notes would be awesome. Maybe I'm going to close this one. Good.

    Robert Raposa: I mean it is this. Definitely to you only issue or does it make sense as sort of like an edx platform issue that we can just collect your thoughts on and have a place to document?

    Feanil Patel: Yeah. Yeah, I'm almost wondering if it makes sense to deprecate the yaml config. altogether

    Feanil Patel: So for those who weren't here for the earlier conversation a little recap right and that the Django settings are loaded using a settings file called production up. I will production up high is

    Feanil Patel: It loads a bunch of configuration from a yaml file and then it overrides that with a bunch of python settings afterwards tutor I think has a setting style that pulls from production but then adds more things and as a python script this combination of yaml and python together leads to a lot of confusion about we're settings what the setting is supposed to be what thing which override is actually taking the most precedence also prevents you from doing things like having a value of setting be an object which is important a lot of the times when we want to have a list of X blocks that are enabled or disabled or a list of other objects that meet certain criteria. caching related things. So this is fixed by having class path to objects in perspection happen,…

    Robert Raposa: The two just high level question or…

    Feanil Patel: but discussion that we were having

    Robert Raposa: one high level question.

    Feanil Patel: A little while ago that there were a couple of settings…

    Robert Raposa: Is this an edx platform thing or is this a all services thing

    Feanil Patel: where in order to add objects. there had to be code changes in edx platform that were specific to you and a certain and some I think mixins that they wanted to have on Xbox. And so the question arose about should there be this double override thing or…

    Robert Raposa: Okay, and so it's the biggest pain point but it's pattern that's used everywhere.

    Feanil Patel: should we just assume that all operators are going to be running their own? Settings file and all we would just have a common which had defaults and then every operator would override it with all of their config and they would just manage their own Pi file. And so that's a question. That's kind of open right now if people have thoughts on it we can discuss further.

    Robert Raposa: Yeah, so I'm wondering the other notes just gonna make is it I wonder if that 45 replacement, even if it doesn't get all the way to proposal just have a PR to document all the things that you just said in your thoughts and…

    Feanil Patel: I think the source is edx platform because it's the most confusing. I think the decision would be for all services.

    Robert Raposa: where discussion can happen. Maybe that's Of the collect that and then it sounds like there's two things. there's that…

    Feanil Patel: Yeah, yeah. It's this thing variations on that pattern currently exist.

    Robert Raposa: which may not land in any particular point in time and then there's A possible to you ever that you're brought up that we could do to sort of.

    Feanil Patel: And that pattern is overridden in tutor. So there's this multi-level confusion, and I'm wondering…

    Robert Raposa: mitigate the reality of the situation that we're in right now…

    Feanil Patel: if we just want to settle on this is not a discussion about Can we settle on something new that's less painful?

    Robert Raposa: where we haven't yet landed where we want to go, but we Have something in particular and this would allow us to have more flexibility on both that. and then we can talk about how to land that

    Feanil Patel: Yeah.

    00:40:00

    Feanil Patel: Yeah.

    Feanil Patel: Right, right.

    Feanil Patel: Okay.

    Feanil Patel: Yeah, since this is wrapped up 45 stuff. Maybe I'll wait till that is a little bit more cooked and we can talk about it Kyle you want to go and have your address?

    Feanil Patel: Yeah, that sounds great. Yeah, if you want to leave that conversation, that would be perfect.

    Michelle Philbrick: Yeah, so a little bit of context just…

    Feanil Patel: continue moving forward Mongo upgrade that's done.

    Michelle Philbrick: because we have a good chunk of repos that we're still looking for. maintenance on And sorry,…

    Feanil Patel: If you need to check that off this documentation. I'm going to start writing up before the 312 upgrades.

    Michelle Philbrick: I'm also getting over a cold.

    Feanil Patel: So that's soon. And then same with this doc about maintenance models for the platform.

    Michelle Philbrick: And so some of them aren't currently maintained and…

    Feanil Patel: And I know Jeremy still got a couple of repos that need to be updated for ownership to you.

    Michelle Philbrick: maybe they used to be maintained. So they've got reviewers listed or maybe someone reviewed six months ago and…

    Michelle Philbrick: I'm not able to remove them and I don't know if that's Something that can be updated.

    Feanil Patel: But hopefully now that the Redwood cut is around the corner.

    Feanil Patel: I'll have more time to spend on that and…

    Michelle Philbrick: The point is when I try and…

    Feanil Patel: finding more maintenance for things before we start doing more maintenance.

    Michelle Philbrick: compile a list for cc's of

    Feanil Patel: With that Michelle you want to talk about new labels for lsprs needing reviewers?

    Michelle Philbrick: Osprs that need review it's not always accurate and things don't always show up because if I'm filtering by needs reviewer or something like that ones that actually don't show up in the same goes for edx platform that view that was created by meeting, needs review not all of them are showing up because things that have been stalled that already have people assigned or something aren't it's just not showing up. So I didn't know if maybe it would be easier to

    Michelle Philbrick: Have a label where I could just filter by that and then CC's would know which things are stalled or need review. Hopefully It makes sense to me because I'm in it, but if I'm not being clear, just let me know.

    Michelle Philbrick: Yep.

    Michelle Philbrick: Yeah.

    Michelle Philbrick: Yeah, so for instance, let's say there was a group of signed to review it. That's no longer looking at that particular repo or something. I'm not able to remove them as a reviewer. So it's not going to show up on a filter for the CC's or…

    Feanil Patel: Yeah. Yeah, I'll ask a couple questions for clarification for me at least and…

    Michelle Philbrick: for anyone that could potentially review it. So that's…

    Feanil Patel: then if others have questions feel free to jump in so you're saying hey…

    Michelle Philbrick: why I was thinking for situations like that or just in general for edx platform and…

    Feanil Patel: the needs Reviewer is if a person has a reviewer assigned at the pull request as a reviewer assigned.

    Michelle Philbrick: for any pull requests that are either stalled or need review from some repo.

    Feanil Patel: Then it doesn't show up in that filter,…

    Michelle Philbrick: That's not currently maintained…

    Feanil Patel: but that auto assigning a reviewer might be out of date.

    Michelle Philbrick: if we could have a label wording to be determined that

    Feanil Patel: And so you don't know that PR actually needs a real review and…

    Michelle Philbrick: That was it explicitly like hey,…

    Feanil Patel: is not getting tracked properly

    Michelle Philbrick: this needs somebody assigned to it and it would Trump everything else since so if there was a group previously assigned it's like if that label is on there.

    Feanil Patel: right

    Michelle Philbrick: It means it's stalled and need somebody else's attention.

    Robert Raposa: Yeah, I was just curious Why we can't remove a reviewer, especially if they are confusingly not actually a reviewer anymore.

    00:45:00

    Sarina Canelake: You need write access on the repo to remove reviewer and Michelle has triage access. Yeah, there's just assigning reviewers is weirdly a permission reserved for those with right access.

    Robert Raposa: Got it.

    Sarina Canelake: I mean it kind of makes sense for a lot of other projects. So

    Michelle Philbrick: which is fine, so it's just a suggestion for Tim and I to be able to Be able to filter by one common thing that will show people things that need attention that don't have someone assigned to them that have been solved. so yeah, that was just my suggestion because I realized that a lot of the things that need attention There's just some nuances to it. So they're not all getting Bunch together and…

    Sarina Canelake: Yeah.

    Michelle Philbrick: instead of pinging maintainers with one-offs or

    Sarina Canelake: Yeah, Michelle. I feel like you're talking in circles just a little bit and I kind of want to get to the root of the problem is.

    Michelle Philbrick: Yeah, no problem.

    Sarina Canelake: When people are assigned to a pull request as a reviewers, you're assuming they're going to review them. However they don't always review them and you need a way to distinguish a pull request as an assigned reviewer, but Is not actually being reviewed by that reviewer. That's the problem. I mean that I just want to separate the problem from your proposed solution so that we're all on the same page.

    Michelle Philbrick: Yes, the problem is that.

    Sarina Canelake: I mean was my statement corrector was it incorrect?

    Michelle Philbrick: it's not always necessarily that the assigned reviewers aren't reviewing. it's more of like I mean yes, and no. it's just like there's so many little situations that Come up, but essentially yes for whatever reason the assigned Reviewer is no longer reviewing is not able to review whatever. It needs somebody else to take a look at it because it's been stalled or it doesn't have an owner.

    Sarina Canelake: and the only way for someone who could review that pull requests would be to look at the board that you have. And so what you're looking to do ultimately is resurface those pull requests on a specific board.

    Michelle Philbrick: Correct, or at least just have them be able to quickly look at what is available? for review what needs review because the other options are Tim and I just put these in slack and have to keep going back and saying This still needs review. Whereas if we're able to create one cohesive view of these outstanding things. I think it would be easier for everyone to just be able to look and see at what needs to be reviewed and closed or emerged or whatever.

    Sarina Canelake: Yeah, I mean honestly Michelle this feels like something that you guys should just solve and then tell us what the new process is this I mean, right you're really in the process and if a label makes sense to you, then you should add the label. I mean that's kind of personally.

    Michelle Philbrick: Yeah, I just didn't know if any cc is here or anyone that, actively looks for things to review if that would make sense or whatever. So before right, we did anything. I just wanted to make sure there was no. Blocking feedback or anyone that had any issues with that?

    Adolfo Brandes: As a common assignee or…

    Feanil Patel: and again

    Adolfo Brandes: reviewer that sometimes doesn't have time to get to them. I just like an anecdotal thing pinging me on slack will help. But otherwise, I probably won't be looking at anything else. like boards and…

    Michelle Philbrick: yeah, and

    Adolfo Brandes: stuff like I'm not saying just a report on somebody that's on the other side, right?

    Michelle Philbrick: Yeah, and this is to help solve for that. So instead of saying here's a list of all the things I need you to do. just Tim and I can just go into the maintenance Channel or into the CC Channel. With a link to a view that shows everything that's stalled and one's just assigned. To you Adolfo. This is things that have been dropped by. people or yeah

    Adolfo Brandes: No I didn't mean to save mine was the only case it's just giving one type of

    Feanil Patel: Yes. Yeah.

    Michelle Philbrick: No, yeah. Yeah, so instead of having to Ping everyone with all these individual.

    00:50:00

    Michelle Philbrick: PRS, it would just be one link to a view of This is what we need.

    Feanil Patel: Michelle, I'm totally fine with the label if that is the useful I'm curious about why it wouldn't be a column on your board is that just like that gets too unwieldy it feels like it's a state of a open source contribution that needs review is that it is stalled.

    Michelle Philbrick: Yeah, so right now we have ready for review and then in engineering review and we did have needs reviewer. But again that gets a little tricky because some of them already have reviewers assigned. So if we're trying to find ones that need a reviewer that already have an old reviewer assigned.

    Feanil Patel: red

    Feanil Patel: got it.

    Michelle Philbrick: I don't think it's going to be clear. so that's

    Feanil Patel: got you, because there's showing up here in the Actual ticket and so you're like, has reviewers. Can I move this? no. It's a stalled reviewer review or…

    Michelle Philbrick: right right

    Feanil Patel: this is a new reviewer. Whereas if you have a label you guys can sort of remove that label when you believe you can ask the person who's looking at it to remove the label.

    Michelle Philbrick: yes, yeah, or Yeah, and maybe using the assignee field to take it and say

    Feanil Patel: Yeah.

    Michelle Philbrick: I'm going to take this over, whatever but it's just so people know that hey, even though this says there's reviewers like this is stalled or this needs help. somebody needs to take a look at this. It's been dropped.

    Feanil Patel: but

    Feanil Patel: yeah, if there's a lit but

    Robert Raposa: as she's gonna say net Ned shared some code that he had written before he left to give just Doing against GitHub and output some reporting of literally just PR's owned by different people that haven't landed in 60 days or 90 days or whatever it is that you couldn't and if real problem is just So much time has gone by and it could be for any reason and these things just haven't need to get cleaned up. That's another. possible helpful tool so that you don't even have to Do all of that work, but there's a simple report. this Might be an addition to a label.

    Michelle Philbrick: we have

    Robert Raposa: I'm not taking away anything that was just added. This is just

    Feanil Patel: life, so

    Michelle Philbrick: That's great. My only comment on that would be we currently use Tim and I put information in fields in the osprs that were able to do that by if something's been sitting for a couple weeks. or more or whatever we're able to pretty much see that but it's more of like when we're following up with people on things that need to be Reviewed or if a cc is looking for things that are available and it's not completely clear if something is this would just help make it clear for everybody.

    Feanil Patel: that

    Robert Raposa: Sounds good.

    Feanil Patel: 

    Feanil Patel: Michelle add an action item for you. I think you can just put in an accent request to add a new label with whatever value you think is the right value. And we can just add it to all the repos and…

    Michelle Philbrick: Okay.

    Feanil Patel: then you guys can start using it if it doesn't work. We'll remove it. It's fine.

    Michelle Philbrick: Thank you so much.

    Feanil Patel: That cool only a couple minutes left not a lot going on at the moment other than the Redwood release which will happen in a couple of hours. There's a product roadmap meeting before that to check in edx platform is running 311 on Master right now. I think once the release is cut we will remove the three eight and four four testing. I'm pretty immediately after that. Just so we can have faster testing times. On a nice platform for the other services, I believe credentials was close in many to check in on and of course Discovery was also close but I don't know what the final update is on either of those.

    Feanil Patel: but notes and execute and I believe commerce worker and discover. You're all pretty close to being done but might not have made it in time for this cut. Which is unfortunate, but the current state of reality.

    Feanil Patel: So moving forward. These are things I think that we may want to consider. Hopefully we'll have more time and better prayer preparation for the next one so that we can get to 312 much earlier. I want to be able to identify. Owners and set deadlines a little bit sooner than

    00:55:00

    Sarina Canelake: Okay.

    Feanil Patel: 10 minutes before the release for these things to be out the door so that those are the thoughts. I'm having for the 312 stuff and sumac I'd love to hear other people's thoughts about how things went.

    Adolfo Brandes: this I just want to say sort of a general thought is that the cutoff from Masters today, but that doesn't mean We can't change Redwood dotmaster right?

    Feanil Patel: big

    Adolfo Brandes: So anything comes up like they're gonna be bugs that we're gonna find…

    Feanil Patel: Yeah.

    Adolfo Brandes: because of testing and they're gonna fix things. It's just that the process a little more involved. It's been a master and…

    Feanil Patel: Yeah, lots of make them back for you.

    Adolfo Brandes: then you open it back. Yeah.

    Feanil Patel: No, and we almost certainly will for the 311 stuff because I think both credentials and Discovery are pretty close. So if I can't get to them in the next hour or two, then we'll open a back port for them.

    Adolfo Brandes: Yeah, and then I don't know what the proper procedure To make sure that when you do that the stuff that it affects gets retested, think. I'm not sure there is a process for this but we should be aware that.

    Feanil Patel: Yeah, we should be aware. Yeah, and tutor will have to update the plugin Run on the new version.

    Adolfo Brandes: Yeah, exactly.

    Feanil Patel: So it'll be a little complicated if that's why I wanted to land these first because the tutor updates might not have been made yet. So

    Adolfo Brandes: Yeah, Yeah, the first week after the cutoff's gonna be a bit very fuzzy.

    Feanil Patel: A bit messy. Yeah, okay. We'll do what we can thanks.

    Adolfo Brandes: Yeah.

    Feanil Patel: Everybody. See you in the next time.

    Meeting ended after 00:59:28 👋