Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Python 3.12 #3510

Open
mathemancer opened this issue Mar 23, 2024 · 0 comments
Open

Support Python 3.12 #3510

mathemancer opened this issue Mar 23, 2024 · 0 comments
Labels
affects: technical debt Improves the state of the codebase needs: implementation specs We need clarity on HOW we'll implement it from a technical perspective needs: requirements The problem is clear and worth solving, but we're not yet sure of the best solution type: enhancement New feature or request type: maintenance Refactoring and technical debt payoff work: backend Related to Python, Django, and simple SQL work: installation
Milestone

Comments

@mathemancer
Copy link
Contributor

Problem

Mathesar works with Python 3.12, but there are some difficulties with the dependencies. Specifically, the versions of psycopg2-binary and pandas that we have specified haven't published wheels for Python 3.12, and so we have to build some things to install those packages on that version. psycopg2-binary is particularly bad, since building it requires a C header file that may or may not be installed on a user's system.

Proposed solution

We need to either

  • figure out versions of psycopg2-binary and pandas that work more smoothly with all python versions we support, or
  • use ranges in our version specification for those packages, or
  • remove those dependencies (this will happen anyway as part of the backend overhaul).

Additional context

The C header file needed by psycopg2-binary is libpq-fe.h. On Debian 12, that's provided by the libpq-dev package.

@mathemancer mathemancer added type: enhancement New feature or request needs: triage This issue has not yet been reviewed by a maintainer work: backend Related to Python, Django, and simple SQL needs: requirements The problem is clear and worth solving, but we're not yet sure of the best solution needs: implementation specs We need clarity on HOW we'll implement it from a technical perspective work: installation type: maintenance Refactoring and technical debt payoff affects: technical debt Improves the state of the codebase and removed needs: triage This issue has not yet been reviewed by a maintainer labels Mar 23, 2024
@kgodey kgodey added this to the Backlog milestone Mar 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affects: technical debt Improves the state of the codebase needs: implementation specs We need clarity on HOW we'll implement it from a technical perspective needs: requirements The problem is clear and worth solving, but we're not yet sure of the best solution type: enhancement New feature or request type: maintenance Refactoring and technical debt payoff work: backend Related to Python, Django, and simple SQL work: installation
Projects
None yet
Development

No branches or pull requests

2 participants