Skip to content

CI: add osx to travis, xref #8630 #12567

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

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 26 additions & 25 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,16 @@ git:
matrix:
fast_finish: true
include:
- python: 2.7
- language: objective-c
os: osx
compiler: clang
osx_image: xcode6.4
env:
- JOB_NAME: "27_nslow_nnet_COMPAT"
- NOSE_ARGS="not slow and not network and not disabled"
- CLIPBOARD=xclip
- LOCALE_OVERRIDE="it_IT.UTF-8"
- BUILD_TYPE=conda
- INSTALL_TEST=true
- JOB_TAG=_COMPAT
- JOB_NAME: "35_osx"
- NOSE_ARGS="not slow and not network and not disabled"
- BUILD_TYPE=conda
- JOB_TAG=_OSX
- TRAVIS_PYTHON_VERSION=3.5
- python: 2.7
env:
- JOB_NAME: "27_slow_nnet_LOCALE"
Expand Down Expand Up @@ -75,18 +76,20 @@ matrix:
- NOSE_ARGS="not slow and not disabled"
- FULL_DEPS=true
- BUILD_TEST=true
- python: 2.7
env:
- JOB_NAME: "27_numpy_dev"
- JOB_TAG=_NUMPY_DEV
- NOSE_ARGS="not slow and not network and not disabled"
- PANDAS_TESTING_MODE="deprecate"
- python: 3.5
env:
- JOB_NAME: "35_numpy_dev"
- JOB_TAG=_NUMPY_DEV
- NOSE_ARGS="not slow and not network and not disabled"
- PANDAS_TESTING_MODE="deprecate"
- python: 2.7
env:
- JOB_NAME: "27_nslow_nnet_COMPAT"
- NOSE_ARGS="not slow and not network and not disabled"
- LOCALE_OVERRIDE="it_IT.UTF-8"
- BUILD_TYPE=conda
- INSTALL_TEST=true
- JOB_TAG=_COMPAT
- python: 2.7
env:
- JOB_NAME: "doc_build"
Expand All @@ -108,12 +111,6 @@ matrix:
- NOSE_ARGS="slow and not network and not disabled"
- FULL_DEPS=true
- CLIPBOARD=xsel
- python: 2.7
env:
- JOB_NAME: "27_numpy_dev"
- JOB_TAG=_NUMPY_DEV
- NOSE_ARGS="not slow and not network and not disabled"
- PANDAS_TESTING_MODE="deprecate"
- python: 2.7
env:
- JOB_NAME: "27_build_test_conda"
Expand All @@ -127,6 +124,14 @@ matrix:
- JOB_TAG=_NUMPY_DEV
- NOSE_ARGS="not slow and not network and not disabled"
- PANDAS_TESTING_MODE="deprecate"
- python: 2.7
env:
- JOB_NAME: "27_nslow_nnet_COMPAT"
- NOSE_ARGS="not slow and not network and not disabled"
- LOCALE_OVERRIDE="it_IT.UTF-8"
- BUILD_TYPE=conda
- INSTALL_TEST=true
- JOB_TAG=_COMPAT
- python: 2.7
env:
- JOB_NAME: "doc_build"
Expand All @@ -139,16 +144,13 @@ before_install:
- echo "before_install"
- echo $VIRTUAL_ENV
- export PATH="$HOME/miniconda/bin:$PATH"
- sudo apt-get install ccache
- df -h
- date
- pwd
- uname -a
- python -V
- ci/before_install_travis.sh
# Xvfb stuff for clipboard functionality; see the travis-ci documentation
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start

install:
- echo "install"
Expand All @@ -157,8 +159,7 @@ install:
- ci/submit_ccache.sh

before_script:
- mysql -e 'create database pandas_nosetest;'
- psql -c 'create database pandas_nosetest;' -U postgres
- ci/install_db.sh

script:
- echo "script"
Expand Down
6 changes: 5 additions & 1 deletion ci/before_install_travis.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@
echo "inside $0"

# overview
sudo apt-get update $APT_ARGS # run apt-get update for all versions
if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
sudo apt-get update $APT_ARGS # run apt-get update for all versions

sh -e /etc/init.d/xvfb start
fi

true # never fail because bad things happened here
5 changes: 5 additions & 0 deletions ci/build_docs.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
#!/bin/bash

if [ "${TRAVIS_OS_NAME}" != "linux" ]; then
echo "not doing build_docs on non-linux"
exit 0
fi

cd "$TRAVIS_BUILD_DIR"
echo "inside $0"

Expand Down
13 changes: 13 additions & 0 deletions ci/install_db.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/bash

if [ "${TRAVIS_OS_NAME}" != "linux" ]; then
echo "not using dbs on non-linux"
exit 0
fi

echo "installing dbs"
mysql -e 'create database pandas_nosetest;'
psql -c 'create database pandas_nosetest;' -U postgres

echo "done"
exit 0
36 changes: 24 additions & 12 deletions ci/install_travis.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,16 @@ if [ -n "$LOCALE_OVERRIDE" ]; then
# make sure the locale is available
# probably useless, since you would need to relogin
time sudo locale-gen "$LOCALE_OVERRIDE"
fi

# Need to enable for locale testing. The location of the locale file(s) is
# distro specific. For example, on Arch Linux all of the locales are in a
# commented file--/etc/locale.gen--that must be commented in to be used
# whereas Ubuntu looks in /var/lib/locales/supported.d/* and generates locales
# based on what's in the files in that folder
time echo 'it_CH.UTF-8 UTF-8' | sudo tee -a /var/lib/locales/supported.d/it
time sudo locale-gen
# Need to enable for locale testing. The location of the locale file(s) is
# distro specific. For example, on Arch Linux all of the locales are in a
# commented file--/etc/locale.gen--that must be commented in to be used
# whereas Ubuntu looks in /var/lib/locales/supported.d/* and generates locales
# based on what's in the files in that folder
time echo 'it_CH.UTF-8 UTF-8' | sudo tee -a /var/lib/locales/supported.d/it
time sudo locale-gen

fi

# install gui for clipboard testing
if [ -n "$CLIPBOARD_GUI" ]; then
Expand All @@ -67,7 +67,12 @@ fi
python_major_version="${TRAVIS_PYTHON_VERSION:0:1}"
[ "$python_major_version" == "2" ] && python_major_version=""

wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh || exit 1
# install miniconda
if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
wget http://repo.continuum.io/miniconda/Miniconda-latest-MacOSX-x86_64.sh -O miniconda.sh || exit 1
else
wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh || exit 1
fi
bash miniconda.sh -b -p $HOME/miniconda || exit 1

conda config --set always_yes yes --set changeps1 no || exit 1
Expand All @@ -94,7 +99,7 @@ time conda install -n pandas --file=${REQ} || exit 1
source activate pandas

# set the compiler cache to work
if [ "$IRON_TOKEN" ]; then
if [[ "$IRON_TOKEN" && "${TRAVIS_OS_NAME}" == "linux" ]]; then
export PATH=/usr/lib/ccache:/usr/lib64/ccache:$PATH
gcc=$(which gcc)
echo "gcc: $gcc"
Expand All @@ -113,24 +118,31 @@ if [ "$BUILD_TEST" ]; then
else

# build but don't install
echo "build em"
time python setup.py build_ext --inplace || exit 1

# we may have run installations
echo "conda installs"
REQ="ci/requirements-${TRAVIS_PYTHON_VERSION}${JOB_TAG}.run"
time conda install -n pandas --file=${REQ} || exit 1

# we may have additional pip installs
echo "pip installs"
REQ="ci/requirements-${TRAVIS_PYTHON_VERSION}${JOB_TAG}.pip"
if [ -e ${REQ} ]; then
pip install -r $REQ
fi

# remove any installed pandas package
conda remove pandas
# w/o removing anything else
echo "removing installed pandas"
conda remove pandas --force

# install our pandas
echo "running setup.py develop"
python setup.py develop || exit 1

fi

true
echo "done"
exit 0
5 changes: 5 additions & 0 deletions ci/prep_ccache.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
#!/bin/bash

if [ "${TRAVIS_OS_NAME}" != "linux" ]; then
echo "not using ccache on non-linux"
exit 0
fi

if [ "$IRON_TOKEN" ]; then

home_dir=$(pwd)
Expand Down
4 changes: 0 additions & 4 deletions ci/requirements-2.7-64.run
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,6 @@ scipy
xlsxwriter
boto
bottleneck
patsy
html5lib
beautiful-soup
jinja2=2.8

#pymysql=0.6.3
#psycopg2=2.5.2
5 changes: 0 additions & 5 deletions ci/requirements-3.4-64.run
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,8 @@ openpyxl
xlsxwriter
xlrd
xlwt
html5lib
patsy
beautiful-soup
scipy
numexpr
pytables
lxml
sqlalchemy
bottleneck
jinja2=2.8
13 changes: 0 additions & 13 deletions ci/requirements-3.5-64.run
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,8 @@ openpyxl
xlsxwriter
xlrd
xlwt
patsy
scipy
numexpr
pytables
html5lib
lxml
matplotlib
jinja2
blosc

# currently causing some warnings
#sqlalchemy
#pymysql
#psycopg2

# not available from conda
#beautiful-soup
#bottleneck
1 change: 0 additions & 1 deletion ci/requirements-3.5.run
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ openpyxl
xlsxwriter
xlrd
xlwt
patsy
scipy
numexpr
pytables
Expand Down
4 changes: 4 additions & 0 deletions ci/requirements-3.5_OSX.build
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
python-dateutil
pytz
numpy
cython
20 changes: 20 additions & 0 deletions ci/requirements-3.5_OSX.run
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
python-dateutil
pytz
numpy
openpyxl
xlsxwriter
xlrd
xlwt
scipy
numexpr
pytables
html5lib
lxml
matplotlib
jinja2
bottleneck
xarray
boto

# incompat with conda ATM
# beautiful-soup
25 changes: 15 additions & 10 deletions ci/submit_ccache.sh
Original file line number Diff line number Diff line change
@@ -1,18 +1,23 @@
#!/bin/bash

home_dir=$(pwd)
ccache -s

MISSES=$(ccache -s | grep "cache miss" | grep -Po "\d+")
echo "MISSES: $MISSES"

if [ x"$MISSES" == x"0" ]; then
echo "No cache misses detected, skipping upload"
exit 0
if [ "${TRAVIS_OS_NAME}" != "linux" ]; then
echo "not using ccache on non-linux"
exit 0
fi

if [ "$IRON_TOKEN" ]; then

home_dir=$(pwd)
ccache -s

MISSES=$(ccache -s | grep "cache miss" | grep -Po "\d+")
echo "MISSES: $MISSES"

if [ x"$MISSES" == x"0" ]; then
echo "No cache misses detected, skipping upload"
exit 0
fi

# install the compiler cache
sudo apt-get $APT_ARGS install ccache p7zip-full
# iron_cache, pending py3 fixes upstream
Expand All @@ -29,6 +34,6 @@ if [ "$IRON_TOKEN" ]; then
split -b 500000 -d $HOME/ccache.7z $HOME/ccache.

python ci/ironcache/put.py
fi;
fi

exit 0
2 changes: 1 addition & 1 deletion doc/source/enhancingperf.rst
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ cython versions >=0.21 you can use ``%load_ext Cython``):
.. ipython:: python
:okwarning:

%load_ext cythonmagic
%load_ext Cython


Now, let's simply copy our functions over to cython as is (the suffix
Expand Down
2 changes: 1 addition & 1 deletion doc/source/release.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ analysis / manipulation tool available in any language.
pandas 0.18.0
-------------

**Release date:** (January ??, 2016)
**Release date:** (March 13, 2016)

This is a major release from 0.17.1 and includes a small number of API changes, several new features,
enhancements, and performance improvements along with a large number of bug fixes. We recommend that all
Expand Down
Loading