From 1c350dc99ea5175f7435fd80af4e347cce22f6fc Mon Sep 17 00:00:00 2001
From: Jean-Philippe Bernardy <jeanphilippe.bernardy@gmail.com>
Date: Thu, 28 Feb 2019 11:59:17 +0100
Subject: [PATCH] pythonPackages.tensorflow: 1.11 -> 1.13.1

---
 .../python-modules/tensorflow/bin.nix         |  8 ++---
 .../python-modules/tensorflow/prefetcher.sh   |  2 +-
 .../tensorflow/tf1.11.0-hashes.nix            | 34 -------------------
 .../tensorflow/tf1.13.1-hashes.nix            | 34 +++++++++++++++++++
 .../tensorflow/tf1.7.1-hashes.nix             | 34 -------------------
 pkgs/top-level/python-packages.nix            |  4 +--
 6 files changed, 41 insertions(+), 75 deletions(-)
 delete mode 100644 pkgs/development/python-modules/tensorflow/tf1.11.0-hashes.nix
 create mode 100644 pkgs/development/python-modules/tensorflow/tf1.13.1-hashes.nix
 delete mode 100644 pkgs/development/python-modules/tensorflow/tf1.7.1-hashes.nix

diff --git a/pkgs/development/python-modules/tensorflow/bin.nix b/pkgs/development/python-modules/tensorflow/bin.nix
index 90f8c9e6e302..e1c25d9eca71 100644
--- a/pkgs/development/python-modules/tensorflow/bin.nix
+++ b/pkgs/development/python-modules/tensorflow/bin.nix
@@ -14,6 +14,7 @@
 , mock
 , backports_weakref
 , enum34
+, tensorflow-estimator
 , tensorflow-tensorboard
 , cudaSupport ? false
 , cudatoolkit ? null
@@ -41,7 +42,7 @@ let
 
 in buildPythonPackage rec {
   pname = "tensorflow";
-  version = "1.11.0";
+  version = "1.13.1";
   format = "wheel";
 
   src = let
@@ -50,10 +51,10 @@ in buildPythonPackage rec {
     platform = if stdenv.isDarwin then "mac" else "linux";
     unit = if cudaSupport then "gpu" else "cpu";
     key = "${platform}_py_${pyver}_${unit}";
-    dls = import ./tf1.11.0-hashes.nix;
+    dls = import (./. + "/tf${version}-hashes.nix");
   in fetchurl dls.${key};
 
-  propagatedBuildInputs = [  protobuf numpy termcolor grpcio six astor absl-py gast tensorflow-tensorboard keras-applications keras-preprocessing ]
+  propagatedBuildInputs = [  protobuf numpy termcolor grpcio six astor absl-py gast tensorflow-estimator tensorflow-tensorboard keras-applications keras-preprocessing ]
                  ++ lib.optional (!isPy3k) mock;
 
   # Upstream has a pip hack that results in bin/tensorboard being in both tensorflow
@@ -64,7 +65,6 @@ in buildPythonPackage rec {
     rm $out/bin/tensorboard
   '';
 
-  installFlags = "--no-dependencies"; # tensorflow wants setuptools 39, can't allow that.
   # Note that we need to run *after* the fixup phase because the
   # libraries are loaded at runtime. If we run in preFixup then
   # patchelf --shrink-rpath will remove the cuda libraries.
diff --git a/pkgs/development/python-modules/tensorflow/prefetcher.sh b/pkgs/development/python-modules/tensorflow/prefetcher.sh
index 0954a3810057..ac479e0243d4 100644
--- a/pkgs/development/python-modules/tensorflow/prefetcher.sh
+++ b/pkgs/development/python-modules/tensorflow/prefetcher.sh
@@ -1,4 +1,4 @@
-version=1.11.0
+version=1.13.1
 hashfile=tf${version}-hashes.nix
 rm -f $hashfile
 echo "{" >> $hashfile
diff --git a/pkgs/development/python-modules/tensorflow/tf1.11.0-hashes.nix b/pkgs/development/python-modules/tensorflow/tf1.11.0-hashes.nix
deleted file mode 100644
index 47cd25ef7571..000000000000
--- a/pkgs/development/python-modules/tensorflow/tf1.11.0-hashes.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{
-linux_py_27_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.11.0-cp27-none-linux_x86_64.whl";
-  sha256 = "0s3ar2jzz2m9ilqfl4aigfi4bq8k5n04grnfqy4nyii2y98xjy14";
-};
-linux_py_35_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.11.0-cp35-cp35m-linux_x86_64.whl";
-  sha256 = "0vfw2v033h8wdgjlbwjx2i9fdqqnxxc3r085irq9nzkdmwzw2jl8";
-};
-linux_py_36_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.11.0-cp36-cp36m-linux_x86_64.whl";
-  sha256 = "0zmr5bw3ki5l6jb19h70kmq3k3xnq60jkw6wqqr6par1c7b4i9c3";
-};
-linux_py_27_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.11.0-cp27-none-linux_x86_64.whl";
-  sha256 = "1pcacy4ky7zhq7h7d93s4xp213q1yj2zxn2khlyll389lq0bcbax";
-};
-linux_py_35_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.11.0-cp35-cp35m-linux_x86_64.whl";
-  sha256 = "04ggz7jzbhl41alnj526rp0vz88h68mcv3rbs5pmrwyg0j2cqjz3";
-};
-linux_py_36_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.11.0-cp36-cp36m-linux_x86_64.whl";
-  sha256 = "1ywpq3n51pn7jrr231immi2s6ghdy9s0bnkk7dg4dbbxrisxg33a";
-};
-mac_py_2_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.11.0-py2-none-any.whl";
-  sha256 = "1rjb6gm0spj0l5zl02zsr6x3qagf2khrjw02z7znmsshb5xhsx8j";
-};
-mac_py_3_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.11.0-py3-none-any.whl";
-  sha256 = "16la41a2d29wa4i7h1g32d94g23ixzc3wc69kd9w82w45bwfv4xl";
-};
-}
diff --git a/pkgs/development/python-modules/tensorflow/tf1.13.1-hashes.nix b/pkgs/development/python-modules/tensorflow/tf1.13.1-hashes.nix
new file mode 100644
index 000000000000..5e0e5a7fccf1
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow/tf1.13.1-hashes.nix
@@ -0,0 +1,34 @@
+{
+linux_py_27_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.13.1-cp27-none-linux_x86_64.whl";
+  sha256 = "0y1vd3y5fxcjj5d35qbk8482b0s642nyp0c2sm068vx5wd4sjpcg";
+};
+linux_py_35_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.13.1-cp35-cp35m-linux_x86_64.whl";
+  sha256 = "0b27swk4c2vaimwzbzl4c7xnccr9cfak5a3848lfqlcavcmbp94j";
+};
+linux_py_36_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.13.1-cp36-cp36m-linux_x86_64.whl";
+  sha256 = "087jwjby3bym09z55cjhc587aasf01y6l009p1q2vcpfq7s7ljmk";
+};
+linux_py_27_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.13.1-cp27-none-linux_x86_64.whl";
+  sha256 = "0bf239f2bnsbqs3qh4xdql9pgbsm0zk7j8q1hg0wn0wrq440n0ds";
+};
+linux_py_35_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.13.1-cp35-cp35m-linux_x86_64.whl";
+  sha256 = "1cqav22a8yz6fzk46z6kv1ha2i28h5wccbd7k66drrfxibmb93j0";
+};
+linux_py_36_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.13.1-cp36-cp36m-linux_x86_64.whl";
+  sha256 = "1xnbiz36z7nicqrv0cmymfnwb8mdz2hifcv71gh6gnyi1962f2d7";
+};
+mac_py_2_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.13.1-py2-none-any.whl";
+  sha256 = "1a6y5xj2wqkd8qmabn2xjg3q7x2jfixwrz351dgcxlhy8qy5yc0g";
+};
+mac_py_3_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.13.1-py3-none-any.whl";
+  sha256 = "1klsv18k0isfd61z1wirfz1lnqmx8k73ga8g9s18yand65iycads";
+};
+}
diff --git a/pkgs/development/python-modules/tensorflow/tf1.7.1-hashes.nix b/pkgs/development/python-modules/tensorflow/tf1.7.1-hashes.nix
deleted file mode 100644
index c9ed7c182644..000000000000
--- a/pkgs/development/python-modules/tensorflow/tf1.7.1-hashes.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{
-linux_py_27_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.7.1-cp27-none-linux_x86_64.whl";
-  sha256 = "0p8n5x74qmdv9g63y176xqpfdc1gawzjysn79bvk46knrks3pa2b";
-};
-linux_py_35_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.7.1-cp35-cp35m-linux_x86_64.whl";
-  sha256 = "050qv8fjpnw2y8da7s910jv4nsxg56d3xdpl09jim47kbwqabr5m";
-};
-linux_py_36_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.7.1-cp36-cp36m-linux_x86_64.whl";
-  sha256 = "00d5cij1mh64hh0zc2qfl8z2hpr3nna6lhpsc6qh4am1g7wz4ndn";
-};
-linux_py_27_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.7.1-cp27-none-linux_x86_64.whl";
-  sha256 = "0ami6nlp9cwg631a8f5rfpzpwb9ls9zxhsx61cimw46xljx3l2b5";
-};
-linux_py_35_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.7.1-cp35-cp35m-linux_x86_64.whl";
-  sha256 = "1xfc8dww52fy8g4b0j8r20q7yj2bfg20hlk9p7sk3k9z8swfw0kc";
-};
-linux_py_36_gpu = {
-  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.7.1-cp36-cp36m-linux_x86_64.whl";
-  sha256 = "1kkqx8m7h03b8l9l6dki4g4r7sgi3wbb4dp9gvk6l08n4vnlvc50";
-};
-mac_py_2_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.7.1-py2-none-any.whl";
-  sha256 = "1icbsvvwkkc09s6bdd43drvnhc6v6xmnqwjzipgc8rmpj1z71yz5";
-};
-mac_py_3_cpu = {
-  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.7.1-py3-none-any.whl";
-  sha256 = "0s5dy956jvwazqflc90v15i912zvhwsbzlf0cl8k7isq52j6g3kp";
-};
-}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index b45f230628f5..3bd5889fb82e 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -5064,8 +5064,8 @@ in {
     else callPackage ../development/python-modules/tensorflow/bin.nix rec {
       cudaSupport = pkgs.config.cudaSupport or false;
       inherit (pkgs.linuxPackages) nvidia_x11;
-      cudatoolkit = pkgs.cudatoolkit_9_0;
-      cudnn = pkgs.cudnn_cudatoolkit_9_0;
+      cudatoolkit = pkgs.cudatoolkit_10_0;
+      cudnn = pkgs.cudnn_cudatoolkit_10_0;
     });
 
   tensorflowWithoutCuda = self.tensorflow.override {