Skip to content

fix: expand Python version compatibility#351

Open
kiram15 wants to merge 4 commits intoopenedx:mainfrom
kiram15:kiram15/python-version
Open

fix: expand Python version compatibility#351
kiram15 wants to merge 4 commits intoopenedx:mainfrom
kiram15:kiram15/python-version

Conversation

@kiram15
Copy link
Copy Markdown
Contributor

@kiram15 kiram15 commented Apr 17, 2026

Description

This PR adds the flexibility to support Python 3.11 as well as 3.12 to unblock work to transition all enterprise code into well-defined plugin hooks.

Motivation:

Right now, the repo works well with both python 3.11 and 3.12 (link), but the constraint in the setup file deems that only versions past 3.12 are allowed.

This blocks all of the work that the Titans team (enterprise team at 2u) is doing to deploy new plugins, as they have not yet migrated to 3.12 in edx/edx-platform. This in turn is slowing down the work of removing the hard dependency of the platform code in the edx-enterprise repos.

There is no specific functionality that is being used from python 3.12, so this would unblock that initiative.

Supporting information

To speed this up, some maintainers were pinged via slack, but they are also asked as reviewers here.

The proposal here is to allow installers to use in 3.11 at their own risk. CI testing would remain using 3.12 only.

Testing instructions

It is possible to run the test suite using 3.11.

  python3.11 -m venv .venv311
  source .venv311/bin/activate                                                                                                                                                             
  pip install -e ".[dev]"   # or pip install -e . && pip install -r requirements/test.txt
  python -m pytest                                                                                                                                                                         
  Expected: all tests pass without syntax errors or import failures.

Deadline

Soon if possible to speed up the work of removing enterprise.

Checklists

Check off if complete or not applicable:

Merge Checklist:

  • All reviewers approved
  • CI build is green
  • Changelog entry added using scriv with short description of the change
  • Documentation updated (not only docstrings)

Post Merge:

  • Trigger the release workflow to create a new GitHub release.
  • Check new version is pushed to PyPI after tag-triggered build is finished.
  • Delete working branch (if not needed anymore)

@kiram15 kiram15 force-pushed the kiram15/python-version branch 2 times, most recently from 9934f69 to 4741229 Compare April 17, 2026 20:35
@kiram15 kiram15 changed the title fix: downgrading python required version fix: expand Python version compatibility Apr 18, 2026
@kiram15 kiram15 force-pushed the kiram15/python-version branch from fcf480b to eb7c661 Compare April 18, 2026 03:13
@kiram15 kiram15 force-pushed the kiram15/python-version branch from 67bf976 to 590c66e Compare April 18, 2026 03:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants