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

Tighten travis matrix and python activation. #6440

Merged
merged 2 commits into from Sep 6, 2018

Conversation

Projects
None yet
3 participants
@jsirois
Copy link
Member

jsirois commented Sep 2, 2018

A few improvements and fixes to the travis setup:

  • Specify python: "2.7" which floats us to the most modern python 2.7
    (2.7.14 currently)
  • Use name uniformly to name shards and kill the SHARD env var which
    was only used to achieve the same end.
  • 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.

@jsirois jsirois force-pushed the jsirois:travis/fix_pyenv branch 3 times, most recently from fbf50d7 to 1a7842e Sep 3, 2018

@jsirois

This comment has been minimized.

Copy link
Member

jsirois commented Sep 4, 2018

Depends on #6446, only 1a7842e is for review.

@stuhood

stuhood approved these changes Sep 4, 2018

Copy link
Member

stuhood left a comment

Thanks John!

@@ -0,0 +1,22 @@
#!/usr/bin/env bash

This comment has been minimized.

@stuhood

stuhood Sep 4, 2018

Member

A comment in here explaining what should go in this script ("setup specific to the python environment present on travis") would be good.

This comment has been minimized.

@jsirois

jsirois Sep 5, 2018

Member

Agreed - fix coming.

This comment has been minimized.

@jsirois

jsirois Sep 5, 2018

Member

Fixed. This will probably required one more rebase to pull in #6446 to get CI green.

@jsirois jsirois force-pushed the jsirois:travis/fix_pyenv branch from 1a7842e to 54d42c1 Sep 5, 2018

@illicitonion
Copy link
Contributor

illicitonion left a comment

Thanks!

jsirois added some commits Sep 2, 2018

Tighten travis matrix and python activation.
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.

@jsirois jsirois force-pushed the jsirois:travis/fix_pyenv branch from 54d42c1 to b4675fe Sep 6, 2018

@jsirois jsirois merged commit 0dce41d 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:travis/fix_pyenv branch Sep 6, 2018

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

Tighten travis matrix and python activation. (pantsbuild#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 pantsbuild#6428 which fixes pantsbuild#6415.

@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