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

Fixup tests involving pexrc. #6446

Merged
merged 6 commits into from Sep 6, 2018

Conversation

Projects
None yet
2 participants
@jsirois
Copy link
Member

jsirois commented Sep 4, 2018

Previously these tests weren't reliably reading a pexrc and had fragile
workarounds and paper-overs as a result. pexrc_util now reliably injects
a pexrc with a temporary HOME.

Also cleanup the affected tests - use @skipIf, respect 100 cols, ensure
path comparisons with judicious application of os.realpath.

@jsirois

This comment has been minimized.

Copy link
Member

jsirois commented Sep 4, 2018

Supports #6440 which uncovered fragile failures in the pexrc tests.

@stuhood

stuhood approved these changes Sep 4, 2018

Copy link
Member

stuhood left a comment

Thanks!

@@ -39,17 +69,16 @@ def test_run_27_and_then_3(self):
pants_run_3 = self.run_pants(
command=['run', '{}:echo_interpreter_version_3'.format(self.testproject),
'--python-setup-interpreter-constraints=CPython>=2.7,<3',
'--python-setup-interpreter-constraints=CPython>=3.3'],
'--python-setup-interpreter-constraints=CPython>=3.4,<3.7'],

This comment has been minimized.

@stuhood

stuhood Sep 4, 2018

Member

Might be worth constantizing CPython>=3.4,<3.7 and possibly some of the other ranges.

This comment has been minimized.

@jsirois

jsirois Sep 5, 2018

Member

Agreed - they are slapdash right now scattered everywhere and they'll all need to change when we bump our floor from 3.4 to - hopefully - 3.6. I've filed #6458 to follow-up.

This comment has been minimized.

@jsirois

@jsirois jsirois force-pushed the jsirois:pexrc/tests/robustify branch 2 times, most recently from cc95586 to 26c02a6 Sep 5, 2018

@jsirois

This comment has been minimized.

Copy link
Member

jsirois commented Sep 6, 2018

Red shard is unrelated, but I'll block to get green here. Fix for that shard is in #6460

jsirois added some commits Sep 4, 2018

Fixup tests involving pexrc.
Previously these tests weren't reliably reading a pexrc and had fragile
workarounds and paper-overs as a result. pexrc_util now reliably injects
a pexrc with a temporary HOME.

Also cleanup the affected tests - use @skipIf, respect 100 cols, ensure
path comparisons with judicious application of `os.realpath`.

@jsirois jsirois force-pushed the jsirois:pexrc/tests/robustify branch from 531120b to de2e8ee Sep 6, 2018

@jsirois jsirois merged commit c06e831 into pantsbuild:master Sep 6, 2018

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@jsirois jsirois deleted the jsirois:pexrc/tests/robustify branch Sep 6, 2018

jsirois added a commit to jsirois/pants that referenced this pull request Sep 7, 2018

Fixup tests involving pexrc. (pantsbuild#6446)
Previously these tests weren't reliably reading a pexrc and had fragile
workarounds and paper-overs as a result. pexrc_util now reliably injects
a pexrc with a temporary HOME.

Also cleanup the affected tests - use @skipIf, respect 100 cols, ensure
path comparisons with judicious application of `os.realpath`.

@jsirois jsirois referenced this pull request Sep 7, 2018

Merged

Cherry-pick setup_py fixes #6472

jsirois added a commit that referenced this pull request Sep 10, 2018

Cherry-pick setup_py fixes (#6472)
* [fix] Pass full path to isdir rather than just basename. (#6453)

* [fix] Pass full path to isdir rather than just basename.

* [test] Add tests for fix.

* Tighten travis matrix and python activation. (#6440)

A few improvements and fixes to the travis setup:
+ Upgrade to to python 2.7.14 via `python: "2.7"`.
+ Use `name` uniformly to name shards and kill the `SHARD` env var which
  was only used to achieve the same end.
+ Use anchors to DRY up python version and clippy shard failure
  ignoring.
+ Ensure travis `pyenv` pythons are on `PATH`. This works around
  travis-ci/travis-ci#8315 and nets us both
  python 2.7 and python 3.6 on all `language: python` shards.

This last is needed to support #6428 which fixes #6415.

* Remove broken pyenv shims from the PATH. (#6469)

It turns out these would still get found in various contexts since the
interpreter cache tries to setup everything it finds on the PATH. Add
improved context in the wrapper script to show exactly which pythons
Pants will have access to.

* Fixup tests involving pexrc. (#6446)

Previously these tests weren't reliably reading a pexrc and had fragile
workarounds and paper-overs as a result. pexrc_util now reliably injects
a pexrc with a temporary HOME.

Also cleanup the affected tests - use @skipIf, respect 100 cols, ensure
path comparisons with judicious application of `os.realpath`.

* Detect ns packages using correct interpreter. (#6428)

Previously `__init__.py`s were parsed in the context of the ambient
interpreter executing the `SetupPy` task which could lead to parse
failures for new or removed language features used in those
`__init__.py`s. We now construct a PEX using the appropriate interpreter
and use it to run ns package detection.

Fixes #6415

* Fix setup.py rendering. (#6439)

We now render setup.py from both python 2 & 3 such that the result
is ingestible by both python 2 & 3.

Fixes #6401
Fixes #6392
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment