-
Notifications
You must be signed in to change notification settings - Fork 37
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
setupy: mixed up test and setup runtime deps #73
Conversation
so you fixed it and broke 5 min later in 71fbfa9. |
FYI, Using setup_requires is discouraged in favor of PEP-518 install_requires should be probably used instead. |
I put it in the setup_requires section because what I saw was the install barfing because the test command wasn't working. The setup.py needs to actually run regardless of whether the tests themselves are executed. I'm not going to pull a patch. I'm sorry, I know that all the cool kids hate github pull requests but they're what I know and they're what my current tooling works with. If you want this changed, send a pull request, include documentation of why you moved each thing, and a command I can run to prove to myself that it is OK. Happy to have someone else use 518, but I'm unlikely to do that work myself unless and until it breaks. |
Your patch also moves twisted, which is not required to run the setup. It's only a dependency for tests. If you're using it with twisted, you're expected to install it yourself. There's probably a way to mark it as an optional dependency but I haven't messed with it. |
I'm too lazy and fine with my patch. Without it, I'm getting the following:
|
My guess is that setuptools requires pip, and that installing twisted incidentally installs pip. |
The patch you probably want to make is adding setuptools to setup_requires. |
the thing is, I'm not using pip. At gentoo, we have our own packet manager. So far, it looks like that pytest-runner pulls pip. So the patch fixes it. |
btw, I dont see how vcversioner used in the project. Not in the release at least. |
vcversioner is used when creating bundles, it's the thing that's familiar with the version. You don't use pip to manage your packages, but pip is part of the tooling that the setup.py uses. You can see that your build is using easy_install instead of pip, which is, trust me, not what you want. I haven't worked with gentoo, but if it's anything like arch MAKEPKGs you use pip while creating the package and then that gets installed by the gentoo analog to pacman. |
as I said, we don't use pip and neither setup.py does (or should not at least). From the log above, you can see that our ebuild runs "python setup.py build" and "python setup.py install". |
It's extremely unlikely that portage intentionally uses easy_install. You probably never run "pip install" on your gentoo system - I certainly wouldn't recommend it - but the standard toolchain for managing python dependencies is pip, regardless of whether you're resolving dependencies or not. It certainly looks like setuptools requires pip, and setuptools is the implementation of setup() I'm using. Either way, you are definitely installing pip on accident with one of these other dep changes - that's what's happening, regardless of whether gentoo does or doesn't use pip. |
I have done some testing. It's vcversioner which cases the main issue:
|
No description provided.