-
-
Notifications
You must be signed in to change notification settings - Fork 389
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
Infrastructure: replace poetry #2219
Comments
I think we should start with the foundation that @JacobCoffee has here |
Does PDM necessitate using PDM to contribute in the same way that Poetry does (did?), or is it possible to just |
I know that you can do |
Afaik there's no standard for these "dev dependencies" (yet), so pip won't be able to install them. |
There is a standard for it, but you are correct that Poetry doesn't (or at least didn't) use it. I'm hoping that whatever is selected doesn't have the same sort of non-standard limitations :) |
Here is an example of it in use: https://github.com/pythonarcade/arcade/blob/development/pyproject.toml#L39 |
This is true for optional package dependencies, but PDM manages them outside of the scope of the standard as well, similar to poetry https://pdm.fming.dev/latest/usage/dependency/#add-development-only-dependencies [tool.pdm.dev-dependencies]
lint = [
"flake8",
"black"
]
test = ["pytest", "pytest-cov"]
doc = ["mkdocs"] |
@JacobCoffee it seems like it actually is possible with PDM: https://pdm.fming.dev/latest/usage/dependency/#add-dependencies:~:text=optional%20groups%20in-,optional%2Ddependencies,-%2C%20even%20before%20the |
What is the main reason to move away from poetry? This issue does not say. |
I believe performance issues (dependency resolution time) and bugs with developmental dependency installs were two of the key reasons. More discussion here: https://discord.com/channels/919193495116337154/1153039838342283275 |
Summary
Following multiple discussions and given some repeated issues with poetry we decided to switch from poetry to using PDM + Hatchling
The tasks are as follow:
Basic Example
No response
Drawbacks and Impact
No response
Unresolved questions
No response
Funding
The text was updated successfully, but these errors were encountered: