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

Replace pipenv with poetry #561

Merged
merged 1 commit into from
May 31, 2019
Merged

Replace pipenv with poetry #561

merged 1 commit into from
May 31, 2019

Conversation

ob-stripe
Copy link
Contributor

This PR gets rid of both setup.py and pipenv, and uses Poetry to both manage dependencies and build the library.

Unfortunately, at the moment it looks like Poetry suffers from the same issue as pipenv: when setting up the development environment, it tries to install the stripe library in editable mode, which doesn't work with recent versions of pip.

I'm still not sure that Poetry will work better for us than pipenv did. For now I think we should just wait a few more weeks to see if Poetry fixes this issue.

@brandur-stripe
Copy link
Contributor

Well, that was fast! I don't have a great feeling for which dependency manager would be best, but this seems plausible.

I'm still not sure that Poetry will work better for us than pipenv did. For now I think we should just wait a few more weeks to see if Poetry fixes this issue.

SG.

@ob-stripe
Copy link
Contributor Author

Just a note that pipenv is still broken and still hasn't released any new version since last year, but poetry fixed the issue. The build is now green on Travis without any changes to the PR.

I'm still not 100% sold on switching to Poetry, but at the very least the project seems more active.

@brandur-stripe
Copy link
Contributor

Looks good to me if you want to try it!

@ob-stripe
Copy link
Contributor Author

Okay, I've spent some time comparing the source distribution and wheel file built by poetry build in this branch vs. those produced by running python setup.py sdist bdist_wheel in the master branch, and the results are essentially the same. There are some differences to the resulting metadata files but nothing that seems significant.

We'll need to upgrade our internal tooling to update the version number inside pyproject.toml and run poetry build instead of python setup.py sdist bdist_wheel but that should be pretty straightforward.

Just in case you have final thoughts before I merge this: ptal @brandur-stripe

@ob-stripe ob-stripe changed the title [WIP] Replace pipenv with poetry Replace pipenv with poetry May 31, 2019
@brandur-stripe
Copy link
Contributor

Go for it OB.

@ob-stripe ob-stripe self-assigned this May 31, 2019
@ob-stripe
Copy link
Contributor Author

Alright, going to merge this and attempt a release.

@ob-stripe ob-stripe merged commit 4cf3900 into master May 31, 2019
@ob-stripe ob-stripe deleted the ob-poetry branch May 31, 2019 21:27
@ob-stripe
Copy link
Contributor Author

Released as 2.29.2 \o/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants