Skip to content

#10 Conversion to UV build system, Python 3.13, Mise, Devcont#11

Open
ryancraigdavis wants to merge 1 commit into
mainfrom
feature/10-uv-devcontainer-and-mise
Open

#10 Conversion to UV build system, Python 3.13, Mise, Devcont#11
ryancraigdavis wants to merge 1 commit into
mainfrom
feature/10-uv-devcontainer-and-mise

Conversation

@ryancraigdavis

Copy link
Copy Markdown

This pull request modernizes the project's Python packaging, dependency management, and development workflow by migrating to a PEP 517/518-compliant structure using uv, and reorganizes the source code into a proper package. It also updates CI/CD, Docker, and deployment scripts to match the new structure. The most important changes are:

Packaging and Dependency Management:

  • Introduced a pyproject.toml with project metadata, dependencies, dev dependencies, and build configuration for uv's build backend, replacing requirements.txt and requirements-dev.txt. Python 3.13 is now required. [1] [2] [3]
  • Switched dependency management in CI and deployment to use uv exclusively, removing pip and virtualenv usage. Dependabot is configured to track uv dependencies. [1] [2] [3]

Source Code Reorganization:

  • Moved all application code into a src/quantumsolver/ package, updating imports accordingly and removing the old app/ and top-level module files. [1] [2] [3] [4] [5] [6] [7] [8]
  • Updated references throughout the codebase and deployment scripts to use the new package/module paths (e.g., quantumsolver.app:app for Gunicorn). [1] [2]

Docker and Deployment:

  • Updated the Dockerfile to use uv's official Python 3.13 image, build a wheel, and install it system-wide, following best practices for modern Python packaging.
  • Adjusted deployment scripts to use uv sync for dependency management and clarified how runtime directories are provisioned. [1] [2]

Documentation and Developer Experience:

  • Revised README.md to document the new workflow with uv, clarify development and production server usage, and update instructions for running, testing, and linting the project.
  • Added a .dockerignore to exclude development and build artifacts from Docker builds.

These changes bring the project up to date with modern Python packaging standards, simplify development and deployment, and make the codebase easier to maintain.Docker conversion to building a wheel for testing and deployment Python 3.13 and UV for dependency management and wheel building DevContainer created for local development and future workflow deploy Mise for future proofing in the Devcontainer

Docker conversion to building a wheel for testing and deployment
Python 3.13 and UV for dependency management and wheel building
DevContainer created for local development and future workflow deploy
Mise for future proofing in the Devcontainer
@ryancraigdavis ryancraigdavis requested review from a team and wrigjl July 7, 2026 03:51
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

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.

UV dependency management with devcontainer and Mise for development

2 participants