-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
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
Python recursivePthLoader in action #258
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
define full job attributes (not just systems) so we can define schedulingPriority without touching release-lib.nix. There is definitely a more elegant way to recursively walk attributes and fill in missing values (job and schedulingPriority).
setuptools site.py can't resolve recursively which is needed for nix, as each package has its own directory. A different solution than putting the loader into every package output needs to be found. see also NixOS#209
we use recursive processing of pth files instead
if they are really needed they will be in pth file created by easy_install. If that does not work, they need to be put into propagatedBuildInputs or the setup.py fixed. see NixOS#210
On other systems python26 will continue to look for /usr/include/netinet/in.h among others. I don't know whether/what to do about that.
…t already" This reverts commit edd1604. If we propagate it, derivations that use a python package will also get the recursivePthLoader needed to process the pth files of the package.
An alternative would be to include it with the plain `python`.
Previously the checkPhase was not executed. It is now and a couple of issues with it are seded away.
This looks great! Is there anything in particular to test before merging? |
cillianderoiste
added a commit
that referenced
this pull request
Jan 15, 2013
Python recursivePthLoader in action I've checked that nothing which passes in trunk: http://hydra.nixos.org/eval/810237 fails in python-rework: http://hydra.nixos.org/eval/810395 I can also now use buildEnv for python very comfortably. This is a massive improvement, thanks a lot!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Remove pth loader (site.py) from module, instead propagate the recursivePthLoader (#222). This allows recursive pth loading, which is needed for modules that themselves depend on modules. It also avoids special treatment / a collision of theses site.py files. The recursivePthLoader itself is not included in the pth file generated for propagatedBuildInputs (#257).
pth files are not generated anymore for buildInputs (#210), but only for propagatedBuildInputs. the build process, usually easy_install, is responsible to generate a pth file with the runtime dependencies. Use propagatedBuildInputs if this fails, e.g. for matplotlib.
Further cleanup that also results in recompilation of everything depending on python:
python-setuptools
instead ofsetuptools
)Package fixes that make use of the pth loader:
Packages now also available for 2.6
Release file for hydra python-rework jobset: release-python.nix