Core Contributor Update: Oct 14th - Oct 27th, 2023
Use the jump links below to view the section that interests you:
1. Working Groups Updates
1.1. BTR Working Group
Chair: @jalondonot
Latest news
- Quince release:
- Cutting branches ceremony status report
- Testing process follow-up
- GitHub board current status
- MFEs ongoing work:
- on Tuesday Quince master branch was cut
- Palm.3 was cut on Friday, as we were waiting for backports
- MFEs are not working in Quince:
- React router upgrade incompatible with
PUBLIC_PATH
setting.- Fix was made in frontend-platform, but all MFEs need a library update.
- Revealed a need for MFE developers to use Tutor for development.
- Adolfo Brandes is working on updating the MFEs to fix the
PUBLIC_PATH
issue. They’ll track it in Backport(s) before quince.1 release · Issue #307 · openedx/wg-build-test-release- UWSGI is no longer maintained:
- Gunicorn is not so great for serving static assets.
- Emad Rad suggested uvicorn: GitHub - encode/uvicorn: An ASGI web server, for Python.
and RĂ©gis B. will look into it.
Meeting notes
1.2. Contributor Coordination Working Group
Chair: Jorge Londoño
Latest news
- Next meeting: October 31st
Past meeting notes 2023-10-03 CC Working Group Meeting Notes:
- This PR was merged last week fix: type hints weren’t installed properly, add type hints for Django Fields #259
- Feedback needed - Open edX Survey Report:
Blockers or Calls/offers for help
- Debugging persistent grade issues
- Bug triagers for Quince release:
Meeting notes
1.3. Data Working Group
Chair: @e0d & @blarghmatey
Latest news
Past meeting notes 2023-09-20 Meeting notes :
- Funded Contribution Updates:
- Redis Bus - completed
- Aspects data pipelines & reports on break through next month
- New proposal(s) kicking off this week
- New events:
- The Aspects team has added or is in the process of adding some new events to enable v1 reporting:
- Tracking: Login / logout (merged 9/19)
- Tracking: Completions (in progress)
- xAPI: Forum events
- xAPI: Grading events
- xAPI: Exam events
- ClickHouse Sink: User profiles (optional)
Blockers or Calls/offers for help
- Beta is open: Aspects Beta
- Feel free to join up, we’ll set up access for you! Communications are in Slack: #aspects
- Quick demo / walkthrough of where we’re at, and discussions of next steps.
Meeting notes
1.4. DEPR Working Group
Chair: @feanil
Latest news
- Account and profile UI removal is still causing issues
- feat: Account and profile MFE legacy removal - redeployment by abdullahwaheed · Pull Request #31893 · openedx/edx-platform
- can we make documentation/a checklist on what we need for a conversion from server side rendered templates to an MFE?
- what things do we need to look for?
- create a supporting deprecation ticket around drafting a version of this checklist
- what can we do to ensure that the contagion doesn’t spread for things like this?
- has also happened with EdxRestApiClient
- move a local copy to the only remaining (known) place it’s used and THEN delete the version in the library
- Yagnesh is interested in taking this on
- we can make better use of DeprecationWarnings?
- Linting for deprecations
- Is this something that fits with AXIMprovements?
Meeting notes
1.5. DevEx Working Group
Chair: @Rebecca_S_Graber & @kmccormick
Latest news
- Communicating changes to code, to whom?
- Developers of the same repo
- PR reviewers
- API users (includes: Python, JS, HTTP)
- Distributors (maintainers of devstack, tutor, et al)
- Site operators and admins
- “Delivery-side end users”: Authors, instructors, support teams, researchers
- What we have now:
- DEPR tickets
- (Conventional) commit messages
- Mix of PR templates, often ignored
- Sometimes: changelogs
- Sometimes: package release notes
- Release planning pages → Named release notes
- Does devstack break?
- Provisioning tests run on every commit
- They do sometimes alert 2U to legit breaking changes
- OpsGenie alert
- Type of breakage: existing environments vs only new environments
- Existing environments are generally noticed faster
- Devstack breakage debugging
- Generally in an internal 2U channel
- Could it be made public?
- Tentative yes
- Possible problem: noise coming from the community into the channel
- Channel of push notifications of breaking changes
- And/or just actually use the exclamation points
- ^ those could be automatically pulled into slack
- [RĂ©gis] Nightly gives me headaches. How to resolve rebase conflicts? Is there any such thing as
pip install -e --option=nightly .
?- Some changes are specific to Nightly
- COMMON_OPENEDX_VERSION
- Most changes from Nightly need to be merged in to
- How do we avoid those Nightly-specific changes?
- use extras_require – eg
pip install -e .[nightly]
- 2U will be trialing putting an edX.org IDA in devspace
Meeting notes
1.6. DevOps Working Group
Chair: RĂ©gis Behmo
Latest news
- Shubham Nagpal says: Hi Team Please provide you assiatance on How can I overcome the challenge of implementing path-level security in Open edX with EKS, considering that a classic load balancer doesn’t offer this feature, i can block the ips throught ACL but not the path is there any work arround.
Meeting notes
1.7. Educators Working Group
Chair: @john_curricume
Latest news
- Next meeting: October 30
Past meeting notes 2023-09-18 Educator WG:
- Alexandria Hsun Yen from The PostDoc Academy gave a short presentation about a “personalized emails” experiment and its effect on student engagement and completion for a course of 1,200 students.
- Blender” Dashboard demonstration from Campus.il
Meeting notes
Blockers or Calls/offers for help
- Looking for any and all documentors!
1.8. Frontend Working Group
Chair: @arbrandes
Latest news
- Effectively communicating these Plugin POC decisions:
- Brian wants to make sure this meeting’s communications are expressly shared out.
- Decisions action added
- Adolfo: If and when we merge the plugin framework to learner dashboard, the components that would be made into a plugin should be made into plugins next-stop.
- From Jeremy Bowman: are the other plugin proposals possible in implementing in practice?
- Adolfo: not opposed to merging Braden’s PR for course-authoring (UISlots)
- Brian likes the idea of getting multiple proposals in different MFEs. It solves the communication issue by making it obvious that several proposals are being tested.
- Adolfo would like to make this merge of two proposals as a new POC.
- Adolfo: next step between orgs is to have a meeting when it makes sense to pick the better pieces of both Jason/Braden’s proposals, with plans to implement them in Learner Dashboard as soon as possible. (Immediately-involved persons are Kelly Buchanan, Brian Smith, Adolfo Brandes, Jason Wesson)
- The Tutor org might not like having to host an artifact somewhere else (like an MFE), and if we can have the default behavior of Braden’s proposal in there somewhere before the next release it’d be nice.
- Jeremy Bowman: we could cut branches for Quince and would potentially help make a decision before the next release.
- Adolfo’s small hope is making org-specific stuff extracted and back ported for Quince. If we can hide that stuff with flags, it’s okay for now but not okay for next release.
- Piral in Learner Dashboard??
- Adding Piral into this next discussion on Plugins POC
Meeting notes
1.9. Large Instances Working Group
Latest news
- Updates from each org on the call - 2U, eduNEXT, OpenCraft, Raccoon Gang
- Jhony Avella - want to do more load testing on our mini k8s installation. Hoping to get to it in the next month. We’re in the process of setting it up for a customer. (Felipe Montoya : Keep in mind, it’s still 3 servers, not 7, so “mini” is a bit misleading. But still smaller deployment than traditional k8s). We can still add new nodes using k3s if we need to.
- Moisés González - Re improvements to MFE hosting: we got a PR merged recently, but still exploring how can we make it easier to define the public path to a CDN endpoint. At the moment, each image has to have the CDN endpoint that pulls from the container and caches the assets. Exploring how to circumvent that. @Felipe Montoya We actually have a business requirement for that - we don’t want to have a separate image for each customer/CDN URL.
- Braden MacDonald - For what it’s worth, I’ve used a hacky solution for that: put a unique string into the variable, then run webpack, and build the MFE bundle. Then use a script in the container start up to basically do a find-and-replace to substitute the right variable at container startup. It’s hacky but I’ve used it in prod for some time and never saw any problems.
- Gábor Boros - We ran into a docker rate limit issue and after discussing it with Régis Behmo , he created a PR to moby (docker) and got the issue fixed upstream
. If anyone else is interested in using a registry mirror / pull through cache to work around docker rate limit issues, check it out. We (OpenCraft) encountered this problem when building all the images for PR sandboxes. e.g. building 40 sandboxes requires something like 400 image pulls.
- Felipe Montoya One thing that could be a blocker for us is the SSL termination layer. Sometimes we want to have that outside the cluster, in the ingress controller / load balancer itself, not inside the cluster on cert-manager. Moisés González Another thing is that we don’t yet have a lot of Palm-version deployments that can take advantage of things like shared elasticsearch.
- Maksim Sokolskiy We are tracking an issue with shared elasticsearch on Palm/Quince/master even now: feat: add OpenSearch #21 by cmltaWt0 · Pull Request #31 · openedx/openedx-k8s-harmony . No updates related to Harmony at Racoon Gang yet. Regarding ClickHouse Helm Chart project, it’s on hold.
- Open discussion/questions, if any.
- Discussion of py2neo issue Missing py2neo package causing build issues in ALL edx-platform releases
Meeting notes
1.10. Marketing Working Group
Chair: Eden Huthmacher
Latest news
- 2024 Community TOC Election
- Spread the word: 2024 Community TOC Election - Voting Starts Today! - Open edX
- Feel free to vote: 2024 Community TOC Election - Candidate Nominations
- Voting deadline is the 31st of October 2023!
- Next Open edX meetup on the 19th of October 2023 featuring RaccoonGang, DataArt and Edly by Arbisoft. All presentations are about leveraging Generative AI in Open edX in order to Enhance Learner Outcomes- register here: Leveraging Generative AI to Enhance Learner Outcomes
- Organizational Discussion MWG Meetings
- Proposal is to reduce the MWG Meetings to once a month, so that working group members can invest more time into productively working on the OKR Tasks in the respective mini-teams. The teams can connect asynchronously and synchronously as they need and only report briefly the status updates in the big MWG meetings.
- We will do a Live vote in Google Meet.
- OKR Review (starting at item OKR tasks 18-21 & 1+2): OKR´S MWG
Meeting notes
1.11. Maintainers
Chair: Edward Zarecor
Latest news
Past meeting notes 2023-09-07 Maintainers’ Meeting notes:
- Feanil:
- Aximimprovements is ramping up an that’s going well.
- Could probably take on a few more repos for maintainance. Candidates
- edx-notes-api
- repo-tools
- Feanil Patel to reach out to owning team.
- Adolfo
- Many MFEs are stuck an old FE platform version because of breaking changes.
- Translation bug fixes for Comms and Course Authoring MFEs in progress:
- Ed
- Will close out phase 2
- Will move phase 3 into in progress
- Reached out to Aribisoft about maintaining event-routing-backends, will pull into phase 3 if possible.
Blockers or Calls/offers for help
- Urgent need for FE plugability
- Examples of business specific code that was committed. This can’t be our normal course of dealings.
- Related problem, different spin
- Problem to solve: How to extend MFEs in business specific ways
- Ed is going to schedule a summit to propose a specific recommendation for solving this problem.
Meeting notes
1.12. Product Working Group
Chair: Jenna Makowski
Latest news
Past meeting notes 2023-10-03 Product Meeting notes:
- UX/UI Working Group
- Tagging feature: The people we wanted to contact to do usability testing did not respond and we were not able to do the testing.
- Mobile Working Group
- New Repositories: New iOS and Android repositories moved to Open edX github, with DEPR tickets queued up for documentation updates and shift to openedx-unsupported for previous app repos (iOS + Android).
- New Roadmap: New Github project roadmap for Mobile, with eventual Community Kanban boards specific to iOS / Android tasks + issues to be created next.
- Development Updates: Mobile API Updates effort in code review to support streamlined use of the new mobile apps. Quick Wins Feature gaps effort underway, should close ~30% of the gaps between previous edx apps and new openedx apps.
- Design Discovery Updates: Design progress on Offline Mode (Text + Problems), Learning site selection ready for scoping / next steps.
- Product Definition Updates: Draft requirements in progress for Streamlined Course Navigation & Sequences and Dates & Calendar Personalization .
- 2U / edX Mobile collaboration - Moving toward weekly coordination and sync meeting regarding mobile efforts to include edx mobile team efforts, including exploration of a shift to using new application code base. edX to Open edX App Data Migration Path
Meeting notes
1.13. Security Working Group
Chair: Feanil Patel
Latest news
Past meeting notes 2023-07-26 Security WG Meeting:
- 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
- What are the top possible improvements?
- 3rd-party security upgrades
- Django security linters
Meeting notes
1.14. TOC
Chair: Ed Zarecor
Latest news
- TOC Membership Changes: Virginia Fletcher replaces Julie Davis (2U), Samuel Paccoud (FUN) leaves
- Conference Plans: Announcement imminent, the conference will be held later than usual
- Mobile App Development: After the TOC approved to adopt the Raccoon Gang apps as the official mobile apps, progress has been made. There was a kick-off meetings with 2U and Raccoon Gang, as well as a comprehensive gap analysis.
- Maintenance Funding: Discussed better spreading maintenance funding burden, as most currently falls on 2U, prompting discussions about the distribution of workload within the community. Opportunities for non-profit organizations to take on certain maintenance tasks were discussed.
- Elected Representatives’ Term Extension: The TOC proposed and agreed to extend the representative term from one to two years to ensure representatives have sufficient time to be productive. Implementation starts with the current 2024 election.
- Election Nominations: The TOC reviewed and approved the candidates for the 2024 community elections.
- Front End Plugability Summit: A Front End Plugability Summit will be organized with the intent to resolve difficulties in adapting the front end to business-specific needs. Recommendations from the summit will be presented to the TOC.
- Pull Request Review Delays: Significant delays in pull request reviews are hampering certain projects. Proposals were made to improve this situation, including expanding the core contributor program and improving pull request monitoring.
- Forum Thread Discussions Summary: Various proposals were raised in the community forum, including expanding the maintainer program, involving edX/2U employees, improving pull request monitoring, and creating lighter roles for contributors.
- Core Issues: Overburdened repository maintainers, misalignment with organizational use cases, and lack of predictability for external contributors were identified as significant problems. Having multiple reviewers and defining core repositories were proposed as solutions.
- Stats: The core contributors’ capacity was summarized, with about 50 active contributors performing between 200 and 300 hours of work every two weeks.
- Root Cause Analysis: Ancient project biases, late proposal reviews, the shift from proprietary to open, and the continuous delivery of repositories were identified as root causes of the issues.
- Encouraging Participation in the Core Contributor Program: Issues were raised about the perceived value and benefits of becoming a core contributor, especially for those who already have merge access. Identifying platform parts that can be kept internally was suggested to accelerate velocity.
- Open Source Project Deployment and Contribution: Proposals for managing automatic deployments from pull requests were explored. A reference version from the community’s standpoint was suggested.
- Additional Measures: Getting 2U employees involved as core contributors and defining a review-sharing process were proposed as next steps. The significant improvement in managing pull request workflows was also recognized.
- Next Steps: The meeting agreed on creating a catalog of potential changes, pushing for earlier product reviews, improving the extension points and the platform’s plugability, identifying core repositories, encouraging community involvement and contribution, and exploring ways to clarify the open-source project’s social contract. The feasibility of delegated reviews and automatic deployment by 2U was to be discussed internally.
Meeting notes
1.15. Translation Working Group
Chair: Eden Huthmacher
Latest news
Past meeting notes 2023-09-20 Translation WG Meeting notes
- Translation Performance Overview: May need to mark Danish for removal due to low translation + review rates
- Quince Master branch cut date - October 9th: Next Release: Quince
- Review Work board in GH: Translations Working Group · GitHub
Meeting notes
2. Events
- LWMOOCs conference (October 11-13) is accepting Poster Submissions
Reach out to Mary Ellen Wiltrout on Slack or via the LwMOOCs website: IEEE LwMOOCS 2023
Would anyone like to highlight any past or upcoming events? Let us know in the comments!
3. Projects
Are there any new or ongoing projects you’d like to discuss? Get the conversation started in the comments below.
4. Next async update and meetup
- Tuesday Oct 31st - Join the meetup here!
- Friday Nov 10th - Async update
- Details and draft agenda on Confluence
Anything to add?
If there’s anything else you’d like to mention, please let us know in the comments below.