DEPR Meeting Notes (2018-Oct to 2020-Nov)

DEPR Meeting Notes (2018-Oct to 2020-Nov)

Kickoff Agenda (10/9/18) - turn it into own page so that we can take notes

  • Introduction to group

  • Discuss known areas for deprecation

  • Discuss strategies for tackling and managing debt

  • What do we want from this group?

    • How often do we want to meet?

    • What future topics would we like to discuss?

    • How do ensure that our decisions are actionable?

    • How do we track progress of the group?

Agenda (11/27) -

  • What do we want to tell engineering about DEPR process?

    • Use DEPR-6 as an example

    • Be aware of Ironwood cut date

    • Reference OEP a lot

      • Discuss different states

      • 'Deprecated' state is optional

      • Timelines can be as short as 2 weeks

    • Don't be afraid of the Open Source community using things

    • Encourage people to make DEPR tickets

    • Mention working group

      • Datadog work

      • Microsites

      • Maybe cookies

      • Invite people to come kill code with us

  • Removed After date - can we rename?

Agenda (12/11/2018) - 

  • Removal Date:

    • Can we give firmer dates or how do we indicate that we don't know when it will be removed?

    • RESOLVED: text has been updated to say 'removed after' instead of 'removed by'

  • How do we get rid of datadog in terms of execution?

    • Update DEPR-9 with info as we remove things

  • Can we get rid of Password History right now?

  • Try using this time to kill things, especially smaller things

Agenda (1/8/2019) -

  • How are we doing on our existing DEPR tickets?

    • Datadog

      • edx-platform PR 

      • Remaining Datadog repos

  • Let's go through the repos in the edx org and figure out which ones can be deleted

    • Existing OEP to cover this issue: https://github.com/edx/open-edx-proposals/blob/master/oeps/oep-0014-proc-archive-repos.rst

      • This seems like something to update

      • Is there Github functionality for this?

      • Can we just remove things and see how things break?

    • Useful for code search: remove edx-platform-old and delete master branch of edx-platform-private - @Michael Terry (Deactivated)

      • Check with DevOps and Security Working Group

    • Tabling this conversation for now until it becomes a bigger issue.

  • Hackathon Pre-planning

    • See if we can pick up stragglers who don't have projects

  • Assign DEPR ticket creation

  • Spreadsheet

Agenda (1/22/2019) -

  • LTI Module migration policy. How do we handle this?

    • We are going to abandon this for now, because there's a lot of people still using this, including edx.org

  • @Fred Smith (Deactivated) reminded me about deprecation and removal of code behind feature flags/toggles.  Even if we don't have a full-fledged reporting mechanism (as described in OEP-17), perhaps we can take a first cut at it or do something else.

    • Hackathon project planned for annotating feature flags and toggles

    • We can postpone this conversation until that project has happened.

  • Opaque Keys

    • Focus on removing the usages of from_deprecated_string and to_deprecated_string

    • We will create a DEPR ticket around this (see Action Items)

Agenda (2/5/19) -

  • Datadog Celebration

  • Datadog Miniretro

    • What went well?

      • It got done!

      • Good job of splitting up the work across people

      • Using this time to work on it

      • Solved issues searching across edx repos

      • We didn't have to implement a replacement

    • What could we do better next time?

      • During Hackathon, MITx said that they were still using it, but we weren't aware of this

        • They were willing to move away from the current implementation, but we just had no awareness that it was happening

      • Be aware that older code will run into linting and general code cleanliness issues as we remove it.

      • We don't have a good process for things that are temporarily unmaintained

        • Hibernating? On hiatus?

    • What pain points did we run into?

      • Older code not up to standards

      • searching across edx repos was tricky

  • Review Action Items

    • Exciting things!

      • WordCloud being converted into XBlock from XModule

      • OpenCraft converting capa and video into XBlocks

      • Switching off Greenkeeper to Renovate

  • Review DEPR tickets

