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

pythonPackages.ncclient: refactor + init pythonPackages.selectors2 #46186

Merged
merged 2 commits into from Sep 7, 2018

Conversation

costrouc
Copy link
Member

@costrouc costrouc commented Sep 6, 2018

Motivation for this change

18.09 Zero Hydra Failures #45960

Things done

ncclient fails to build due to new dependency. adding selectors2 as dependency of ncclient. Added recently 20 days ago in August. ncclient/ncclient@8ef20f2

  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

@costrouc costrouc requested a review from FRidh as a code owner September 6, 2018 18:54
@costrouc costrouc changed the title Costrouc/python ncclient pythonPackages.ncclient: refactor + init pythonPackages.selectors2 Sep 6, 2018
@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

@GrahamcOfBorg build python27Packages.ncclient python36Packages.ncclient

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: python27Packages.ncclient

The following builds were skipped because they don't evaluate on x86_64-linux: python36Packages.ncclient

Partial log (click to expand)

Installing collected packages: ncclient
Successfully installed ncclient-0.6.2
/build/ncclient-0.6.2
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/7lv3xjpmvcgw16lkq68x4mhlsara95ls-python2.7-ncclient-0.6.2
strip is /nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/7lv3xjpmvcgw16lkq68x4mhlsara95ls-python2.7-ncclient-0.6.2/lib
patching script interpreter paths in /nix/store/7lv3xjpmvcgw16lkq68x4mhlsara95ls-python2.7-ncclient-0.6.2
checking for references to /build in /nix/store/7lv3xjpmvcgw16lkq68x4mhlsara95ls-python2.7-ncclient-0.6.2...
/nix/store/7lv3xjpmvcgw16lkq68x4mhlsara95ls-python2.7-ncclient-0.6.2

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: python27Packages.ncclient

The following builds were skipped because they don't evaluate on aarch64-linux: python36Packages.ncclient

Partial log (click to expand)

Installing collected packages: ncclient
Successfully installed ncclient-0.6.2
/build/ncclient-0.6.2
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/ijrbwffymwhlqxy4dbv18hmq2x178kyv-python2.7-ncclient-0.6.2
strip is /nix/store/y4ymnvgxygpq05h03kyzbj572zmh6zla-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/ijrbwffymwhlqxy4dbv18hmq2x178kyv-python2.7-ncclient-0.6.2/lib
patching script interpreter paths in /nix/store/ijrbwffymwhlqxy4dbv18hmq2x178kyv-python2.7-ncclient-0.6.2
checking for references to /build in /nix/store/ijrbwffymwhlqxy4dbv18hmq2x178kyv-python2.7-ncclient-0.6.2...
/nix/store/ijrbwffymwhlqxy4dbv18hmq2x178kyv-python2.7-ncclient-0.6.2

@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

@GrahamcOfBorg build python36Packages.selectors2 python27Packages.selectors2

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: python36Packages.selectors2, python27Packages.selectors2

Partial log (click to expand)

Ran 196 tests in 4.104s

OK (SKIP=97)
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS................................SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS...S..............................S................................SS
----------------------------------------------------------------------
Ran 196 tests in 4.146s

OK (SKIP=99)
/nix/store/qy4v69kq9kcbkh6wh2h6c0amhrvl2v1f-python3.6-selectors2-2.0.1
/nix/store/bmvggk8bi2cgi0jwjmcjp8iln5la2kvi-python2.7-selectors2-2.0.1

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: python36Packages.selectors2, python27Packages.selectors2

Partial log (click to expand)

patching script interpreter paths in /nix/store/avw7k2i1bgpz2hyxa9bw9dd2548qbjh2-python3.6-selectors2-2.0.1
checking for references to /build in /nix/store/avw7k2i1bgpz2hyxa9bw9dd2548qbjh2-python3.6-selectors2-2.0.1...
running install tests
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS................................SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS...S..............................S................................SS
----------------------------------------------------------------------
Ran 196 tests in 5.937s

OK (SKIP=99)
/nix/store/avw7k2i1bgpz2hyxa9bw9dd2548qbjh2-python3.6-selectors2-2.0.1
/nix/store/yqs3jyr3a9bbdymzydjrzidys5w8mcly-python2.7-selectors2-2.0.1

@GrahamcOfBorg
Copy link

Failure on x86_64-darwin (full log)

Attempted: python27Packages.ncclient

The following builds were skipped because they don't evaluate on x86_64-darwin: python36Packages.ncclient

Partial log (click to expand)

    self.testcase.assertLessEqual(total_time, self.upper * (1.0 + TOLERANCE))
AssertionError: 0.015455961227416992 not less than or equal to 0.015

----------------------------------------------------------------------
Ran 196 tests in 3.865s

FAILED (SKIP=99, failures=11)
builder for '/nix/store/zsy3603w0isff9xxx7kz2cp5am59l7k3-python2.7-selectors2-2.0.1.drv' failed with exit code 1
cannot build derivation '/nix/store/2k2628ipx1b62m6hq9h3cb5sjcncrycz-python2.7-ncclient-0.6.2.drv': 1 dependencies couldn't be built
error: build of '/nix/store/2k2628ipx1b62m6hq9h3cb5sjcncrycz-python2.7-ncclient-0.6.2.drv' failed

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: python36Packages.selectors2, python27Packages.selectors2

Partial log (click to expand)

