Skip to content
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

[GSProcessing] Remove poetry as a requirement for building images. #1076

Merged
merged 2 commits into from
Jan 22, 2025

Conversation

thvasilo
Copy link
Contributor

Issue #, if available:

Description of changes:

  • Previously, build the gsprocessing images required Python 3.9 and poetry to be installed, leading to user friction.
  • With this commit we instead include requirements on a per-version basis, and no longer build wheels using poetry but install from source for both prod and test image targets.
  • We maintain backwards compatibility if the exported requirements file is not available for a particular version.
  • Also move EMRS image to 7.3.0

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@thvasilo thvasilo added gsprocessing For issues and PRs related the the GSProcessing library dependencies Pull requests that update a dependency file 0.4 labels Oct 28, 2024
@thvasilo thvasilo self-assigned this Oct 28, 2024
@thvasilo thvasilo marked this pull request as draft October 28, 2024 20:25
@thvasilo thvasilo marked this pull request as ready for review December 8, 2024 23:21
@thvasilo thvasilo requested a review from jalencato December 8, 2024 23:21
Copy link
Collaborator

@jalencato jalencato left a comment

Choose a reason for hiding this comment

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

I feel confused about what we want to do with the PR here. If we remove the poetry dependencies, it seems like we make everything more complicated. Any reason we want to do that here?

@thvasilo
Copy link
Contributor Author

thvasilo commented Dec 9, 2024

I feel confused about what we want to do with the PR here. If we remove the poetry dependencies, it seems like we make everything more complicated. Any reason we want to do that here?

The user story is this:

As a user trying to build and push Docker images for GSProcessing, I would like to not have to modify my Python environment to do so.

Currently, building the GSProcessing image requires Python 3.9 and having poetry installed in the user environment. I've seen many instances of users struggling to install Python 3.9 and setting up the dev environment correctly with pyenv/conda/mise.

This PR removes the requirement of having Python 3.9 and poetry installed, users can build the image regardless of the version of Python they have, and don't have to worry about `poetry

@classicsong classicsong added 0.4.1 and removed 0.4 labels Jan 15, 2025
Copy link
Collaborator

@jalencato jalencato left a comment

Choose a reason for hiding this comment

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

LGTM. Just need to make sure the requirement.txt is latest

@thvasilo thvasilo force-pushed the gsp-remove-poetry-build branch from 310c0e3 to fd2b473 Compare January 22, 2025 22:49
@thvasilo thvasilo merged commit c375e24 into awslabs:main Jan 22, 2025
3 checks passed
thvasilo added a commit to thvasilo/graphstorm that referenced this pull request Jan 22, 2025
…wslabs#1076)

*Issue #, if available:*

*Description of changes:*

* Previously, build the gsprocessing images required Python 3.9 and
poetry to be installed, leading to user friction.
* With this commit we instead include requirements on a per-version
basis, and no longer build wheels using poetry but install from source
for both `prod` and `test` image targets.
* We maintain backwards compatibility if the exported requirements file
is not available for a particular version.
* Also move EMRS image to 7.3.0

By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.4.1 dependencies Pull requests that update a dependency file gsprocessing For issues and PRs related the the GSProcessing library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants