1#!/usr/bin/env bash 2# Copyright 2015 The TensorFlow Authors. All Rights Reserved. 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# ============================================================================== 16 17set -e 18 19# Get the latest version of pip so it recognize manylinux2010 20wget https://bootstrap.pypa.io/get-pip.py 21python3.6 get-pip.py 22rm -f get-pip.py 23 24# Install pip packages from whl files to avoid the time-consuming process of 25# building from source. 26 27# Pin wheel==0.31.1 to work around issue 28# https://github.com/pypa/auditwheel/issues/102 29pip3 install wheel==0.31.1 30 31# Install last working version of setuptools. This must happen before we install 32# absl-py, which uses install_requires notation introduced in setuptools 20.5. 33pip3 install --upgrade setuptools==39.1.0 34 35pip3 install virtualenv 36 37# Install six and future. 38pip3 install --upgrade six==1.12.0 39pip3 install "future>=0.17.1" 40 41# Install absl-py. 42pip3 install --upgrade absl-py 43 44# Install werkzeug. 45pip3 install --upgrade werkzeug==0.11.10 46 47# Install bleach. html5lib will be picked up as a dependency. 48pip3 install --upgrade bleach==2.0.0 49 50# Install markdown. 51pip3 install --upgrade markdown==2.6.8 52 53# Install protobuf. 54pip3 install --upgrade protobuf==3.6.1 55 56# Remove obsolete version of six, which can sometimes confuse virtualenv. 57rm -rf /usr/lib/python3/dist-packages/six* 58 59# numpy needs to be installed from source to fix segfaults. See: 60# https://github.com/tensorflow/tensorflow/issues/6968 61# This workaround isn't needed for Ubuntu 16.04 or later. 62if $(cat /etc/*-release | grep -q 14.04); then 63 pip3 install --no-binary=:all: --upgrade numpy==1.14.5 64else 65 pip3 install --upgrade numpy==1.14.5 66fi 67 68pip3 install scipy==1.4.1 69 70pip3 install scikit-learn==0.18.1 71 72# pandas required by `inflow` 73pip3 install pandas==0.19.2 74 75# Benchmark tests require the following: 76pip3 install psutil 77pip3 install py-cpuinfo 78 79# pylint==1.6.4 requires python-astroid (>= 1.4.5) requires lazy-object-proxy 80# Latest version of lazy-object-proxy (1.4.2) fails to install from source 81# when using setuptools 39.1.0. 82# NOTE: Using the updated version of pylint for python3 as python2 is EOL, 83# thus using the updated version of lazy-object-proxy==1.4.3 84pip3 install lazy-object-proxy==1.4.3 85 86# pylint tests require the following version. pylint==1.6.4 hangs erratically, 87# thus using the updated version of 2.5.3 only for python3 as python2 is EOL 88# and this version is not available. 89pip3 install pylint==2.5.3 90 91# pycodestyle tests require the following: 92pip3 install pycodestyle 93 94pip3 install portpicker 95 96# TensorFlow Serving integration tests require the following: 97pip3 install grpcio 98 99# Eager-to-graph execution needs astor, gast and termcolor: 100pip3 install --upgrade astor 101pip3 install --upgrade gast 102pip3 install --upgrade termcolor 103 104# Keras 105pip3 install keras_preprocessing==1.1.0 --no-deps 106pip3 install --upgrade h5py==3.1.0 107 108# Estimator 109pip3 install tf-estimator-nightly --no-deps 110 111# Tensorboard 112pip3 install tb-nightly --no-deps 113 114# Argparse 115pip3 install --upgrade argparse 116 117# tree 118pip3 install dm-tree 119 120# tf.distribute multi worker tests require the following: 121# Those tests are Python3 only. 122pip3 install --upgrade dill 123pip3 install --upgrade tblib 124