-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
GNIP 73 - Use Poetry #5756
Comments
+1 from non PSC Member. Many thanks @frafra for modernizing GeoNodes project infrastructure |
+1 thanks @frafra ! |
+1 @frafra. This will further improve the reliability of our docker images which could be based then on deterministic artifacts. |
+1 |
@frafra please remember to update the wiki page also, thanks. |
+1 |
@frafra as the majority of PSC members voted I think this can be seen as accepted. Thanks! |
This is a good idea, but since @frafra seems to have left the community I would mark this as TBD. Definitly not 3.1 Milestone. Others? |
Sorry for the long pause :-) |
@frafra are you still working on this? |
@giohappy no, but I really hope to resume working on GeoNode in May. |
np @frafra just to know if this should be considered stale. |
I would say now this can be considered stale, @frafra maybe close and reopen if needed? |
Yes, I am sorry for that. I hope to get back on it later. |
No worries! |
GNIP 73 - Use Poetry
Overview
Initial support for
pyproject.toml
as been added recently. This proposal is meant to further extend its usage and rely on Poetry as build system.Proposed By
frafra | francesco.frassinelli (at) nina.no
Assigned to Release
This proposal is for GeoNode 3.1.
State
Motivation
Poetry has a clear distinction between requirements to be satisfied and version-locked dependencies, as well as standard vs dev requirements, built-in support for virtual envs, scripts, updates, etc. It also PEP 517 compliant.
Proposal
#5739 added initial support for
pyproject.toml
as a growing number of tools rely on it (such as black, see #5720) while maintaining compatibility with the existing build system, which relies onsetup.py
. This proposal is meant to use Poetry as build system (thus relying on pyproject.toml and poetry.lock files only) and remove setup.py and requirements files entirely.GeoNode
setup.py
file implements a custom mechanism to tag builds based on git revisions. Poetry 1.0 does not have a similar mechanism. Poetry 1.1 is going to support plugins, which should provide a mechanism for dynamic version tagging. poetry-publish can be used in the meanwhile while providing extra checks before publishing the package.Dependabot will not be affected, as
pyproject.toml
and Poetry are supported.Documentation, CI and publishing/release procedures should be updated.
Backwards Compatibility
poetry export
can export requirements files for pip and there are tools to generatesetup.py
too, (like https://pypi.org/project/poetry-setup/), but keeping file synced could be troublesome.Future evolution
N/A.
Feedback
Update this section with relevant feedbacks, if any.
Voting
Project Steering Committee:
Links
Remove unused links below.
The text was updated successfully, but these errors were encountered: