-
Notifications
You must be signed in to change notification settings - Fork 23
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
Remove setuptools.. #4
Comments
My hunch is that you may have conflicts because you have two use cases:
I do not think that the two can ever be resolved sanely:
This --using packaging tools not only for packaging, but also as libraries for package introspection-- is a very special use case (and for instance there is no API in pip as far as I know). IMHO the only sane way is to vendor and bundle the tools to be used at runtime and use a standard setup.py for installation. A few examples:
|
Yep. Vendoring is horrible, but probably the only sane way to go for now. I have never done that, PRs welcome! |
@jayfk tell me which exact package(s) version you depend on for dparse to work |
It's Setuptools comes with it's own vendored things, take a look at: https://github.com/pypa/setuptools/tree/e4ba41ec7f54370a030fb09f9f0a334396f38489/pkg_resources/_vendor |
|
Are you talking about the |
@jayvdb you wrote:
do you care to elaborate a bit? |
Please use https://pypi.python.org/pypi/packaging / https://github.com/pypa/packaging
|
Sadly, the standalone |
@jayvdb I reckon that it may not be wise, but if this can work for now that may be good enough until some future refactoring of the dparse internals. The case here is to provide at least for now some minimally invasive way for dparse to continue working as it is now (in its capacity of analyzing deps and package data) without having a hard declared dep on a specific version of setuptools.... and therefore have a setup.py for dparse that ends being some standard, non-specific setup. |
Now there is a possibly issue with a vendoring of |
I verified that setuptools 26.1.1 vendors packaging 16.7 https://github.com/pypa/setuptools/tree/v26.1.1/pkg_resources/_vendor/packaging and https://github.com/pypa/packaging/tree/16.7 @jayfk ATM the parser uses pkg_resources here Line 21 in a6b3be7
... e.g. https://github.com/pypa/setuptools/blob/v26.1.1/pkg_resources/__init__.py#L2810 and the Requirement |
I was hoping this mess of multiple incompatible parsers was over, but maybe it isnt. https://gsnedders.github.io/python-marker-test/results.html was the last audit done of a specific feature (see https://github.com/gsnedders/python-marker-test/ ), done as part of pypa/packaging#72 . If there are other incompatibilities (or regressions), they should be raised in |
Let's try it out: https://travis-ci.org/pyupio/dparse/builds/254792139?utm_source=github_status&utm_medium=notification Commit is at 63b939c |
FWIW I checked the |
Okay, this is looking good. |
.. and move to https://github.com/pypa/packaging
.. or pip's parser
The text was updated successfully, but these errors were encountered: