Bug 1668387 - Review Request: poetry - Python dependency management and packaging made easy
Summary: Review Request: poetry - Python dependency management and packaging made easy
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Neal Gompa
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1666293 1666294 1666306 1666311
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-01-22 16:09 UTC by Fabio Valentini
Modified: 2019-05-12 14:18 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-05-12 14:18:21 UTC
Type: ---
Embargoed:
ngompa13: fedora-review?


Attachments (Terms of Use)

Description Fabio Valentini 2019-01-22 16:09:01 UTC
Spec URL: https://decathorpe.fedorapeople.org/packages/poetry.spec
SRPM URL: https://decathorpe.fedorapeople.org/packages/poetry-0.12.11-1.fc29.src.rpm

Description:
Poetry helps you declare, manage and install dependencies of Python
projects, ensuring you have the right stack everywhere.

Fedora Account System Username: decathorpe

koji scratch build for rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=32193963


Note: This package does probably still require some additional work before it can be accepted.

- It includes a self-update function that probably has to be patched out for the fedora package.

- poetry seems to produce "setup.py" files that are possibly broken (because they use distutils.core::setup instead of setuptools::setup, but the former doesn't support all the same expected keyword arguments, for example for extra or optional dependencies).

This package also depends on my pending reviews for the pylev, pastel, clikit, and cleo python packages.

Comment 1 Neal Gompa 2019-01-25 15:40:46 UTC
Taking this review.

Comment 2 Raphael Groner 2019-01-25 19:17:39 UTC
What's the benefit towards PyPI and setuptools?

Comment 3 Fabio Valentini 2019-01-25 19:43:16 UTC
(In reply to Raphael Groner from comment #2)
> What's the benefit towards PyPI and setuptools?

poetry manages the python package metadata in a machine-readable format (TOML), and allows exporting to the usual "setup.py", i.e. for uploading to PyPI.
So it can be used as a "convenience wrapper" around the standard tools. (Neal, please correct me if I'm wrong here.)

Comment 4 Neal Gompa 2019-01-25 19:49:38 UTC
(In reply to Fabio Valentini from comment #3)
> (In reply to Raphael Groner from comment #2)
> > What's the benefit towards PyPI and setuptools?
> 
> poetry manages the python package metadata in a machine-readable format
> (TOML), and allows exporting to the usual "setup.py", i.e. for uploading to
> PyPI.
> So it can be used as a "convenience wrapper" around the standard tools.
> (Neal, please correct me if I'm wrong here.)

That's basically correct. It replaces conventional setup.py, requirements.txt, Pipfile, Pipfile.lock, etc. with a PEP 518 compliant configuration in pyproject.toml and a simple poetry.lock file for projects that want dependency locking. It supports both virtualenv-oriented stuff (a la pipenv) and normal stuff (a la pip and friends) while also providing backwards compatibility to those tools when you elect to upload your project managed by poetry to PyPI.

Comment 5 Raphael Groner 2019-01-25 20:15:35 UTC
(In reply to Neal Gompa from comment #4)
> (In reply to Fabio Valentini from comment #3)
…

Great, thanks for your explanations.

Comment 6 Orion Poplawski 2019-04-02 02:05:38 UTC
Neal - any progress here?

Comment 7 Neal Gompa 2019-04-02 05:01:53 UTC
(In reply to Orion Poplawski from comment #6)
> Neal - any progress here?

I'm waiting to resolve bug 1666293. Once that's done, I can process the rest of it.

Comment 8 Fabio Valentini 2019-04-27 10:11:53 UTC
Just FYI, poetry claims to be incompatible with requests-toolbelt >= 0.9.0, and on f30, 0.9.1 is available.
I'm not sure if we should continue working on this. The upstream developer acts like he's hostile (or completely indifferent) regarding distribution packaging.

Comment 9 Fabio Valentini 2019-05-12 14:18:21 UTC
I officially give up, as the upstream developer has not reacted at all to any of of the relevant, open bug reports blocking this package for months.

https://github.com/sdispater/poetry/issues/866
https://github.com/sdispater/cachy/issues/2
https://github.com/sdispater/pastel/issues/5
https://github.com/toastdriven/pylev/issues/11


Note You need to log in before you can comment on or make changes to this bug.