2024-05-02 Meeting notes

 Date

May 2, 2024

 Participants

  • @Feanil Patel

  • @Robert Raposa

  • @Kyle McCormick

  • @Michelle Philbrick

 

Previous TODOs

 

 Discussion topics

Item

Presenter

Notes

Item

Presenter

Notes

Python 3.11

 

Unit test matrix

Kyle

  • Running tests for Python 3.8 and 3.11 and Mongo 4.4 and 7

    • 107 total test to run right now

      • 64 of which are Unit Test shards

  • Proposal

    • Run fewer tests on older versions of python and mongo.

      • Proposed Shards: xmodule-with-lms, xmodule-with-cms

    • Kyle will have a detailed proposal in the form of a PR

Custom Settings Files

Kyle or Feanil

Sumac Potential Maintenance



Oct ~9 / Nov ~9 cut; Dec 9 release

 

  • Composable MFEs - Probably only a trial for Sumac

  • Meilie Search - Trial for Sumac

  • edx-platform Settings Cleanup

  • Design Tokens - Pilot before the conference

  • Python Hygiene

    • setup.py, setug.cfg, pyproject.toml

Tutor Redwood upgrades FYI

Kyle

It’s moving along thanks to Dawoud, progress here:

https://github.com/overhangio/tutor/issues/1004

https://github.com/overhangio/tutor/pull/1029

Correct Version Info

 

How do you know what version of Python, Node, Ruby to Install for any given repo.

 Action items

@Kyle McCormick create an edx-platform PR to reduce the number of tests we run per PR
@Sarina Canelake @Feanil Patel Chat about supported/unsupported aspects of the code and release tagging.
@Sarina Canelake Update OEP-10 (pre-Sumac): Summary: Defaults live in a python file and you should only use YAML to override things. Proposal: This is wrong, it is useful and valuable to let operators have their own custom settings file. (Dynamically loading classes, Compute values an runtime)

 Decisions

Recording and Transcripts

Recording

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.

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.

Meeting ended after 01:11:15 👋