Skip to content

Conversation

sinclert-canonical
Copy link
Contributor

@sinclert-canonical sinclert-canonical commented May 9, 2025

This PR changes the tool used for dependency management from poetry to uv, following this PG-Bouncer example. Some of the main changes are:

  • Migrated from poetry-specific pyproject.toml syntax to standard Python project one.
  • Migrated from poetry-specific carrot specifier (^) to standard compatible release specifier (~=).
  • Renamed dependency groups main to charm and charm-libs to just libs (revertible upon request).

Differences from PG-Bouncer PR:

  • The uv binary is installed via pip, instead of via snap (both @paulomach and myself prefer that way).
  • The tox_uv.toml file to cherry pick when dependencies are installed from pre-built packages has been ignored. Instead, all tox environments use pre-built packages, only installing from source when the charm gets packed.

Additional changes

  • Bumped ruff target python version to 3.10 + updated Python files format.

@sinclert-canonical sinclert-canonical added the enhancement New feature, UI change, or workload upgrade label May 9, 2025
Copy link
Contributor

@carlcsaposs-canonical carlcsaposs-canonical left a comment

Choose a reason for hiding this comment

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

This will cause Dependabot vulnerability alerts to stop working, which Renovate uses to segment security updates from normal PRs (and to open security update PRs immediately, instead of waiting for the weekly schedule)

@sinclert-canonical
Copy link
Contributor Author

Depends on canonical/data-platform#38.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature, UI change, or workload upgrade Libraries: Out of sync
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants