From ccb81519bffb183b3958d09098fe7ad2093e46f8 Mon Sep 17 00:00:00 2001 From: jbrockmendel Date: Tue, 15 Oct 2019 04:38:52 -0700 Subject: [PATCH] Backport PR #28730: CI: 3.8 build --- .travis.yml | 13 +++++++++++-- ci/build38.sh | 25 +++++++++++++++++++++++++ ci/setup_env.sh | 4 ++++ 3 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 ci/build38.sh diff --git a/.travis.yml b/.travis.yml index 8335a6ee92bef..6465abb317c01 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,6 +31,12 @@ matrix: - python: 3.5 include: + - dist: bionic + # 18.04 + python: 3.8-dev + env: + - JOB="3.8-dev" PATTERN="(not slow and not network)" + - dist: trusty env: - JOB="3.7" ENV_FILE="ci/deps/travis-37.yaml" PATTERN="(not slow and not network)" @@ -72,6 +78,7 @@ before_install: # This overrides travis and tells it to look nowhere. - export BOTO_CONFIG=/dev/null + install: - echo "install start" - ci/prep_cython_cache.sh @@ -79,17 +86,19 @@ install: - ci/submit_cython_cache.sh - echo "install done" + before_script: # display server (for clipboard functionality) needs to be started here, # does not work if done in install:setup_env.sh (GH-26103) - export DISPLAY=":99.0" - echo "sh -e /etc/init.d/xvfb start" - - sh -e /etc/init.d/xvfb start + - if [ "$JOB" != "3.8-dev" ]; then sh -e /etc/init.d/xvfb start; fi - sleep 3 script: - echo "script start" - - source activate pandas-dev + - echo "$JOB" + - if [ "$JOB" != "3.8-dev" ]; then source activate pandas-dev; fi - ci/run_tests.sh after_script: diff --git a/ci/build38.sh b/ci/build38.sh new file mode 100644 index 0000000000000..5c798c17301e0 --- /dev/null +++ b/ci/build38.sh @@ -0,0 +1,25 @@ +#!/bin/bash -e +# Special build for python3.8 until numpy puts its own wheels up + +sudo apt-get install build-essential gcc xvfb +pip install --no-deps -U pip wheel setuptools +pip install python-dateutil pytz cython pytest pytest-xdist hypothesis + +# Possible alternative for getting numpy: +# pip install --pre -f https://7933911d6844c6c53a7d-47bd50c35cd79bd838daf386af554a83.ssl.cf2.rackcdn.com/ numpy +git clone https://github.com/numpy/numpy +cd numpy +python setup.py build_ext --inplace +python setup.py install +cd .. +rm -rf numpy + +python setup.py build_ext -inplace +python -m pip install --no-build-isolation -e . + +python -c "import sys; print(sys.version_info)" +python -c "import pandas as pd" +python -c "import hypothesis" + +# TODO: Is there anything else in setup_env that we really want to do? +# ci/setup_env.sh diff --git a/ci/setup_env.sh b/ci/setup_env.sh index 88742e0483c7e..02e48f6cb9af1 100755 --- a/ci/setup_env.sh +++ b/ci/setup_env.sh @@ -1,5 +1,9 @@ #!/bin/bash -e +if [ "$JOB" == "3.8-dev" ]; then + /bin/bash ci/build38.sh + exit 0 +fi # edit the locale file if needed if [ -n "$LOCALE_OVERRIDE" ]; then