Contributors meetup Async Update
July 22nd, 2023 - August 4th, 2023
Welcome to our Core Contributors async update!
1. Working Groups Updates
Working Groups Calendar
BTR Working Group
- Chair: @jalondonot
- Headlines:
- 🌴 Palm has been released! - #3 by ABC
- They’ll run the Palm release retrospective asynchronously for 2 weeks at https://openedx.atlassian.net/wiki/spaces/COMM/pages/3663462417/Palm+Retrospective
- Meeting notes:
- Blockers or Calls/offers for help:
Contributor Coordination Working Group
- Headlines:
- We have a New working group! Introducing: The Contributor Coordination Working Group
- Meeting notes:
- Blockers or Calls/offers for help:
Data Working Group
- Chair: @e0d & @blarghmatey
- Headlines:
- Funded Contribution updates:
- BI contractor Rory is back for a few more weeks!
- Redis Bus contract is still crawling toward completion
- We’re pushing toward a Beta 1 with fully functional (no cat 1 or 2 bugs) pipelines for Ralph and Vector ingestion, Operator Dashboard, and limited Instructor Dashboard, tested at a scale of 300 million xAPI events.
- Operator Dashboard has landed
- Forum events are starting to land
- Docs are starting to land
- Thorny issues with multi-question submissions are being worked on
- Jenna has gathered community input and use cases, as will be presenting a Product Proposal for Aspects at the next Data WG meeting in 2 wks (2023-08-09)!
- Some ideas to get data and embed iframes in the LMS are proposed here WIP: get data with superset API to the LMS by Ian2012 · Pull Request #2 · eduNEXT/aspects-superset-aside
- Meeting notes:
- Blockers or Calls/offers for help:
DEPR Working Group
- Chair: Feanil
- Headlines:
- Follow up on deprecating devstack/edx-configuration:
- Set the dates further out, about 6 months
- Seems like there is still some use here that we need to be aware of and careful about
- Take a look at deadcode and vulture results on edx-platform:
- They’ve been able to clean up some more small DEPR tickets thanks to Yagnesh!
- They’ve been implementing 2U-side of [DEPR]: Remove JWT_AUTH_REFRESH_COOKIE · Issue #190 · openedx/public-engineering, and ran into a minor issue where I may take on edx-configuration.
- Meeting notes:
- Blockers or Calls/offers for help:
DevEx Working Group
- Chair: @Rebecca_S_Graber & @kmccormick
- Headlines:
- (2U ArchBOM)
- Devstack bug fixes
- Figuring out if we can reasonably measure how long it takes someone to onboard
- this includes communications latency
- results vary wildly (1 day to 20 days)
- This includes non-technical onboarding issues like paperwork and getting permissions
- DEPRing parts of paver/pavelib
- paver update_db in particular wasn’t working, now we’re using
make migrate
more
- paver update_db in particular wasn’t working, now we’re using
- starting conversations around how to DEPR/move things from Open edX to 2U (like devstack)
- DEPR ticket - please leave feedback here: [DEPR] Devstack · Issue #907 · openedx/devstack
- Date for move from Open edX to edX is 6 months out
- We need Axim’s legal approval to move from openedx to edx org in GH
- Trying out Orbstack, which wins almost immediately for me for not having to allocate memory up front
- [Discovery] Docker Desktop alternatives · Issue #93 · edx/edx-arch-experiments
- Orbstack is not free. We’re looking into free alternatives
- Docker Desktop is still free for independent devs. As long as Orbstack remains a drop-in for Docker Desktop, it may not be a huge deal for the community
- Devstack images are starting to get built for ARM. the one for credentials is up, LMS, Studio, and others are getting close.
- Tutor dev out-of-the-box is using crazy resources right now, read this for a workaround & a link to our long term fix if you’re interested: Workaround for high
tutor dev
memory usage in Palm and Nightly - Meeting notes:
- Blockers or Calls/offers for help:
DevOps Working Group
- Chair: @regis
- Headlines:
- Progress on getting Open edX to run on a local Kubernetes cluster with Minikube/Kind: How to run Open edX on a local Kubernetes cluster? · Issue #4 · openedx/wg-devops · GitHub
- Meeting notes:
- Blockers or Calls/offers for help:
- we could use some help getting the minio plugin to work on a local Kubernetes cluster (How to run Open edX on a local Kubernetes cluster? · Issue #4 · openedx/wg-devops · GitHub)
Educators Working Group
- Chair: John Swope
- Headlines:
- This month’s meeting was dedicated entirely to the panel discussion “The AI Era of Open Online Courses”.
- Educators Working Group
- Meeting notes:
- Blockers or Calls/offers for help:
- Looking for any and all documentors!
Frontend Working Group
- Chair: @arbrandes
- Headlines:
- Allow @openedx-namespaced NPM packages to be built · Issue #806 · openedx/axim-engineering
- Update on Piral and Modular MFEs:
- Refer to frontend-app-shell for installation instructions (temporarily in Pedro’s repository, will move to the openedx org this week)
- Enzyme deprecation discussion:
- Should we fully remove enzyme or use the adapter react-unit-test-utils
- It makes sense to use the current industry standard (React Testing Library): it’s just likely to be more time-consuming to rewrite the existing tests to it. However, FED-BOM would still prefer to use RTL, and since they’re going to do the brunt of the work across the frontend repositories, there were no objections.
- Some repositories - likely the ones owned by Aurora - will use react-unit-test-utils, but that’s also ok. One of the reasons to have MFEs in the first place is to give code owners some freedom in decisions of this kind.
- Should we fully remove enzyme or use the adapter react-unit-test-utils
- Unit vs Integration tests:
- Unit tests are a way to document what the code should do and also speed up development iteration, so they should definitely not go away
- Integration tests are valuable too, but one does not exclude the other
- Ideally tests are written using both techniques where they’re best applicable
- Meeting notes:
- Blockers or Calls/offers for help:
Large Instances Working Group
- Chair: @braden & @felipe
- Headlines:
- OpenCraft:
- Gábor Boros: I reviewed monitoring PR, sorry for not posting the review on time. Braden MacDonald: Been working on deploying sandboxes using our k8s infrastructure. Lots of issues related to Tutor/Palm/edx-platform versions (nightly, palm, master) and getting them all to work together. Gábor Boros: I’ve been working a lot on sandboxes for PRs and we mostly have it working! Moisés González: At a recent internal hackathon, we were exploring using ArgoCD to trigger deployments based on a PR.
- Racoon Gang:
- Maksim Sokolskiy : From time to time, we have to support old versions of Open edX. Recently we had to work on Hawthorn. It wasn’t working on M1, but I got it working with a bit of patching. Still having trouble with ElasticSearch though.
- eduNEXT:
- Moisés González: Looking into deploying MFEs with a CDN. The tutor prod setup doesn’t let you change the public URL setting at build time, so need to resolve that. Felipe Montoya: We probably want to alter the index.html file directly to put the CDN path in there, to point to all the .js, .css files etc. on a CDN, and then the Tutor image can host only the index file. Q: Why is index.html not also on the CDN? A: to be able to change it quickly and easily. Also, sometimes we want to deploy the MFE at a subfolder, not a separate domain.
- 2U:
- Jeremy Bowman: Continued work on devstack upgrades, getting ARM images for it, continuing to research devstack vs Tutor dev vs k8s based environment. Q: is any ansible used in building the container images still? A: No, ansible is gone. Maybe a few random services still use it, but all the main django services don’t use ansible anymore. Just uses the Dockerfile that’s in each repo (dev and prod variants of each).
- Harmony project updates: Review list of PRs and issues, and assign anything un-assigned.
- Meeting notes:
- Blockers or Calls/offers for help:
Marketing Working Group
- Chair: Eden Huthmacher
- Headlines:
- LWMOOCs - small booth
- Open edX meet up
- Generative AI with 2 Axim employees, new CTO Philip Smith
- Dedicated marketing page for MWG on Open edX website
- Redesign the default platform footer
- All Open edX sites should have a footer
- Meeting notes:
- Blockers or Calls/offers for help:
Maintainers
- Headlines:
- We need to converge on a plan for phase 3 rapidly. Ideally we could kick that off immediately.
- react-unit-test-utils was bumped, per Slack convo from phase 2 to phase 3.
- Based on other conversations about maintenance plans, we pulled edx-platform into phase 3. We’ll need to coordinate plans for supporting it with Jeremy Bowman
- We also added frontend-app-learner-dashboard to phase 3 scope.
- Edward Zarecor will coordinate pulling in all Aspects related repos to be maintained by Axim for phase 3.
- Ned Batchelder will work with 2U maintainers to move repos from pending to confirmed as quickly as reasonable. He’ll come back with a proposed schedule for that.
- Feanil Patel will write up an ADR on OEP-55 to propose that all new repos much come with a commitment to maintain them.
- Meeting notes:
- Blockers or Calls/offers for help:
Product Working Group
- Headlines:
- Core Product: Strategy doc has gone through feedback loop with WG
- Next steps: Open to community feedback, working session for Assessment Core capability
- LTI: MVP focuses on configuration and reuse
- Next steps: Proposal open for review
- UX/UI:
- Mobile: Approved new mobile applications as default future Open edX mobile applications. Draft of Open edX Mobile Product Vision / Direction is in review by the subgroup, with more work in the coming weeks to unpack this. Current development focus is on the Project - Learning Site Selection (FC-25a) capability to help providers build 1 iOS and 1 Android application for their clients and thus expand the use of the mobile applications for much lower cost than previously possible. Additionally, a funded contribution focused on updating mobile APIs is also in development.
- Meeting notes:
- Blockers or Calls/offers for help:
Security Working Group
- Headlines:
- Vision-casting: Where do we want to go in the future for proactive security work?
- Areas
- 1st-party dependency security upgrades
- Maintenance Board
- 3rd-party security upgrades
- Maga is working on creating process in BTR for Django
- Code
- XSS linting on edx-platform
- 1st-party dependency security upgrades
- What are the top possible improvements?
- 3rd-party security upgrades
- Django security linters
- Security checks before PR merge
- Areas
- Meeting notes:
- Blockers or Calls/offers for help:
TOC
- Meeting notes link:
Translation Working Group
- Chair: Eden Huthmacher
- Headlines:
- Meeting notes:
- Blockers or Calls/offers for help:
2. Events
3. Projects
Would anyone like to highlight any new or ongoing projects?
4. Next async update and meetup
- Tuesday August 8 - Join the meetup here!
- Friday August 18 - Update async!
- Details and draft agenda on the GitHub board
Please reply to this post with any questions or comments you may have!