Skip to content

Consider moving to a PEP665 compliant build and packaging tool #93

Description

@devraj

Is your feature request related to a problem? Please describe.
We've been using poetry as our package management tool which works well for all our needs. Initially I had wondered what other major projects used for package management (moving from setuptools in the prestans days).

Looking under the hood of projects like fastapi I found they all use hatch.

@brettcannon started the issue Interested in supporting PEP 665? on the repository and it would seem that there are major design variations which would it difficult to make poetry compatible with pep665 (note that there's mention of the work being sponsored)

The python packaging site refers to hatch quite strongly.

Describe the solution you'd like
We should thoroughly read through the packaging guide to ensure we have the right structures and flows.

We should identify if poetry is still a suitable tool for the requirements, and if not what is and why?

We should then produce:

  • Detailed instructions of the newly chosen tool
  • Github actions for automating packaging
  • Updated Dockerfile for building the packages for development and production

Describe alternatives you've considered
NA

Additional context
See the Python packaging guide.

It might be easier for us to prototype this against a smaller projects like our gallagher client.

Activity

  1. self-assigned this
    on Feb 4, 2024
  2. brettcannon commented on Feb 5, 2024

    @brettcannon

    I believe Poetry is working towards support in Poetry 2.0.

    Depending on your needs, Hatch and PDM are probably the next most popular workflow tools.

  3. devraj commented on Feb 18, 2024

    @devraj
    MemberAuthor
  4. juftin commented on Apr 19, 2024

    @juftin

    I found this issue linked via hatch and figured I'd drop in with a shameless plug (hope you don't mind 😃) for my hatch plugin, hatch-pip-compile.

    It enables lockfile support for hatch via pip-compile or uv and has allowed hatch to be a complete one-stop-shop for all my Python project management needs. If you're considering hatch but uncertain about its lack of lockfile support hatch-pip-compile might just be what you're waiting for. Cheers!

  5. devraj commented on Apr 21, 2024

    @devraj
    MemberAuthor

    I found this issue linked via hatch and figured I'd drop in with a shameless plug (hope you don't mind 😃) for my hatch plugin, hatch-pip-compile.

    It enables lockfile support for hatch via pip-compile or uv and has allowed hatch to be a complete one-stop-shop for all my Python project management needs. If you're considering hatch but uncertain about its lack of lockfile support hatch-pip-compile might just be what you're waiting for. Cheers!

    Hey @juftin thanks for the shameless plug 😄

    I started doing an initial migration to hatch on another project to judge the viability and indeed what hatch-pip-compile made me shelve the idea for a while.

    Found your blog post and will study the tool and hopefully it tips us over to move to hatch.

    Thanks for taking the time to comment on this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions