Skip to content

Conversation

@karbassi
Copy link
Member

No description provided.

karbassi added 10 commits July 24, 2025 14:03
- Analyze current Poetry configuration in pyproject.toml
- Document build performance metrics (17.4s total build time)
- Verify application functionality with Docker setup
- Confirm migration readiness (no conflicting package managers)
- Create comprehensive baseline analysis documentation

Baseline metrics:
- Poetry install: 6.4s
- Dependencies install: 9.4s
- Application startup: ~3s
- HTTP response: 200 OK

Ready for uv migration implementation.
- Replace Poetry with uv for dependency management in Dockerfile
- Install uv instead of Poetry and use `uv sync --frozen` for deps
- Remove Poetry-specific environment variables
- Add .python-version file for Python 3.11.9 specification
- Convert pyproject.toml to uv-compatible format with [project] section
- Generate uv.lock to replace poetry.lock
- Update .dockerignore to include .python-version
- Activate virtual environment in Docker with PATH update

Improves build performance with uv's faster dependency resolution
and installation (61 packages in 181ms vs Poetry's slower process).

Addresses requirements 1.1 and 4.1 for Heroku buildpack migration.
- Remove Poetry-specific configuration from pyproject.toml
- Keep standard PEP 621 project configuration for uv compatibility
- Generate new uv.lock file with all dependencies resolved
- Remove poetry.lock to ensure uv takes precedence
- Maintain Python 3.11.9 specification via .python-version file

This migration prepares the project for Heroku's native Python buildpack
which has better uv support than Poetry.
- Confirmed poetry.lock has been removed (replaced by uv.lock)
- Verified no requirements.txt files exist in project
- Confirmed no Pipfile or Pipfile.lock files present
- Ensures uv takes precedence as package manager for Heroku deployment

Refs: heroku-buildpack-migration task 4
- Successfully tested uv sync with 61 packages installing in 201ms
- Verified Django 5.2.4 application starts with Gunicorn in Docker
- Confirmed all database migrations and fixtures load correctly
- Validated key dependencies (psycopg 3.2.9, boto3 1.39.13) function properly
- Docker build time improved to ~8 seconds with excellent layer caching
- All Django management commands working with uv virtual environment

Resolves task 5 of heroku-buildpack-migration spec
- Remove moneymeets/python-poetry-buildpack from staging-wac
- Staging now uses native heroku/python buildpack with uv support
- Production buildpack removal pending staging validation

Refs: heroku-buildpack-migration task 6
@karbassi karbassi requested a review from Copilot July 24, 2025 21:30

This comment was marked as outdated.

karbassi and others added 2 commits July 24, 2025 16:33
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@karbassi karbassi temporarily deployed to website-update-buildpac-id7gzf July 24, 2025 21:37 Inactive
@karbassi karbassi requested a review from Copilot July 24, 2025 21:43

This comment was marked as outdated.

@karbassi karbassi temporarily deployed to website-update-buildpac-klm9ev July 24, 2025 21:44 Inactive
@karbassi karbassi requested a review from Copilot July 24, 2025 21:49

This comment was marked as outdated.

@karbassi karbassi temporarily deployed to website-update-buildpac-odxgte July 24, 2025 21:52 Inactive
@karbassi karbassi temporarily deployed to website-update-buildpac-odxgte July 24, 2025 21:52 Inactive
@karbassi karbassi temporarily deployed to website-update-buildpac-odxgte July 25, 2025 01:16 Inactive
- Reorganize .gitignore with logical sections and remove duplicates
- Streamline .dockerignore for better build performance
- Group pyproject.toml dependencies by purpose with clear comments
- Fix malformed Black and isort tool configurations
- Remove redundant patterns and improve maintainability

This improves development workflow and ensures consistent tooling across
the Django 5.2 + uv + Docker environment.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR migrates the project from Poetry to uv for Python dependency management, updating the build system configuration and documentation accordingly.

  • Migrates from Poetry to uv for Python package management
  • Updates pyproject.toml to use PEP 518 project metadata standard
  • Updates Docker configuration and build process for uv
  • Adds project documentation for technology stack, structure, and product overview

Reviewed Changes

Copilot reviewed 9 out of 12 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
pyproject.toml Converts from Poetry to PEP 518 project format with uv-compatible dependencies
app.json Removes Poetry-specific environment variables and buildpack configuration
README.md Updates Docker command example from Poetry to uv
Dockerfile Replaces Poetry installation and commands with uv equivalents
.python-version Adds Python version specification for uv
.kiro/steering/*.md Adds new documentation files for project overview and technical details
.dockerignore Includes .python-version file in Docker context

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@karbassi karbassi temporarily deployed to website-update-buildpac-odxgte July 25, 2025 01:25 Inactive
@karbassi karbassi merged commit b1d243c into main Jul 25, 2025
2 checks passed
@karbassi karbassi deleted the update-buildpack branch July 25, 2025 01:25
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