Agenda (2/19/19) -

  • Ownership of DEPR tickets

    • Can we assign ownership to a group or team?

      • Can we add a field for it?

    • BOMB squad

    • This group will be responsible for triage and assigning / informing owners of tickets

  • Is there a middle ground for recording things that need to be deprecated?

    • Suggest that people create DEPR tickets

    • Create a ticket template - @Diana Huang

      • Can we include fields for Contagion / Effort / Impact?

      • Subtasks for DEPR tickets

      • Can make a business case for which ones should be pushed forward

  • Feedback on DEPR process from community

    • Peter Pinch likes the DEPR process

      • Can we add another channel for notifying the community about changes?

      • Move slash-n-burn channel to Open edX?

      • Notify community on removal as well as proposal.

  • What should we work on next?

    • External auth over the line

    • Microsites

    • Opaque Keys / Mobile APIs

Agenda (3/19/19) - 

  • Action items

  • DEPR triage

  • External Auth Celebrations!

    • At the Open edX conference

  • DEPR → INCR tickets

    • Opaque Keys seems like a good place for this

  • XBlock Deprecations: Deprecating and Disabling an XBlock for the edX website - Farhana is going to merge some wiki pages as part of the OfficeMix work

  • Island of Misfits

  • Pipeline to DEPR

    • Finding dead code in Prod

      • Can we run coverage.py on a machine in Prod?

      • Vulture - can do static code analysis of dead code

    • Awareness

      • Celebrating successes

        • Post upstairs.

      • Occasional reminders to feature teams

Agenda (4/2/2019) -

  • Action Items

    • @Diana Huang - Make DEPR tickets for:

      • EdxRestApiClient

      • FontAwesome webfonts in favor of SVG → INCR tickets

      • Learner Analytics Dashboard

    • @Diana Huang - Make INCR ticket for removing notes - no manual testing required

    • Team will ensure that

      • DEPR-17, DEPR-18, and DEPR-19 are communicated out to the community

      • Attempt to chunk up the microsites work

        • Remove from certificates

        • Remove from shoppingcart

        • bulk_enroll

        • commerce

        • django-comment-client

        • static-template-view

        • user-api

        • user_authn

      • Microsites for later 

        • theming

        • site_configuration

        • edxmako

  • Triage

  • Open edX discussion

    • Pinata talking point 

    • What else can we do to invite the community into the process?

      • deprecated swag for taking on or proposing DEPR/INCR tickets?

        • old pins, old t-shirts?

        • zombie Xsy stickers.

        • Slack badges? @Jeremy Bowman (Deactivated) looking into this

          • Can be reused for INCR ticket participation as well

      • challenge coins with zombie piñata on it

Agenda (4/16/19) -

  • Action Items

    • @Diana Huang still needs to make INCR tickets for notes

    • Still need subtasks on DEPR tickets

    • DEPR-17 needs to be communicated out (get ARCH to do it?) - keep on hold for now

    • Find a tool for searching and de-duping across edx org repos

    • Create DEPR for Parse.com dependencies @Feanil Patel (Deactivated)

    • Communicate out DEPR-21 & DEPR-23 - @Diana Huang

    • Communicate out DEPR-22 - @Michael Terry (Deactivated)

      • Discuss with Adam & ARCH FedX about removing old font-awesome bindings from cookiecutter and existing frontend apps.

  • Hack on things

    • Microsites

    • Fontawesome web fonts → turn into INCR tickets

      • Triaging into specific steps

Agenda (4/30/19) -

  • Action Items

    • Add subtasks to microsites story

      • @Diana Huang

    • Communicate out DEPR-22

      • Have we removed from cookiecutter?

        • We have filed a Github issue against the cookiecutter repo

    • Look into the migration between LTI module and LTI XBlock.

    • Capa Module → Capa XBlock close to merging (hooray!)

    • Update set of stickies in the Cafeteria

      • we have deprecated more things, list them!

  • Hack on Things

    • Microsites

    • Finish opaque keys. What else needs to be done?

      • Handled edx-microsite