stripping (with command strip and flags -S) in /nix/store/r46klhi3q9hca2rfb32awiy9s6y8gfqk-python3.6-selectors2-2.0.1/lib
patching script interpreter paths in /nix/store/r46klhi3q9hca2rfb32awiy9s6y8gfqk-python3.6-selectors2-2.0.1
running install tests
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS...............................S..S..............................S................................SS
----------------------------------------------------------------------
Ran 196 tests in 3.386s

OK (SKIP=101)
/nix/store/r46klhi3q9hca2rfb32awiy9s6y8gfqk-python3.6-selectors2-2.0.1
/nix/store/nqac7c9mk4faz46d3asbnf7rpbi58ish-python2.7-selectors2-2.0.1

@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

Darwin failure looks like due to rounding errors. Maybe you can try to increase test tolerances?

@costrouc
Copy link
Member Author

costrouc commented Sep 7, 2018

Looks like this could be fixed with a sed replacement. It is a variable that is set within the python code itself. https://github.com/SethMichaelLarson/selectors2/blob/master/tests/support.py#L16

I don't think that it is changeable via the command line. Do you think it is appropriate to use a sed replacement for a patch on the test?

@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

These are timing tests, this is very machine dependent and non-deterministic and will be pretty useless on Hydra. So I think we should disable them completely. Upstream does that for Travis CI too: https://github.com/SethMichaelLarson/selectors2/blob/master/tests/support.py#L135

Looks like an easy way for us to do the same without patching is to set a TRAVIS environment variable in checkPhase: https://github.com/SethMichaelLarson/selectors2/blob/master/tests/support.py#L21.

Added package becuase now dependency of ncclient.
adding selectors2 as dependency of ncclient. Added recently 20 days
ago in August. ncclient/ncclient@8ef20f2
@costrouc
Copy link
Member Author

costrouc commented Sep 7, 2018

Great catch. I have fixed this with the latest commit by setting a TRAVIS environment variable within the tests.

@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

@GrahamcOfBorg build python36Packages.selectors2 python27Packages.selectors2 python27Packages.ncclient

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: python36Packages.selectors2, python27Packages.selectors2, python27Packages.ncclient

Partial log (click to expand)

/build/ncclient-0.6.2
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/zx755zy32k42mpwn2zlwqqwjc0lfykzk-python2.7-ncclient-0.6.2
strip is /nix/store/y4ymnvgxygpq05h03kyzbj572zmh6zla-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/zx755zy32k42mpwn2zlwqqwjc0lfykzk-python2.7-ncclient-0.6.2/lib
patching script interpreter paths in /nix/store/zx755zy32k42mpwn2zlwqqwjc0lfykzk-python2.7-ncclient-0.6.2
checking for references to /build in /nix/store/zx755zy32k42mpwn2zlwqqwjc0lfykzk-python2.7-ncclient-0.6.2...
/nix/store/fm5wc0a7s6l45d2ppficg6yizvgchkyv-python3.6-selectors2-2.0.1
/nix/store/7naxv4km18i22c2k3wyqzfp05s2dp83b-python2.7-selectors2-2.0.1
/nix/store/zx755zy32k42mpwn2zlwqqwjc0lfykzk-python2.7-ncclient-0.6.2

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: python36Packages.selectors2, python27Packages.selectors2, python27Packages.ncclient

Partial log (click to expand)

/build/ncclient-0.6.2
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/4yv3gi3jamvis7n3almwqpa5m4v8hbfg-python2.7-ncclient-0.6.2
strip is /nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/4yv3gi3jamvis7n3almwqpa5m4v8hbfg-python2.7-ncclient-0.6.2/lib
patching script interpreter paths in /nix/store/4yv3gi3jamvis7n3almwqpa5m4v8hbfg-python2.7-ncclient-0.6.2
checking for references to /build in /nix/store/4yv3gi3jamvis7n3almwqpa5m4v8hbfg-python2.7-ncclient-0.6.2...
/nix/store/snv1s9mgqyh2qxbva0d6lciz24127njj-python3.6-selectors2-2.0.1
/nix/store/3bh0kars7lxq1569bfmals3saf7jghk6-python2.7-selectors2-2.0.1
/nix/store/4yv3gi3jamvis7n3almwqpa5m4v8hbfg-python2.7-ncclient-0.6.2

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: python36Packages.selectors2, python27Packages.selectors2, python27Packages.ncclient

Partial log (click to expand)

Installing collected packages: ncclient
Successfully installed ncclient-0.6.2
/private/tmp/nix-build-python2.7-ncclient-0.6.2.drv-0/ncclient-0.6.2
post-installation fixup
strip is /nix/store/df6k4mgdjxciy0f637lryp7c9ln7n1m3-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/g5raxwlb2knaq2jyp3wyqp6yybsdawaq-python2.7-ncclient-0.6.2/lib
patching script interpreter paths in /nix/store/g5raxwlb2knaq2jyp3wyqp6yybsdawaq-python2.7-ncclient-0.6.2
/nix/store/429z8zxh3chv0bcvbjk9sxs7xr3igpds-python3.6-selectors2-2.0.1
/nix/store/3yfpdl42666hdxcw4g57ksnbhdx9d3ba-python2.7-selectors2-2.0.1
/nix/store/g5raxwlb2knaq2jyp3wyqp6yybsdawaq-python2.7-ncclient-0.6.2

@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

Thank you!

@xeji xeji merged commit 6f3ff5a into NixOS:master Sep 7, 2018
@xeji
Copy link
Contributor

xeji commented Sep 7, 2018

backported: 010fc6b and 17e1770

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

Successfully merging this pull request may close these issues.

None yet

3 participants