DEPR Meeting Notes (2022)

Agenda (1/4/22) -

  • Happy new year!

  • Build jenkins vs. tools jenkins

    • Can we move all public-facing jobs to Github?

      • Codejail CI is still running on build Jenkins

        • arbi-bom are looking into Codejail

      • arch-bom has tickets around figuring out what to do with the remaining jobs

      • We want to move all edX-specific things to a single jenkins.

  • Bok Choy DEPR discussion

    • https://openedx.atlassian.net/browse/DEPR-174

    • edx-e2e-tests use bok choy.

      • This is an edX-private repo

    • We have cypress e2e tests

      • @Diana Huang - Reach out to Incident Management about accelerating work so we can get rid of bok-choy.

  • Maple released!

    • Can move edx-certificates to edx-unsupported now that we’re not on Lilac anymore

    • Now that MFEs are supported in Maple, we can start looking into removing legacy frontend code

  • Moving DEPR to a Github project

    • What would this entail?

    • Github project can encompass multiple repos, but we would need to turn on Github issues for affected repos to make this effective.

  • Hopes and dreams (deprecation-wise)

    • The One Jenkins

    • Old Mongo

    • Ecommerce

    • Bandwidth to deprecate the stuff we said we’d get rid of

      • @Diana Huang movement on blended brief for DEPR bucket

    • Asgard/Minos

    • Configuration repo (please!)

    • Devstack → Tutor!

      • maybe even by Nutmeg!

  •  

Agenda (1/18/22) -

Agenda (2/1/22) -

  • Elasticsearch update

    • edX/2U will do discovery on the feasibility of getting rid of ES by Nutmeg

    • Hopefully will have an answer by Feb 22

  • OEP updates

    • https://github.com/openedx/open-edx-proposals/pull/280

    • Turning on issues seems fraught internal to edX/2U

    • Can we start with a dedicated depr project, then move to repo issues? Does Github support this?

      • We only want to allow DEPR tickets for now.

      • This is a test case for turning on issues more broadly for the openedx.

      • We can move issues between repos if we need to.

      • Ex of issue creation that we can make use of to ensure only DEPR issues get created: https://github.com/github/docs/issues/new/choose

    • @Diana Huang will continue working on migration of issues to depr.

  • [Jeremy] How can we enable this WG’s members to spend more time following through on deprecation work?

    • Teams are overallocated and understaffed on work, hard to carve out time.

    • We should talk about this during future meetings: what kind of work can we do in the next two weeks?

    • Could we engage more actively with the community?

      • Could we reschedule to be more Europe-friendly? Lots of competition for those timeslots

      • Show up to the community working group meetings and invite more people to this group or to engage with this group via Slack/Discourse

  • Question: MySQL 8?

    • Target is currently allowing Nutmeg with a setting.

    • Need to do cleanup work on old migrations.

    • Talk with OpenCraft about this work to keep up us from duplicating work.

  • Bok choy DEPR update

    • We are seeing good progress around this, and we might be able to move forward on this deprecation over the next two weeks

  • Engage squad is working on DEPR work

    • Removing legacy courseware views

    • Move test modulestore to use split modulestore

      • Talk to Kyle about this

    • Hide old mongo from Studio and Courseware

  • Jenkins deprecation

    • Last thing is the codejail tests

      • Hard to run on Github actions due to AppArmor, but we’re trying to solve this via self-hosted runners on VMs instead of Docker

    • Be prepared to put Build Jenkins behind the VPN and make it private, but wait until the codejail tests get migrated to Github actions

  • What can we do over this next week?

    • Make sure bok-choy DEPR ticket gets announced

      • Diana will poke Kyle about this

      • If this is ready, we can move this into unsupported

    • Kill off old ES clusters

    • What can we do help with the Mongo deprecation?

      • Braden has a PR for switching from Mongo active versions

      • Forums? Focus on killing the Ruby in favor of Python client

        • Check in with them about this. Where is it in their roadmap?

    • Dave and Mike will talk about old Mongo deprecation work