Agenda (6/4/19) -

  • Wins!

  • Django 1.11 → Django 2.2

    • Django 1.11 ends support in April 2020

      • Focus on Python 3 for now?

    • Encourage teams to upgrade their IDAs

    • Not owned by this team

      • might be worth it to ask engineering management how this is going to be project managed and resourced.

      • @Feanil Patel (Deactivated) is running this for Python 3, including tooling to handle upgrades which engineering should be able to make use of for Django upgrade.

  • BOM Squad find deprecated APIs/API endpoints that are not being used

    • What can we do to support this?

    • Maybe add it to the agenda for next time

  • Tools team is finding all feature toggles.

    • We can remove code branches that are not used any longer.

    • We can review this as a team once the report is ready.

  • Deprecation of the Month?

    • Invite people to get involved in removing things when they have time that month.

    • Try Friday 3-5?

  • What else do we need to do for https://openedx.atlassian.net/browse/DEPR-16 ?

    • Merge opaque-keys branch to remove these methods

    • Make it a major version bump

    • Update other repos to use the new version

Agenda (6/11/19) -

  • Opaque Keys

    • Need to get other edx-platform dependencies updated

    • edx-ccx-keys needs to be updated as well due to dependencies

      • Maybe we can move this into OEP-18 and maybe add to the Jenkins job

      • Maybe we can move this into opaque-keys 

  • Microsites

    • Theming in progress

    • Nimisha cleared out a lot of djangoapps

  • Eng All Hands presentation

    • Is there anything missing?

  • Hack on things

Agenda (6/25/19) -

  • Wins

    • Brittney removed the old Enterprise API endpoints!

  • Removing portions of large deprecation efforts

    • Ex: shopping cart pdf generation

      • We want to get rid of shoppingcart

        • Can someone put together a proposal for getting rid of shoppingcart?

          • Have we moved donations?

          • We are still seeing activity on NR, what is that from?

          • What is our strategy that we would like to take for getting rid of this?

          • Maybe a hackathon project

    • What other things can we do this for?

      • Login/Registration?

        • Find whether or not this is blocked by anything else

        • What other things use the old pages as a dependency?

  • Hackathon

  • Microsites

    • Continue hacking



Agenda (8/6/2019) -

  • Hackathon Debrief

    • Notes work: https://openedx.atlassian.net/browse/DEPR-18

      • Reach out and let @Brian Mesick (Deactivated) know that we're going to be taking this on

      • @Nimisha Asthagiri (Deactivated) to take on this PR

    • Microsites work:

      • Issues with tests, continuing onwards.

    • shoppingcart ticket

      • @Nimisha Asthagiri (Deactivated) to talk to Arch squad about replacing Donations on the dashboard page

        • communicate with Revenue squad to understand the impact of donations

        • reach out to @Brian Mesick (Deactivated) about data about donations that go through shoppingcart

  • Wins

  • White Label being sunsetted in February 2020

    • Can we ask the Enterprise team to create a DEPR ticket?

    • @Michael Terry (Deactivated) to talk to the Enterprise team about this.

      • What alternatives are for the open source community?

  • Brainstorming: Reaching out to other parts of the org about DEPR help and support

    • Theme Demos

      • Make the business case for why deprecation is important

      • @Diana Huang to work with @Nimisha Asthagiri (Deactivated) on this

    • FEDx? Other working groups?

      • Removal of old code blocked in part by the microfrontends story and also white label

    • Quarterly pinata!

      • People who have removed things get to hit it first

      • Lunch on Eng-All-Hands day

      • Can we get a mascot?

    • Encourage people to make tickets as soon as they find things that are no longer used

      • Can we set up a slack integration for this? 

      • Ensure that we discuss new deprecation tickets during DEPR for triage and moving things along

    • INCR

      • Django 2 warnings

      • EdxRestApiClient