Agenda (2/15/22)

  • Transition from Jira to GitHub Issues

  • Persistent grades - should this be made the default and remove the option of doing otherwise?

    • Feels appropriate for a DEPR ticket, removing the ability to have non-persistent grades

    • @Dave Ormsbee (TCRIL) will write this up

  • codejail CI is just about moved from Jenkins to GitHub Actions, should be able to make that Jenkins server private soon

  • DEPR blended project brief has been written, will move forward once Jeremy has time to review and Diana has time to nudge it along (both should happen relatively soon)

  • @Feanil Patel will review other feature flags that are currently off by default but really should be on by default (completion, etc.)

  • Should internal and external DEPR channels be joined?

    • The internal one has been very low traffic since the WG became public, may make more sense to archive instead. We’ll give it a little time to see if it gets usefully used for 2U-private code deprecation.

  • A PR for https://openedx.atlassian.net/browse/DEPR-151 is in progress

  • Arbi-BOM is making headway on https://openedx.atlassian.net/browse/DEPR-150 , hoping for completion shortly

  • Not a DEPR ticket, but removal of legacy a11y testing cruft removed 21K lines of code in edx-platform: https://github.com/openedx/edx-platform/pull/29813

 

Agenda (3/1/22)

  •  

    • and

  •  

    •  

    • We don’t think this has been working on any Open edX release for the last 4 years.

    • Does this pass the ‘statute of limitations'?

    • Action item: Move to openedx-unsupported and see who complains.

  • What do do with edx-notifications?

    • No active development since 2020. Make a DEPR ticket?

      • Action item: @Diana Huang Make a DEPR ticket, go through the DEPR process.

  • Looking for advice on how to proceed with bok-choy, now that’s it’s deprecated. -Kyle

    • Add information on the ticket to indicate timelines and let tCRIL know when it’s ready to be moved to unsupported.

    • Action Items:

      • Keep tabs on progress moving edX e2e tests off of this so we’re ready.

  • Would folks be willing to move this wiki page tree (https://openedx.atlassian.net/wiki/spaces/COMM/pages/825983190) under https://openedx.atlassian.net/wiki/spaces/COMM/pages/46793351 ? -Kyle

    • Yes, I will move this to working groups.

  • https://github.com/openedx/devstack/issues/907 -Kyle

    • FYI for now.

    • Should we turn this into bunch of smaller tickets?

      • This doesn’t quite make sense, because people are going to switch in bulk.

    • What is the plan for Nutmeg?

      • Plan: support both Tutor and devstack in Nutmeg

      • Can we target a number of adoption by Nutmeg?

    • Announce now to start the conversation early.

    • Can we tie the DEPR and tech radar together through automation

  • Github Issues: How do we refer to them?

    • Just by their repo/issue number.

  • With all the MFE-ficiation happening, how can we use DEPR to better prepare the community for upcoming frontend changes and make sure that all necessary concerns are gathered?

    • Case study: DEPR-42 and the following custom payment processor debacle. This is still an open issue.

    • Upcoming: frontend-app-authn and frontend-app-discussions.

    • Can we surface decisions made and support dropped on DEPR tickets or somewhere are?

    • Nascent Product Process and working group that might be the long game

    • Make sure we pay attention to the release boundaries?

      • Ideal: experimental named release, default named release, removed named release

      • In the case of smaller features: default named release, removed named release

    • Can we include Discussion MFE in Nutmeg in an experimental version?

    • Bring this discussion to the BTR group.

    • We need to make sure teams in 2U/edX make DEPR tickets.

      • Add deltas in feature sets to the DEPR tickets.

  • Old Mongo deprecation continues - we turned off enrollments. And working on turning off marketing pages.

    • Unblock removing legacy tabs for migration to the learning MFE

    • Unit tests now use split mongo by default! A lot of tests have been migrated to use split.

  • Announced DEPR for start/due dates outside of Sections and Subsections. - Dave

    • Match what is available in Studio.

    • Can we write a management command/coursegraph query that will find any courses that do this?

      • @Dave Ormsbee (TCRIL) to write a course graph query for this.

  • Continuing to move things from Jira to Github

Agenda(Ides of March)

  • Should we do a blog post about moving to GitHub issues?

    • Where would this blog post go?

      • Open edX blog?

    • What would be the purpose?

      • An announcement to the community?

      • An exploration of the process?

      • A chance to recruit more people to help with DEPR work?

    • We should talk about this next meeting, hopefully with more people attending.

  • DEPR Blended updates

    • Raccoon Gang has bandwidth (and is in a safe place!), so we’re working with them to get some of our DEPR tickets over the line.

    • Blended brief was moved from 2U to tCRIL for this

    • Raccoon Gang discovered that we lost some links to old Google Drive documents. If you run across anything that is broken, feel free to reach out to Diana about finding a copy of it.

    • Diana will update Jira/Github issues with the new public links to the documents she has already found.

  • Old Mongo updates

    • Tests on edx-platform have been converted to use Split Mongo.

    • Recruitment

      • https://discuss.openedx.org/t/adr-for-removing-mongodb-from-edx-platform/6001/9

      • How do we support this? Can we help make this easier/less intimidating? Can we help do the work?

        • For this work, one of the avenues is going through and removing usage of Old Mongo in tests (this is fairly simple).

        • How can we get work that needs to get done in front of other eyes? Larger discussion about interaction with the community.

    • There are still three big things that need to happen to get things out of edx-platform.

      • These are parallelizable.

      • They all require migrations.

      • Can we do this as a blended project?

        • Check 2U budget on this and TNL bandwidth.

        • Forums is also a sticking point. There’s a forums project going on at 2U that will need to be accounted for.

  • MySQL 8 and Nutmeg

    • BTR wants confirmation that MySQL will work for Nutmeg.

      • http://edx.org will probably not be migrated in time, but the community should be safe to move to it.

  • Rescheduling meeting

    • We will try rescheduling this to 11am EST for now and see if that helps at all.

Agenda (March 29, 2022)

  • Blog post about moving to Github issues?

    • What is the focus? Which blog?

    • We could also make it a discuss post - in announcements

    • More of an inform rather a discussion about the complications around the move

    • Jira to Github move might have some interesting topics

      • Lack of integration with Slack - updates don’t immediately show up in the Slack channel like they did with Jira

      • Subtasks are pretty good in Github issues

  • DEPR blended project updates

    • RG has begun working through the EdxRestApiClient DEPR and will continue to go through it until it is completed or we run out of hours for them.

      • [DEPR]: EdxRestApiClient #37

      • [DEPR]: Remove legacy course info page & related code

      • [DEPR]: Remove Enterprise Catalog API V1 from edx-enterprise

      • [DEPR]: Retire LegacyWaffle classes #28

      • [DEPR]: Remove VerifiedTrackCohort #63

      • [DEPR]: Cleanup: Remove last vestiges of save option from anonymous_id_for_user #35

      • [DEPR]: Replace PDF course certificate view code in edx-platform #27

      • [DEPR]: Remove edx-jsme, Molecular Structure Problem type #14

      • [DEPR]: Account pages -> micro-frontend #71

      • [DEPR]: ecommerce Basket Page -> micro-frontend #68

    • Discovered usages of bok choy that we didn’t previously know about in ecommerce and credentials.

  • Old Mongo updates

    • @Dave Ormsbee (TCRIL) and @Michael Terry (Deactivated) do you want to give async updates on this work?

      • @Michael Terry (Deactivated) says: I’m planning on removing acces to Old Mongo next Monday (April 4th)

    • Removing access to old mongo courses - approved a while ago and unclear when it will land

      • Once this lands, we can start removing pieces of old mongo

    • Write out subtasks, game plan for removal after this.

    • Can maybe include this work in our blended project with Raccoon Gang

  • site_configuration https://github.com/openedx/platform-roadmap/issues/21

    • Github issue about deprecating it in public engineering (roadmap?)

      • Concerns brought up during a contributor’s meeting

    • Previously discussed with Sarina

    • Maybe we should put it through the proper DEPR process so we can formally abandon it if there’s enough pushback

    • There’s a separate possible option eox_tenant for multitenancy as a replacement - should get feedback from the rest of the community

    • Action item: move/create depr ticket and announce with a longer acceptance period to see if eox_tenant is a good replacement - follow up to see if we have a point person on this discussion, then let them take care of announcement.

  • @Michael Terry (Deactivated) async update: I have PRs to remove legacy outline & dates tabs, but since we’re so close to the Nutmeg cutoff, I’ll just wait until after then (April 11th) to land them, to let Open edX have another release with the legacy views still supported.

 

April 12, 2022

  • [Feanil] Comms improvement as things are going away(From core-contributors meetup)

    • Can we have more details in the deprecation section of the Release notes?

    • What are other things we can do to make the DEPR board easier to consume as a summary of work.

    • Take a look at what landed between releases

      • do lookups/create filter for the DEPR board for each release - what got removed between these two dates

      • create label ‘needs release notes’ for DEPR tickets

        • badger people until they’re added to the release notes

      • archive things at the Open edX release boundary

      • add agenda item for WG

      • @Feanil Patel talk to BTR about contacting DEPR after a new release has been cut in order to trigger our own process

      • @Diana Huang take ideas and turn into a checklist for next release

  • Working Group Meetup at Open edX Conference

    • Feanil will be our representative

  • Blended project update

    • Making progress through EdxRestApiClient

    • Starting on other tickets

  • Old Mongo progress

    • remove legacy outline and dates tabs

    • preview mode in studio still relies on the courseware endpoints and template rendering

    • TNL has a ticket for handling this case

  • site_configuration DEPR ticket still needs to be created

Agenda (4/26/22)

  • Flags that should maybe be enabled by default/flag should be removed.

    • [Request] Review the flags as a group and figure out which ones to DEPR

      • Process: Do we want a depr ticket for each of these? Should we batch them together?

        • Change defaults for the ones we believe should be a different default

        • Add something to the next release notes about the flip

      • Next steps:

        • 1 DEPR for Studio login flow

        • 1 DEPR for removing the ones that we want to remove

          • Removal will happen after Olive is cut.

        • Announcement in Discourse about turning these flags true

        • Also add to release notes for Olive that we are changing these defaults

Name

Current Value

Notes

Next Steps

Name

Current Value

Notes

Next Steps

DEFAULT_MOBILE_AVAILABLE

False

Go with mobile ready by default?

Flip to True by default

 

DISABLE_DEPRECATED_SIGNIN_URL

False

This is the CMS sign-in endpoint, which should be deprecated if we're defaulting to lms login.

Make a DEPR ticket for this and the next one around removing the CMS login page entirely in favor of the Oauth flow.

DISABLE_DEPRECATED_SIGNUP_URL

False

The related CMS sign-up URL which should also be dropped with the lms login.

 

ENABLE_COPPA_COMPLIANCE

False

Should we enable this by default?

Default to true

FEATURES['ENABLE_OAUTH2_PROVIDER']​

False

Apparently needed to enable the mobile REST Api

Default to true

Possibly should just be removed as a toggle.

FEATURES['ENABLE_UNICODE_USERNAME']

False

Should probably be enabled by default

Could break apps or other things that can’t handle unicode

FEATURES['MILESTONES_APP']​

False

 Seems like it should be enabled by default

Default to true

Should be removed

Ensure that we also have defaults for any other configuration needed

  • edx-microsite and remaining microsite cleanup

    • move into edx-unsupported

  • Enterprise Catalog v1 deprecation

  • legacy frontend deprecation timeline

    • proposal: toggle them off by default in Olive, remove code for the release after

      • Create PRs right now, but wait until after Olive is cut to merge

    • These are the templates/code that live in edx-platform and ecommerce

    • Re-announce the appropriate deprecation tickets to ensure everyone sees them

      • make forum threads in Discourse to discuss the timeline for these removals

 

Agenda (May 10, 2022)

  • Review steps for deprecating toggles and switching defaults

    • actually do the work for creating tickets and swapping these toggles

      • 1 DEPR for Studio login flow overall

        • this is technically two toggles

        • @Feanil Patel

      • 2 DEPR tickets for removing the ones that we want to remove

        • OAuth2 Provider & Milestones App

        • Removal will happen after Olive is cut.

        • @Feanil Patel

      • Announcement in Discourse about turning these flags true

        • @Diana Huang

      • Also add to release notes for Olive that we are changing these defaults

        • Can we ensure that this gets picked up by the diff in documentation?

        • @Diana Huang

      • Change the defaults

        • @Diana Huang

  • Working group support for DEPR blended project

    • Enterprise catalog version 1?

      • @Diana Huang

    • JSME removal from edx-platform

      • @Peter Pinch

      • @Dave Ormsbee (TCRIL)

    • course info pages

      • @Feanil Patel

  • Old Mongo progress

    • Find epic of this work

    • @Dave Ormsbee (TCRIL) to map out next steps of this work

  • Review DEPR board

    • VerifiedTrackCohort

      • needs a PR review @Diana Huang or @Feanil Patel to take it eventually

 

Agenda (May 24, 2022)

  • COPPA compliance toggle discussion

    • Turns off year of birth from being exposed in the UI to learners

    • Could use an improvement in the toggle documentation

  • Milestone app can be turned on safely without other configuration updates

  • Auth-related DEPR work

    • Note: Tickets have “unfinished” label.

    • https://openedx.atlassian.net/browse/ARCHBOM-779

      • This seems to be mostly table/DB cleanup. Which can be tricky and complicated.

      • Maybe a good testcase for simple work that the community can tackle

    • https://openedx.atlassian.net/browse/ARCHBOM-1161

      • Needs to be broken up into subtasks.

      • Maybe this needs a DEPR ticket to ensure community knows that these JWTs are going away?

      • There will need to be a migration path for using asymmetric JWTs, since all of our services used to use symmetric JWTs.

      • This has a high likelihood of breaking edx.org if not handled carefully.

      • Ecommerce is also an exception to this, but we would like to contain it to ecommerce.

  • Blended/FC project updates

    • LegacyWaffleClasses removal

    • edx-jsme PR still waiting for review

    • EnrollmentTrackUserPartition - is it being used currently? what other features are relying on it?

      • We believe the previous removal, VerifiedTrackCohort, might need this removal to continue.

      • If we do this, we need a good migration plan at the very least. Start discussion in Slack asynchronously.

    • Adding new toggles to turn off old UIs

  • Decommissioning the old build Jenkins that used to be running the edx-platform tests

    • Still a few jobs still running on it

    • Most of them have been converted to Github actions

    • edx-e2e-tests are being moved onto Cypress. A team at 2U is actively working on these.

    • Some mobile build jobs.

  • Diana to update invites with meeting notes links

  • MFEs

    • keep the community synced with what new MFEs are being created

    • ensure that a DEPR ticket for the old frontend is also created

    • how do we create a process around ensuring that this happens?

    • ARCH-BOM can add a note to our runbooks around creating DEPR tickets when new MFEs are created.

    • Ask squad considering a new proctoring IDA to create DEPR tickets

    • New FED maintenance group at 2U for helping to remove old code and maintain frontend

    • https://openedx.atlassian.net/wiki/spaces/FEDX/pages/1920270629 is a page where things are tracked. Make sure it is kept up to date.

    • Async in Slack: inventory of current MFEs and current MFE-related DEPR tickets to make sure we have DEPR tickets for MFEs that currently exist

  • Prepare for us to review temporary toggles next meeting. Ensuring any private toggle information is removed.

  • Wiki and Pages are they deprecated?

    • We are stuck in the state where they are neither maintained nor deprecated

    • Bug in Nutmeg

    • Create a DEPR ticket for Wiki removal to see what the concerns around it are.

      • @Diana Huang to create the ticket for this work

Agenda (next time)