From 9123099ace0fd65cf9971e7a945106f05ca90aaa Mon Sep 17 00:00:00 2001 From: Amir MOHAMMADI <amir.mohammadi@idiap.ch> Date: Tue, 19 Oct 2021 14:42:27 +0200 Subject: [PATCH] Squashed commit of the following: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit commit c4b74be2b23d53db9ac98c8fc3f59bbc459e836b Author: Mark Harfouche <mark.harfouche@gmail.com> Date: Mon Oct 18 18:57:52 2021 -0400 Fixup test commit e3d33a9af1ce7dbf97cfd99199f6ac2ae9baaa97 Author: Mark Harfouche <mark.harfouche@gmail.com> Date: Mon Oct 18 17:17:30 2021 -0400 Fix protobuf error commit 9b598130fc535edd5667ad2238a60ab0ee8f4c73 Author: Mark Harfouche <mark.harfouche@gmail.com> Date: Mon Oct 18 17:00:44 2021 -0400 Actually run the tests commit 4550ce3d539f017474cf998300445d0b42ebd85f Author: Mark Harfouche <mark.harfouche@gmail.com> Date: Mon Oct 18 15:05:57 2021 -0400 Expand tests commit d3161f82a483d2237924a6f1c0378735a47fce80 Author: Mark Harfouche <mark.harfouche@gmail.com> Date: Mon Oct 18 13:57:48 2021 -0400 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.12, and conda-forge-pinning 2021.10.18.15.47.12 commit e4b5d188083f3a344bebe01e7ffaf274b380c3ed Author: Mark Harfouche <mark.harfouche@gmail.com> Date: Mon Oct 11 10:43:31 2021 -0400 Unpin libprotobuf commit 3a1f4f0b599cc64110822a7bbaf9ea9351ceae31 Merge: 8812111 932381b Author: Uwe L. Korn <xhochy@users.noreply.github.com> Date: Sat Sep 25 20:06:24 2021 +0200 Merge pull request #131 from xhochy/2.6.0 tensorflow 2.6.0 commit 932381bcf7b3d0233acd383c52d7efbd36a969cc Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Mon Sep 20 11:41:32 2021 +0000 Fix libtensorflow builds commit c4d2785605983d40393783f40f324fbca7fa45fd Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Fri Sep 17 20:52:36 2021 +0200 Add conda-forge/conda-smithy#1497 manually commit 3702e14411cbf18cfcae13d96301826e6d89a251 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Fri Sep 17 20:37:17 2021 +0200 Add conda-forge to update channel commit 55dfae7cee6e45992e03c6b89c046bca892c9d7c Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Fri Sep 17 20:36:09 2021 +0200 Add missing build_estimator commit 62982bfa0584ff3871c1729cb0285a08a0dab8b8 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Tue Sep 7 11:31:45 2021 +0200 Use lief_dev commit 06bb2da4c833970e984a5a23ed57dceeae1f657a Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Sep 16 21:33:39 2021 +0200 Add tensorflow-estimator in the package commit a6525e660f6051c08fbdf5567fca0f1e7967d9cc Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Wed Sep 8 20:41:04 2021 +0200 tensorflow 2.6.0 commit 881211126386a0e122e61ee3a8e43d9770e8a8eb Merge: f18fb00 a8410cb Author: Uwe L. Korn <xhochy@users.noreply.github.com> Date: Fri Sep 3 15:49:17 2021 +0200 Merge pull request #128 from h-vetinari/cve Package v2.4.3 due to CVEs commit a8410cb8392b41a739a5b71f5cece114874cbf1f Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Mon Aug 23 21:08:54 2021 +0200 Add conda-forge/conda-smithy#1497 manually commit ec06b13328db107fa003f1bbe9626ab0f5be308d Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Sun Aug 22 07:21:05 2021 +0200 Tigther pinnings commit 76ebb20c90804975dba4003673ff64a45c6c7650 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Sat Aug 21 07:15:11 2021 +0200 Keep old libprotobuf pin commit d2778d1ee04aebc3921d16ee9a6223a352ed33d5 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Aug 12 19:44:11 2021 +0200 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.12, and conda-forge-pinning 2021.08.12.05.10.51 commit 117cac3452e2e76aa26407b5f914e4667b428601 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Aug 12 19:42:23 2021 +0200 pin grpc_cpp commit 489f3ef4b65606237620a4fde5b3ff83e60443c0 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Aug 12 18:39:52 2021 +0200 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.12, and conda-forge-pinning 2021.08.12.05.10.51 commit 5455bf50e05580849f990a2681409c233a38761c Author: H. Vetinari <h.vetinari@gmx.com> Date: Wed Aug 11 23:04:44 2021 +0200 bump to 2.4.3 commit f18fb006b85678a5180336e5f99f68a9ba20d5ea Merge: 40db5f4 d837e14 Author: Uwe L. Korn <xhochy@users.noreply.github.com> Date: Fri Apr 30 07:12:08 2021 +0200 Merge pull request #114 from regro-cf-autotick-bot/2.4.1_h2a17e8 tensorflow v2.4.1 commit d837e1437547760981d03f2d79c2b8f5decf5293 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Mon Apr 26 09:11:50 2021 +0000 Add icu and sqlite to host/run_exports commit 0cd3666638f3af2fdc19066585a1958ad3fcb121 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Fri Apr 23 20:49:13 2021 +0200 Add h-vetinari as a maintainer commit f65b58254b8d3640ffbbf024b902a497f8c00561 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 22 16:46:45 2021 +0200 Use more TF_SYSTEM_LIBS commit bf2770681c797e00c2d38856a17a92b999dfa0eb Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Wed Apr 21 17:24:42 2021 +0200 Python 3.9 migration commit 08cac0f048b4df56bc0491b07f122033ba75b7e3 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Wed Apr 21 17:22:43 2021 +0200 Update osx-arm64 patch commit ec8eafb0be0c6bb284733aa36c54ddf7c8c15d10 Author: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Tue Apr 13 19:03:35 2021 +0000 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.10.0, and conda-forge-pinning 2021.04.13.13.54.57 commit 939a04d5c1c6b0b80bb0cbf913aa8d1856fe3ea4 Author: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Tue Apr 13 19:03:19 2021 +0000 updated v2.4.1 commit 40db5f43756877bea9e0dd2685cd5683b6527904 Merge: 412026f ee305da Author: Uwe L. Korn <xhochy@users.noreply.github.com> Date: Mon Apr 12 21:24:04 2021 +0200 Merge pull request #110 from h-vetinari/tf2 Continuing the drive to TF2 commit ee305dabfe6e2ce3683d331fc6061874577c4fa2 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Apr 8 14:20:29 2021 +0200 align some selectors commit 743434a6c6d1d4d990d2826d6033abf02e55b04f Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Apr 8 14:18:51 2021 +0200 turn diffs into patches commit b8876a14e461c0fe9fcce0ea42089cd5c49eed8b Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Apr 8 14:14:01 2021 +0200 remove outdated line in build.sh commit 23d2097608c098b34575b316c643d20383d622c9 Merge: 974331f 640d328 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Apr 8 14:07:14 2021 +0200 sort TF_SYSTEM_LIBS before package requirements commit 640d328254d23b9e06ba06af62efeb3c57850ef8 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 8 08:44:30 2021 +0000 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.10.0, and conda-forge-pinning 2021.04.08.08.07.10 commit 4c494277246d56b1d7ebc619b51ad425ae31207d Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 8 08:43:49 2021 +0000 Remove unused patches commit 4733336e9ee8587b4c30b8ae46262326cc54ef4a Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 8 08:42:50 2021 +0000 Re-add tensorflow meta package commit a6baa7624acce86ac6db462363ee5d89c3a8109f Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Tue Apr 6 17:52:09 2021 +0200 Fix requirements for pip check commit f342611eda1265e8fd80f8aef61e41e5c95237a1 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 21:09:00 2021 +0200 Be less strict on build-numpy commit 04440302ace992af7ecc1bfb918c2deacd6351f5 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 21:05:32 2021 +0200 Pin numpy to 1.19.2 commit 998a6714b219ef06da8def251f6770f72ecac686 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 21:05:21 2021 +0200 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.9.0, and conda-forge-pinning 2021.04.01.12.45.45 commit 50efd4aba0e89cbf853f576a5dc43d0577e12ede Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 20:49:19 2021 +0200 Use system libpng commit c30a4d78c309e2cc6644d3bd886d36460a311fd5 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 20:44:30 2021 +0200 Pin numpy, add cross-python commit 033a320ac79ffa3e07f910a234aaf45d10e376f2 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 12:36:39 2021 +0000 MNT: Re-rendered with conda-build 3.21.4, conda-smithy 3.9.0, and conda-forge-pinning 2021.04.01.09.17.11 commit 1a6be0d823dca8143a304fdc603161288887118f Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 12:34:55 2021 +0000 Deactivate unused llvm patches commit 6ed5f3db14717df5d8689b6948fa7c9f614024cc Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 11:59:35 2021 +0000 Linux builds passing commit 753666d73fbd7c572c118f2636a2651178bddb2c Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 12:43:34 2021 +0200 Fix native osx-arm64 build commit bf41b09e8ed7229312d9679e30b76e101f17a1ea Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 10:24:17 2021 +0000 Ensure compile tests really fail if they fail commit c1d96511a8ade09bbbc2f4df70c99306a602f424 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Apr 1 08:53:55 2021 +0000 Fix run_exports commit 628992c190a2cb0fd21e837f0534cef45ab195b3 Author: Uwe L. Korn <uwelk@xhochy.com> Date: Sat Mar 27 11:28:43 2021 +0100 Add pybind11 to TF_SYSTEMLIBS commit b67c4b2082c30f2c55d5e9786334c3652c2553c9 Author: Uwe L. Korn <uwelk@xhochy.com> Date: Sat Mar 27 08:08:27 2021 +0100 Use newer macOS SDK commit 8fcea562335981f0c94380188b0d9abb0bcb4323 Author: Uwe L. Korn <uwelk@xhochy.com> Date: Sat Mar 27 07:20:24 2021 +0100 Add @xhochy as a maintainer commit a2c562a83df6af90e619ea5e6f3e0d9d95924eb4 Author: Uwe L. Korn <uwelk@xhochy.com> Date: Sat Mar 27 07:17:41 2021 +0100 Set target_cpu on osx-64 to darwin commit ba2f163a535d5fe51618ddb5057208cef8902d67 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Fri Mar 26 18:13:06 2021 +0000 Use toolchain on Linux commit 15f61b0bac2a8645dbf17092f862412e91985dd6 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Mar 25 22:19:38 2021 +0100 Copy over toolchain from bazel-feedstock commit d9345ed444e3c003db8b2f4e8351e5550cff4540 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Mar 25 12:19:49 2021 +0100 Add osx-arm64 commit 8d66d8ddb9f8120b36c7aa7dd2bb6f0dcd1e7fc2 Author: Uwe L. Korn <uwe.korn@quantco.com> Date: Thu Mar 18 09:13:52 2021 +0100 Be kind to CI commit 9dc99bbbe4fdfe705d96d2936927da552f2644b1 Author: Uwe L. Korn <uwelk@xhochy.com> Date: Thu Mar 18 07:56:31 2021 +0100 Add changes for osx-64 commit 4aafffaa93dc50336f56c2ebe4071a75ce2a949d Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Feb 4 14:35:19 2021 -0500 tf2 has no sessions any more commit 74b7ff1f163bb00c052c9a630e14c46f1cc84a9f Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Feb 4 10:59:48 2021 -0500 remove a test commit 365f900bf7b4ee0050f5716b2ef093b5afaaea00 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Feb 4 01:59:17 2021 -0500 update tests; update build c lib scripts commit 938d5b6d9b46a3e4c07116a02ddd9785418a704b Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Wed Feb 3 23:01:45 2021 -0500 try to fix bugs commit b6cea1ea823387bf7e330a90ce6a3759a9edbedf Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Wed Feb 3 17:43:38 2021 -0500 use python-flatbuffers commit f02b37ce706590d8c42bd2902f3f6494a0496d9c Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Wed Feb 3 15:33:10 2021 -0500 add files to outputs.tensorflow commit cd460d836033ce53edc6a68a42cde90b08507cd1 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Wed Feb 3 15:30:36 2021 -0500 fix libtensorflow commit 974331fd3924cacdfccb1cc8e2a771fa38a954ed Author: H. Vetinari <h.vetinari@gmx.com> Date: Sun Jan 17 13:57:27 2021 +0100 remove custom_clang_toolchain commit 77c31fbab2e3bbe4acfb40070785dad3ba12dbea Author: H. Vetinari <h.vetinari@gmx.com> Date: Sun Jan 17 13:56:12 2021 +0100 use bazel 3.1.0 from conda-forge commit fb497d1f29a201efb2ca186d335bf947719e1497 Author: H. Vetinari <h.vetinari@gmx.com> Date: Sat Jan 16 10:34:23 2021 +0100 Revert "add review suggestion to tell bazel about resource constraints" This reverts commit 175b26bf4bcd55c8f6bf785c77144b0e1aaa1491. commit 9cf3ad4f3a22ab3d0f5cc4512025ed5b5220166f Author: H. Vetinari <h.vetinari@gmx.com> Date: Fri Jan 15 23:26:37 2021 +0100 exclude pip_package from rsync in cp_libtensorflow_cc.sh commit 175b26bf4bcd55c8f6bf785c77144b0e1aaa1491 Author: H. Vetinari <h.vetinari@gmx.com> Date: Fri Jan 15 23:26:07 2021 +0100 add review suggestion to tell bazel about resource constraints commit 05a1f275929c92c846e9576d0bbbef52a359231a Author: H. Vetinari <h.vetinari@gmx.com> Date: Fri Jan 15 12:21:50 2021 +0100 add curl on win commit 50b01bdef3f0f7dd1e782c35256c275d09472c8c Author: h-vetinari <h.vetinari@gmx.com> Date: Fri Jan 15 10:35:36 2021 +0100 removed swig from TF_SYSTEM_LIBS to follow upstream Co-authored-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> commit f62c3756c520e266c21e1a82012345cb162f9d26 Author: H. Vetinari <h.vetinari@gmx.com> Date: Fri Jan 15 00:10:43 2021 +0100 use m2-versions of zip/unzip on windows commit ffc86fde32b4222e0595434ddea86bd61d3d054f Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 23:18:00 2021 +0100 Revert (morally speaking) "use bazel from conda-forge" Unfortunately, bazel 3.1.0 isn't built in conda-forge, starts again at 3.4.1 for unix, 3.6.0 for windows This reverts commit 94bd4c8bc3a10c87076706852f2078339071c803. commit af5cef9b47cc07d078437ea15926eeec447bb9d4 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 23:08:57 2021 +0100 try adapting windows build script too commit eef63433da5a2a5b0c8ad5e7294c1e6963cf08a7 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 22:46:14 2021 +0100 no distinction in build.sh between osx/linux commit 5cec8010aa3473cdef989cbde33941c063b0a189 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 22:44:31 2021 +0100 rebase patches for 2.4.0 commit 266a1ace0b5fce1d4d16d23dab6b856101766089 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 23:12:03 2021 +0100 update dependencies for 2.4.0 commit 55b17a0a7b796439e909bc743e853f3be912616c Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 22:25:41 2021 +0100 bump to 2.4.0 commit c88dd324859367f5a2509f1029015a593731d146 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 23:11:39 2021 +0100 remove (a-priori) unnecessary selectors commit 992a52b14ddc614172e75b38623a6b16e8b5d5a6 Author: H. Vetinari <h.vetinari@gmx.com> Date: Thu Jan 14 22:18:55 2021 +0100 let's build from source everywhere commit afcc7a783ddb682a6790354be4535c4159c54939 Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 22:55:05 2021 +0100 regenerate llvm.BUILD and refactor patches to do this more easily when rebasing commit 65b66489feae9142362b2f9f308751b3d381e297 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Tue Jan 12 17:07:50 2021 -0500 update the script for libtensorflow_cc commit ae2734d3a8a8b52df690edead4eaab2b2451f161 Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 22:29:29 2021 +0100 repin bazel commit 97404d97b2208c01451b3e0f7ae9be875a4b3cc1 Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 22:12:18 2021 +0100 align some selectors commit 5a4628e5627d26c2d9f389051646a67bdd951d30 Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 21:47:24 2021 +0100 remove some upper version limits commit 94bd4c8bc3a10c87076706852f2078339071c803 Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 21:45:39 2021 +0100 use bazel from conda-forge commit c7a021ba8054cedaeacecac20074e73d02dd48f3 Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 22:11:39 2021 +0100 move old patches out of the way commit 2ac12474353598ed631a0a1dc7a103ceb7327c3a Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 21:38:49 2021 +0100 clean up patches commit f33999470a51c56a2e18f74e0f9205eedaceb6be Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 21:19:55 2021 +0100 MNT: Re-rendered with conda-build 3.21.1, conda-smithy 3.8.6, and conda-forge-pinning 2021.01.11.19.34.08 commit 8937c9ed2ec8974a0c071ab599547e8525aec5d8 Merge: 5e7349a 412026f Author: H. Vetinari <h.vetinari@gmx.com> Date: Mon Jan 11 21:09:17 2021 +0100 Merge remote-tracking branch 'upstream/master' into tf2 commit 5e7349a55cbf19edfa9b63d840b93a701bbdc561 Author: conda-forge-linter <github-actions@email.com> Date: Tue Dec 1 08:58:17 2020 +0000 MNT: Re-rendered with conda-build 3.20.5, conda-smithy 3.8.5, and conda-forge-pinning 2020.11.30.18.15.16 commit 5ade0206adc01128e62f91898026c10ad917d4ed Author: conda-forge-linter <github-actions@email.com> Date: Fri Nov 13 14:18:57 2020 +0000 MNT: Re-rendered with conda-build 3.20.5, conda-smithy 3.8.5, and conda-forge-pinning 2020.11.12.21.52.18 commit 412026f5888b0320819889318e10e53dfc5c830c Author: conda-forge-admin <conda-forge-admin@email.com> Date: Sun Aug 9 05:44:07 2020 +0000 [ci skip] [skip ci] [cf admin skip] ***NO_CI*** admin migration CFEP13TokenCleanup commit 2342fc2f4fc64378f794316c2f09ce8847f484b3 Merge: 9118fe1 0d40952 Author: Marcelo Duarte Trevisani <marcelotrevisani@users.noreply.github.com> Date: Wed Jul 15 18:09:50 2020 +0100 Merge pull request #105 from brendanf/1.14.0 1.14.0 commit 0d409529ad6147229ef8309b470efe999964adaf Author: brendanf <brendan.furneaux@gmail.com> Date: Sat Jul 11 00:21:36 2020 +0200 rerun generate_llvm_build.py and update patch commit b5a709a69f5da6f00bdb9efc6c242ead2a33810d Author: brendanf <brendan.furneaux@gmail.com> Date: Fri Jul 10 14:07:39 2020 +0200 Remove LLVM lib files not present in 9.0 commit 2dfcbfff39ef828a909b3cf4081dbec2535adbcc Author: brendanf <brendan.furneaux@gmail.com> Date: Thu Jul 9 23:40:47 2020 +0200 bump llvm version on linux, fix license lint commit 04a2010333d381e008c86404e7e4c4a1ce97ac88 Author: brendanf <brendan.furneaux@gmail.com> Date: Thu Jul 9 19:21:22 2020 +0200 update bazel version commit d7eee2a45182b31c714cf5bd3649b0ede371d020 Author: conda-forge-linter <github-actions@email.com> Date: Thu Jul 9 16:42:57 2020 +0000 MNT: Re-rendered with conda-build 3.19.2, conda-smithy 3.7.4, and conda-forge-pinning 2020.07.07.19.27.52 commit 937686b9485dbaff60d4be0f356ac61e39141426 Author: brendanf <brendan.furneaux@gmail.com> Date: Thu Jul 9 18:17:03 2020 +0200 resolve patching failures commit ccdb8f34573902d58e86068524ae83147b6c8423 Author: hajapy <hajapy@users.noreply.github.com> Date: Sun Sep 29 14:32:23 2019 -0400 try newer numpy commit 64a7c88aab16f402a091e5388cd364e18451a8c3 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Sat Sep 28 14:45:49 2019 -0400 Fix sha commit 6cd5b548316595c654a76d806bb9bacbba86d6e0 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Sat Sep 28 14:23:12 2019 -0400 Fixup commit b6543ebdedf8a22bff04a440e00021f1969756f0 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Thu Sep 26 15:14:41 2019 -0400 google_pasta -> google-pasta commit 052dd7f9cfebe04216c89c2db38be570ed1a229e Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Thu Sep 26 15:04:58 2019 -0400 Update v1.14.0 commit 3d1221c13b472a585187d972a7112b332d78b32d Author: Marcelo Trevisani <marceloduartetrevisani@gmail.com> Date: Mon Jul 6 20:38:43 2020 +0100 MNT: Re-rendered with conda-build 3.19.2, conda-smithy 3.7.4, and conda-forge-pinning 2020.07.06.18.43.00 commit 5e3337ff2703e40cbbf82615f8b2f6a7530b56c2 Author: Marcelo Trevisani <marceloduartetrevisani@gmail.com> Date: Mon Jul 6 20:38:10 2020 +0100 Remove pinned compiler commit 976c487cebb7cb21be235e68ab64701cff6df9b2 Merge: f621e30 dfac069 Author: Marcelo Trevisani <marceloduartetrevisani@gmail.com> Date: Mon Jul 6 20:22:21 2020 +0100 Merge branch '220' of https://github.com/jschueller/tensorflow-feedstock into 220 commit f621e3040cedcce471e7258015501e1635d80f37 Author: Marcelo Trevisani <marceloduartetrevisani@gmail.com> Date: Mon Jul 6 20:21:59 2020 +0100 MNT: Re-rendered with conda-build 3.19.2, conda-smithy 3.7.4, and conda-forge-pinning 2020.07.06.18.43.00 commit 89d9deca77da77c45af020e16a2af40cd463b6cf Author: Marcelo Trevisani <marceloduartetrevisani@gmail.com> Date: Mon Jul 6 20:20:04 2020 +0100 Fix tests commit dfac069c202cc1a10ed687feb325a7889a8f1000 Author: conda-forge-linter <github-actions@email.com> Date: Mon Jul 6 19:09:03 2020 +0000 MNT: Re-rendered with conda-build 3.19.2, conda-smithy 3.7.4, and conda-forge-pinning 2020.07.06.18.43.00 commit b34ad77c490470143b9c5a09d0e44d1b618d47f5 Author: Julien Schueller <schueller@phimeca.com> Date: Wed Jun 24 15:28:30 2020 +0200 debug commit db5be3abc3384b84fc0307e5b22cbd4d36ad8f13 Author: Julien Schueller <schueller@phimeca.com> Date: Wed Jun 24 14:30:29 2020 +0200 nasm commit c0e6e8c65bc5be4991e7129993eef9efff178d27 Author: Julien Schueller <schueller@phimeca.com> Date: Wed Jun 24 13:57:25 2020 +0200 debug commit 300bee8ade9f2d2a5d87fe9da236cd1c3c301422 Author: Julien Schueller <schueller@phimeca.com> Date: Wed Jun 24 09:41:47 2020 +0200 debug commit d26eab837706e24fa7c613fc5f0a1cbb7fff296d Author: Julien Schueller <schueller@phimeca.com> Date: Wed Jun 24 09:28:58 2020 +0200 llvm commit f1a46ed4b5ba92ffad067dca938b1fa90aed92d1 Author: Julien Schueller <schueller@phimeca.com> Date: Wed Jun 24 08:50:18 2020 +0200 disable xla commit 393fdfbca54f3292608b96359ce9d4e4f0e9825b Author: Julien Schueller <schueller@phimeca.com> Date: Tue Jun 23 17:30:17 2020 +0200 entrypoints commit 6c2d236b93459b4edd6fad05188b700d5c6e8e00 Author: Julien Schueller <schueller@phimeca.com> Date: Tue Jun 23 17:18:39 2020 +0200 cleanuos commit dfba61f2b8e5d195f057be0520c47f7b8157c9b0 Author: Julien Schueller <schueller@phimeca.com> Date: Tue Jun 23 16:43:32 2020 +0200 Remove build_pkg scripts commit bd05923f73e23cc39ab585aa95c635eae51a9a33 Author: Julien Schueller <schueller@phimeca.com> Date: Tue Jun 23 16:34:58 2020 +0200 deps commit 9460660d7b97df27553d34d7e412a30a253e3d69 Author: Julien Schueller <schueller@phimeca.com> Date: Tue Jun 23 14:32:00 2020 +0200 Update to 2.2.0 commit 4316bd35089a07307fe6b7acd8f378452661b179 Author: conda-forge-linter <github-actions@email.com> Date: Tue Jun 23 12:34:46 2020 +0000 MNT: Re-rendered with conda-build 3.19.2, conda-smithy 3.7.3, and conda-forge-pinning 2020.06.23.06.07.46 commit 9118fe1d94197a81ae0f871f4a6040b34a02aaa3 Merge: 1d09091 e25043d Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Tue May 26 14:44:49 2020 -0500 Merge pull request #103 from jjhelmus/rm_jjhelmus_as_maintainer remove myself as a maintainer commit e25043db5690b42eb49ed8dd58ad6a288430a7f2 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Tue May 26 14:44:09 2020 -0500 remove myself as a maintainer I no longer have time to keep this feedstock up-to-date commit 1d09091d168f8365637f840d08c50cd48431a95e Author: conda-forge-admin <conda-forge-admin@email.com> Date: Wed May 20 04:19:25 2020 +0000 [ci skip] [skip ci] [cf admin skip] ***NO_CI*** admin migration CFEP13TokensAndConfig commit 95e300f3d7a2fc283d77987bf16bfa7c4eae96de Author: conda-forge-admin <conda-forge-admin@email.com> Date: Mon May 18 10:15:09 2020 +0000 [ci skip] [skip ci] [cf admin skip] ***NO_CI*** admin migration CondaForgeAutomerge commit 358e26fb8043075c21c56136a00d5a98ea735808 Author: D.J. Sutherland <dougal@gmail.com> Date: Sat May 2 19:35:57 2020 -0500 remove myself as maintainer [skip ci] [ci skip] commit 9b2fb41fea57882ac13cdd80ff0e626202c68303 Author: conda-forge-admin <conda-forge-admin@email.com> Date: Tue Mar 3 05:24:10 2020 +0000 [ci skip] [skip ci] [cf admin skip] ***NO_CI*** admin migration AutomergeAndRerender commit 7673eabc223bbf3c80e5ca83ef42249951ad292c Merge: da3cfb4 b6229f4 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Mon Sep 30 21:34:04 2019 -0400 Merge pull request #96 from hajapy/v1.13.2 Update for v1.13.2 commit b6229f4508dc2b5671d5ab8d872b13cdcb2f8e32 Author: hajapy <hajapy@users.noreply.github.com> Date: Mon Sep 30 10:01:45 2019 -0400 update for v1.13.2 commit da3cfb43c36cf0e71efc653e257d4232b8a985c0 Merge: 5a16c31 472d4b4 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Sun Sep 29 14:23:04 2019 -0400 Merge pull request #95 from hajapy/fix-sha256 Fix sha256 values commit 472d4b4169399f51bad73d5ff52e939c1a6aa2cc Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Sat Sep 28 20:16:41 2019 -0400 Restrict llvmdev version commit 3af4a15956340f52c59dcbc8a8fb54710c084ac3 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Sat Sep 28 17:37:16 2019 -0400 Update selector syntax commit 3c4b33ba43acaaca27cb9c88a285fb26284437d3 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Sat Sep 28 14:26:47 2019 -0400 Fix sha256 values commit 5a16c31c2073ac6efcaef7fe406e4835ea400c9a Merge: 4b24325 4ec6c2f Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Thu Sep 12 05:11:06 2019 -0700 Merge pull request #92 from njzjz/remove remove libprotobuf requirement commit 4ec6c2fa78a2bdf2d00ede3a041270a475306a37 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Wed Sep 11 23:06:11 2019 -0400 run the test programs commit 10b4184114f046176e21661854bc8e6c2d715871 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Wed Sep 11 18:45:41 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.5, and conda-forge-pinning 2019.09.08 commit 685eafe190a6c228b80f9d65e9ed27481f1a97e9 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Wed Sep 11 14:42:32 2019 -0400 remove libprotobuf requirement commit 4b24325c6463cd5cc8828db1bfeb481a002c581a Merge: 78d7daf 2193e32 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Tue Sep 10 14:46:00 2019 -0400 Merge pull request #88 from njzjz/testcc add tests for libtensorflow and libtensorflow_cc commit 2193e3213e2c67f38ff4fd813714e0f7699427e5 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Tue Sep 10 08:55:51 2019 -0400 Update recipe/meta.yaml commit 11e93489ad71844348d939878517d713298cd949 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Tue Sep 10 01:03:05 2019 -0400 Update cp_libtensorflow_cc.sh commit 34a2ed1a9ecae3632c7ba5a8d375af1909c96c05 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Tue Sep 10 00:04:41 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.5, and conda-forge-pinning 2019.09.08 commit 9d696b4ea7e3a8b1516cc4cb9fd26fbc3439f412 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 20:01:53 2019 -0400 Delete tf_generate_proto_text_sources.diff commit 4953ee30fa34a0eee774f1f6db8911f8522e4f7a Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 20:01:08 2019 -0400 revert commit 2844978270edaf758c71476fba7139c35c306cac Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 19:59:22 2019 -0400 revert, set libprotobuf version directly since a compile error commit f4b8fd20cd8ec581987b03bbe426a15b877ada79 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 19:47:48 2019 -0400 fix commit 5f18f34d27bd2a1f1e6254639acd04cbc06cae4b Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 19:35:04 2019 -0400 add patches/tf_generate_proto_text_sources.diff commit a0fa2485fe445349f39a303f125d534a59240d86 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 19:15:57 2019 -0400 bazel-tensorflow is bazel-work here commit 5599d3b639d2ac06a79bbe77e0cb7a7ba868d4f5 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 18:41:20 2019 -0400 add protobuf_archive to TF_SYSTEM_LIBS commit 5327f7e47d2d702e797e0cfcca8f5aa710808ca3 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 18:17:41 2019 -0400 fix eigen directory commit 78d7daf1feac61b1f7b5e235da943ac4a86e803a Merge: 8b29c16 eea5e65 Author: jakirkham <jakirkham@gmail.com> Date: Mon Sep 9 16:55:10 2019 +0200 Merge pull request #91 from conda-forge-linter/conda_forge_admin_90 MNT: rerender commit eea5e6578cbe7e070bac738e4f9fe97eb533132a Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Mon Sep 9 14:54:35 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.5, and conda-forge-pinning 2019.09.08 commit 46f8b8b019d6f7b6c9516250d15b16ad3df25ffa Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 09:57:35 2019 -0400 pin libprotobuf for libtensorflow_cc commit 8b29c16a3bf2f7b3cdc183032cf9882d819cb13a Merge: ba31e29 2b79a48 Author: Andrew Achkar <hajapy@users.noreply.github.com> Date: Mon Sep 9 07:51:59 2019 -0400 Merge pull request #89 from dhirschfeld/dhirschfeld-patch-1 [ci-skip] Remove dhirschfeld from maintainers commit 2b79a4896b189f7a116ff1f6fd971bcf670c60ee Author: Dave Hirschfeld <dave.hirschfeld@gmail.com> Date: Mon Sep 9 15:14:37 2019 +1000 Remove dhirschfeld from maintainers commit a6c46512071d2eecdc26f065b8707401ef574a1a Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 00:55:10 2019 -0400 add test requires commit 266843fd6ce5abf1ae3f4946798b013be4c682c0 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Mon Sep 9 00:50:51 2019 -0400 add tests for libtensorflow and libtensorflow_cc commit 4f75ad8de0fcd3a59230184d3ab6885041b8259c Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Sun Sep 8 05:02:01 2019 -0400 correct absl include directory (following #86) commit ba31e29554d5e8318734b0d4e00fc5f9a29e3a59 Merge: 69730ae ff5006d Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Sun Sep 8 00:31:52 2019 -0400 Merge pull request #86 from njzjz/headers fix libtensorflow_cc headers commit ff5006df56176cc539014793668e9bb01378f3db Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Sat Sep 7 17:11:20 2019 -0400 fix commit 9cf8779727bf63c8be6cf917d9b8ef957496f03c Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Sat Sep 7 04:29:18 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.5, and conda-forge-pinning 2019.08.27 commit 69730ae7b4c207d6229a07279242f798fe48a542 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Fri Sep 6 18:23:11 2019 -0500 [ci skip] ***NO_CI*** Move from appveyor to azure. See https://github.com/conda-forge/conda-forge.github.io/issues/857 commit cb832cb8796b85a19a150d1e06386607ebd29289 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Fri Sep 6 09:08:51 2019 -0400 bump version number commit 4bc56166c8d2b4de6dcc7e6a06f0282d615e496e Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Fri Sep 6 09:08:16 2019 -0400 typo commit a4cfb5f393d7d326ceea5cc78a67f42b56677e8e Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Fri Sep 6 09:07:18 2019 -0400 fix libtensorflow_cc headers commit de9a5396af00a703136f84e9196eaae0952c46b5 Merge: ce2d8e8 5b51cb4 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Sun Aug 25 20:30:51 2019 -0500 Merge pull request #84 from jjhelmus/fix_pinnings Fix requirements of tensorflow and tensorflow-base package commit 5b51cb40b91e565a1c73d56eb8acdd5c88a875b6 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Aug 25 14:49:44 2019 -0500 libz -> zlib commit 447e2e74f19738143237f4705600d909fd679cf3 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Aug 25 14:24:48 2019 -0500 add requirements to outputs to pick up run_exports commit 3b9dffb305122acf68cabcdc4fd4751e12eaa145 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Aug 25 14:11:29 2019 -0500 bump build number commit 6bd59f471878ec4ae7e58ec3dc13733794ab03c2 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Aug 25 14:02:18 2019 -0500 use run_export for pinnings Use the run_export to define the run requirements of the zlib, libprotobuf, libpng and libcurl dependencies. commit eff1904881034ecea818349ec4b47a34695014c7 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Aug 25 14:00:28 2019 -0500 pin tensorflow to an exact tensorflow-base build The tensorflow packages in defaults are pinned to an exact -base package. To prevent mixing of channel follow that pattern here. This may result in more tensorflow packages but these are metapackages which are small. The clarity is more important that any small reductions in size or package count. commit ce2d8e8d32a9c0fe4b65ae862a5d62f1d8b0a9e8 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 22 10:08:16 2019 -0400 trigger CI commit acfffac852f1fb4d9ece18f4259e493abbdd5d1e Merge: 9c740ad ecca6cf Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 22 07:01:42 2019 -0400 Merge pull request #81 from njzjz/njzjz-patch-2 pin run dependencies to fix linux builds commit ecca6cf47d577cc21b6f406a35dd652f3c808dc7 Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Thu Aug 22 02:08:58 2019 -0400 Update meta.yaml commit 73c8d12e8c6233054eb361ee563bce0f7c654fda Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Thu Aug 22 02:05:49 2019 -0400 Update meta.yaml commit 648198aedb6487ef6e462545471ec3bb5c07a221 Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Thu Aug 22 01:55:48 2019 -0400 use pin_subpackage commit e94f7b8b1b6ba792ddbb00dac18524196e4e3e89 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Thu Aug 22 00:41:02 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.1, and conda-forge-pinning 2019.08.19 commit d7547abec71acdb5ea207d308003506f602f5ae6 Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Wed Aug 21 20:38:15 2019 -0400 pin run dependencies and try to fix linux builds keep packages aligned to fix current dependency problems commit 9c740ad8df723246fe81f88568c5689c89c6d2b5 Merge: c53540d bb1b160 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Wed Aug 21 11:43:07 2019 -0500 Merge pull request #80 from njzjz/libtf2 libtensorflow (revert osx builds in #78) based on #79 commit bb1b1606a9e5560558bee9f8d9f680fb703adbc1 Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Sun Aug 18 15:38:32 2019 +0800 Update meta.yaml commit 40b39f561acb4f6af3848a0f2d97abd2e2a99f2c Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Sun Aug 18 13:57:36 2019 +0800 revert osx commit 79b6cb26670be0f6c879f62ee2f5804ee55b713c Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Sun Aug 18 00:25:59 2019 +0800 add lrt linkopt commit 159535a34a12dc0522cfa28048534319255e30a2 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Sat Aug 17 11:52:15 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.1, and conda-forge-pinning 2019.08.12 commit 49430e6b1ac25d652090ace89dd301e13bf71a66 Merge: 4c825ab 41aa021 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Sat Aug 17 19:49:51 2019 +0800 merge from #78 commit 4c825aba2e7d7f727ae1602cf40a57681954ba32 Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Sat Aug 17 04:07:22 2019 +0800 let tensorflow-base be requirement of tensorflow commit 41aa0213e70b3564b6faa421dbcaada384eb7143 Author: Isuru Fernando <isuruf@gmail.com> Date: Fri Aug 16 11:19:29 2019 -0500 Use libcurl commit 7e7646b0af0808646c11cd147fe40acd525bd3f6 Author: Isuru Fernando <isuruf@gmail.com> Date: Fri Aug 16 11:19:05 2019 -0500 use custom_clang_toolchain commit 3190df0fe438846c2d37ad0eb482774c70ba62e6 Author: Isuru Fernando <isuruf@gmail.com> Date: Fri Aug 16 01:13:21 2019 -0500 Update build.sh commit f8b724adb66dd603c6fa74a3bd1ac8efae9a9863 Author: Isuru Fernando <isuruf@gmail.com> Date: Fri Aug 16 00:47:37 2019 -0500 Update build.sh commit b65db6119da7fbf39ee04996a54972f4737bbca5 Author: Isuru Fernando <isuruf@gmail.com> Date: Fri Aug 16 00:21:26 2019 -0500 Update conda_build_config.yaml commit 30a00d0b2f4bfbea0b1345437736602b8e5cc63f Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 19:58:02 2019 -0500 Update 0008-Add-alternate-clock_gettime-implementation-for-macOS.patch commit d2a20e1c36511cb36d020d4b0de5d54cff29269b Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 16:38:53 2019 -0500 Update build.sh commit 7da4bd42f2845415a7deaa44652aaa1cead451ac Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 16:53:11 2019 +0000 Fix file name commit 767992724aed0fe1e24f28acab62a5107a648599 Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 16:33:15 2019 +0000 Another fix for osx commit 0209358c16c9f0eb2548ad64dc98d94c0b750550 Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 16:09:30 2019 +0000 Fix osx commit c30414a9e73baa5b0bfa128a042af46761fff68f Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 15:48:47 2019 +0000 Add osx support commit 367b0eee4a9617ae5e209e311d8095c420400f67 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Thu Aug 15 07:42:56 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.1, and conda-forge-pinning 2019.08.11 commit e98c7ef1ca46236c6c086697e7dfaa9690bb6705 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 03:38:50 2019 -0400 fix commit 4cfb3551b16fb495259c3ad9b45d065faa15144d Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 02:58:39 2019 -0400 lint commit 2e1e136918b15cbeba3692ce20cbb41a72e0814b Merge: 1be5796 1ffc723 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 02:57:36 2019 -0400 Merge branch 'libtensorflow' of https://github.com/njzjz/tensorflow-feedstock into libtensorflow commit 1be57967f892f82a75613bad44d3cb354478aedb Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 02:57:23 2019 -0400 update commit 1ffc723d005e21f455ebbb67b6c3b15ae62ab621 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Thu Aug 15 06:25:20 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.1, and conda-forge-pinning 2019.08.11 commit 78f6f6e3ed5134fd47cb4de28514519c86ea8820 Author: Jinzhe Zeng <jzzeng@stu.ecnu.edu.cn> Date: Thu Aug 15 14:24:17 2019 +0800 Update meta.yaml commit 0e978b40035f7a72ef17e1d046cca1e6822b1c73 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 02:23:06 2019 -0400 fix name commit a9672e5724fee9adb4fb15eb493125e2e6d2d1f1 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Thu Aug 15 06:20:09 2019 +0000 MNT: Re-rendered with conda-build 3.18.9, conda-smithy 3.4.1, and conda-forge-pinning 2019.08.11 commit 917674efe90f138fbd0a8ff03c3eadfac6de5f71 Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 02:18:46 2019 -0400 entry_points commit 829c51153a4d5ae6c2257d82fefab004a6972c2f Author: Jinzhe Zeng <jinzhe.zeng@rutgers.edu> Date: Thu Aug 15 02:10:49 2019 -0400 libtensorflow and libtensorflow_cc commit 0fc675671c045e0f6b9f468b73809301ebf7b872 Author: Isuru Fernando <isuruf@gmail.com> Date: Thu Aug 15 03:34:56 2019 +0000 Unbundle llvmdev commit c53540d3701476069551a17e3859bb0da4427ede Author: Daniel Rodriguez <df.rodriguez143@gmail.com> Date: Wed Aug 14 14:15:52 2019 -0500 Remove danielfrg from maintainers (#77) commit 5b95e7fb21058dec0722437cb4d0908bda45359d Merge: 23a51f3 c37a2b8 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Thu Aug 8 13:05:12 2019 -0500 Merge pull request #74 from ocefpaf/build_all Build all commit c37a2b8b3d9eda6737934aea12eef0eeb02426be Author: Filipe Fernandes <ocefpaf@gmail.com> Date: Thu Aug 8 08:32:04 2019 -0300 try *.whl commit fc450a3cfd1c7b987acdd9bb6f2ce921ddd78e67 Author: Filipe Fernandes <ocefpaf@gmail.com> Date: Tue Aug 6 14:42:21 2019 -0300 fix checksum commit cd51006580f56880e045d2d7b40b4d71cd9f967e Author: Filipe Fernandes <ocefpaf@gmail.com> Date: Tue Aug 6 14:27:19 2019 -0300 does this work? commit 2a49663eea0ad401856361aa6f65b98f9157d5bc Author: Filipe Fernandes <ocefpaf@gmail.com> Date: Tue Aug 6 13:40:00 2019 -0300 Try script again. commit 43d3c348735573ca3bfac997f7b4d0d3dd9e19a7 Author: Filipe Fernandes <ocefpaf@gmail.com> Date: Tue Aug 6 13:18:02 2019 -0300 fix copy-n-pasta commit 03cea711777243b4359de21594398c99586feded Author: Filipe Fernandes <ocefpaf@gmail.com> Date: Tue Aug 6 12:25:14 2019 -0300 Build from source on Linux and wheels for the rest. commit f657fe9d9cf04c94da9a66727aad695b89e552e5 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Tue Jul 16 19:23:09 2019 +0000 MNT: Re-rendered with conda-build 3.18.7, conda-smithy 3.4.0, and conda-forge-pinning 2019.07.15 commit 919ca7361844d82c5f8f599a27e8b36eef98c580 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Thu May 2 10:51:53 2019 -0400 bump build number commit 7652a1379ee0c974ae48849c62897191e086074c Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Thu May 2 10:49:17 2019 -0400 MNT: Re-rendered with conda-build 3.17.8, conda-smithy 3.3.4, and conda-forge-pinning 2019.04.25 commit b75a61804f50ead07fe28a5138181eee749dcda9 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Thu May 2 10:48:20 2019 -0400 remove tf_variant from cbc.yaml commit 932729d24b7cd6d76976b483a17dc1bad76a7ba0 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Thu May 2 10:24:37 2019 -0400 add custom clang toolchain files commit fb729e1fdf53af34aecc6794348d5b17f2cb809b Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Thu May 2 10:24:22 2019 -0400 add keras-* requirements commit c7befb02267a264d2449aaf36f6706ff29fcb791 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Wed May 1 22:46:12 2019 -0400 avoid circular dependency commit f35ac5145ef9ea453cd7706ac01a3e7241d4086c Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Wed May 1 22:29:37 2019 -0400 build tensorflow from source commit 23a51f3c0f98abb44422a6f9921cafe120ce60bc Merge: 034249e 9f0eac1 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Tue Apr 16 09:29:38 2019 -0500 Merge pull request #66 from kyleabeauchamp/tf113 Re-render feedstock, upgrade version to 1.13.1 commit 9f0eac1dacd57730f476b5711fa2800a262ef688 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Thu Apr 11 11:07:06 2019 +0000 MNT: Re-rendered with conda-build 3.17.8, conda-smithy 3.3.2, and conda-forge-pinning 2019.04.10 commit b904c92848ce41aaefe65964d4c7d81a329ed66f Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Fri Mar 1 18:11:09 2019 -0800 Dummy whitespace change to trigger CI commit 3be25fd81b75657bb1d7b532d8e948439b1ac776 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Feb 26 19:59:06 2019 -0800 Add tensorflow-estimator requirement commit 188abe02a13bdef57e4cf2cb8428b5bdefb78027 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Feb 26 19:58:40 2019 -0800 Add back tensorboard req commit a7c7b1f9c342cb9c34910cb92ec8ef6c01307e27 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Feb 26 19:58:06 2019 -0800 Adjust minimum versions of protobuf, keras-applications, and keras-preprocessing commit 746e07969b45ae0cb09cdb8da7cadd96f97152a7 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Feb 26 11:08:02 2019 -0800 Skip all windows commit b6cf63e33ec85a68130c73e96d5ae4359c84177c Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Feb 26 10:45:55 2019 -0800 Update recipe to official 1.13.1 release commit 374e3b808b782b682f94914bbd3f9b9bd2700c20 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Thu Feb 21 12:53:15 2019 -0800 Try to force recent numpy to fix import error commit 5833f1e3a5ad330964a51bd3ac7d9091a732dcd0 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Thu Feb 21 12:26:12 2019 -0800 Add keras-preprocessing to requirements commit a775aca9415ac848281096d4b453055b5662b52c Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Thu Feb 21 11:59:47 2019 -0800 Fix typo in keras-applications commit e9ceab8ec00561616fcd2e9f26d096db98f15b8b Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 17:35:36 2019 -0800 Add keras_applications to run requirements commit 8690915d51d607f9e368415e8ecd31c341006e08 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 17:20:42 2019 -0800 Tensorboard commit bf9993225ea3efc614d32a92c7e5062ab90355be Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 13:43:37 2019 -0800 Fix typo commit fba66de382921ab4d1de42b9340dde5da7e2492a Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 13:32:01 2019 -0800 Try to bump to 1.13.0rc2 commit e717e082536c5a259c7c59dfc494288c4f23f272 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 11:28:33 2019 -0800 fix build sh commit 914fd8426233b2395259127109f69175d298deb0 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 11:23:13 2019 -0800 Fix bld.bat commit fff57c049653dbf7dc6d46033bb1b1532b34f45f Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 11:19:15 2019 -0800 Upgrade recipe to 1.12 commit cca6c86a66ea9f9c8b80d18986614cbb9516fadd Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Feb 20 11:14:18 2019 -0800 MNT: Re-rendered with conda-build 3.9.1, conda-smithy 3.2.13, and conda-forge-pinning 2019.02.15 commit 034249e4e9a5a026f4bda812dfadef89ff5199b3 Merge: 7520de5 4128577 Author: Dougal J. Sutherland <dougal@gmail.com> Date: Thu Aug 16 18:48:58 2018 +0100 Merge pull request #62 from kyleabeauchamp/110 Update tensorflow version to 1.10.0 commit 41285772ec3887589e79ae556b3b50b8ab4f9922 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Aug 15 10:49:47 2018 -0700 dont grep for usage in tensorboard test commit 2b6dab95e8f0a731ab0723c0da8ec772657a2c8c Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Aug 15 09:03:52 2018 -0700 Fix commit 1226769c4bc39e6d6545a8b8d485b3fe00e9e03c Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Wed Aug 15 08:51:32 2018 -0700 Fix commit d2df656add13e75f6ca4791aea6bc6b677c30637 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Aug 14 08:56:25 2018 -0700 Update protobuf min. commit 7f5736c77288fd08f8c06012835a364d69cbf3a7 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Aug 14 08:51:19 2018 -0700 Update templates from rerender commit aa1631988fc67ba0225026e440c9e48daabfeb23 Author: Kyle Beauchamp <kyleabeauchamp@gmail.com> Date: Tue Aug 14 08:47:26 2018 -0700 Update tensorflow version commit 7520de5b77f3f873b28ad6524a201444ed47fee4 Author: Travis CI User <travis@example.org> Date: Sat Aug 4 17:00:35 2018 +0000 [ci skip] [skip ci] Update anaconda token commit b5873a3c1feb3aa607a6658a69fe92727bd4db1a Merge: 067eb99 92ec888 Author: Dougal J. Sutherland <dougal@gmail.com> Date: Mon Jul 23 15:42:19 2018 +0100 Merge pull request #58 from FarhanTejani/master Upgrade to Tensorflow v1.9.0 commit 92ec888b35c976bb78cfa96bff6745c60fdd05fc Author: Dougal J. Sutherland <dougal@gmail.com> Date: Mon Jul 23 13:45:19 2018 +0100 try adding tensorboard entry point back in commit 59680ab3f990601b7de6ae7d6ca97c6ca0a8cc84 Author: Dougal J. Sutherland <dougal@gmail.com> Date: Thu Jul 19 16:43:34 2018 +0100 better conda-based dep syntax for tensorboard Sorry for flurry of commits. :/ commit 36c6e8116478bf66add9023b2e50dfab975d1e3f Author: Dougal J. Sutherland <dougal@gmail.com> Date: Thu Jul 19 16:42:45 2018 +0100 fix tensorboard dep syntax I think the space doesn't work.... commit 1388fd43521a5b09759ac28f97b7a0c7d48f2617 Author: Dougal J. Sutherland <dougal@gmail.com> Date: Thu Jul 19 16:42:11 2018 +0100 remove tensorboard entry_point commit c815f76801dba5e6f3d25e52a198d36710da171b Author: Farhan Tejani <FarhanTejani@users.noreply.github.com> Date: Mon Jul 16 22:09:31 2018 -0700 MNT: Re-rendered with conda-smithy 3.1.6 and pinning 2018.07.15 commit 4779817e845d91ebfbe89895782423c07a32cb5a Author: Farhan Tejani <FarhanTejani@users.noreply.github.com> Date: Mon Jul 16 22:08:54 2018 -0700 Upgrade to Tensorflow v1.9.0 commit 067eb996fa3865fb35ad6144463ee6dbd47c7a3e Merge: 9c3793b 65867e4 Author: Dave Hirschfeld <dave.hirschfeld@gmail.com> Date: Sun May 13 20:06:23 2018 +1000 Merge pull request #55 from jschueller/patch-1 Require mock commit 65867e4b0d3d1047e0c44399bbc059ab5e9ca4a8 Author: Julien Schueller <schueller@phimeca.com> Date: Sat May 12 14:18:28 2018 +0200 Require mock commit 9c3793b408745b53499a30d458025162c33a154d Merge: 5ab9f02 bedce64 Author: Dougal J. Sutherland <dougal@gmail.com> Date: Fri May 11 12:35:07 2018 -0700 Merge pull request #53 from gilbertfrancois/master Updates version and dependencies of Tensorflow to 1.8.0 commit bedce645461e229c4afaefc8269e80f7ed277ee1 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Fri May 11 17:04:48 2018 +0200 TOCO is currently not working on command line. commit bd1674bbe659d42ef2b37e5b5bd918f15d6e33a4 Author: Dougal J. Sutherland <dougal@gmail.com> Date: Fri May 11 15:12:10 2018 +0100 don't ship broken toco entry points on windows commit d5eeca56c0f1027d967e85dc4435a675106d74a6 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Thu May 10 23:17:16 2018 +0200 Tests toco_from_protos on macOS only commit bbfb83d81ff0ea0315c5527000a08e409b733e40 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Thu May 10 22:24:52 2018 +0200 Adds tests for Windows commit 3078ebebb08c739652361cb1c248b5155149450a Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Thu May 10 22:24:19 2018 +0200 Removes comments commit 39ab48f388c8ad7a348ac615cf62390cbfd32356 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Thu May 10 17:26:58 2018 +0200 Restrict command line tests to macOS commit afc4a9817f05c3df3d1f38df687837868f188ca0 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Thu May 10 11:34:10 2018 +0200 Adds tests for existence of cli applications. As proposed by sdvillal commit f2a3143218d65634536a3a3f774030692d399f86 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Thu May 10 00:55:20 2018 +0200 Adds mock to the test section As proposed by dhirschfeld in discussions PR #53 commit 3a15e5e6df6d7b54cd66006fe62fb5f229f355c0 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Wed May 9 23:43:40 2018 +0200 Adds contributor commit 5b8d70a05c86e0d4386ec524e2b8237880f62c9d Merge: c9dd75d 5ab9f02 Author: Gilbert Francois <gilbert@deep-impact.ch> Date: Wed May 9 21:47:45 2018 +0200 Merge branch 'master' into master commit c9dd75d6f9fcf985ed740289df1c7c752da31851 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Wed May 9 21:26:56 2018 +0200 Adds entry points for 1.8.0 commit 5ab9f026e50ed6f14cffd35b67c11acf6c7338fc Merge: bd5ce1e d64bf2f Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Wed May 9 06:09:45 2018 -0500 Merge pull request #52 from jakirkham-feedstocks/release_1.6.0 Release 1.6.0 commit 7832ad53a280b717af3d8dce36075d337134daca Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Wed May 9 11:58:46 2018 +0200 Changed according to remark from dhirschfeld commit 0e2fe37f9831685bba20ae9d784108915215a1ad Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Wed May 9 11:56:14 2018 +0200 Updates entry point for tensorboard commit f9b28d10bd5dc30f5be42424e2ec0b45d2735477 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Wed May 9 09:23:23 2018 +0200 Fixes typo commit 93c69f262019d2b4cc49be0918438288be1fb0ae Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Wed May 9 09:17:01 2018 +0200 Updates requirements according to original setup.py commit d64bf2fd7071266ba5b380f2358ca27fd0df3ca3 Author: John Kirkham <kirkhamj@janelia.hhmi.org> Date: Tue May 8 20:03:40 2018 -0400 Backports should only be needed on Python 2.7 commit 1334fdbe70836d9a9f22d7a4530a722d565478eb Author: John Kirkham <kirkhamj@janelia.hhmi.org> Date: Tue May 8 20:03:24 2018 -0400 Change `py27` selector `py2k` commit 3b49997899c42f879fc739d1a44341ff91b5ce28 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Tue May 8 23:56:07 2018 +0000 MNT: Re-rendered with conda-smithy 3.1.2 and pinning 2018.05.07 commit c72cd8f12d6d0d541fa51075e2a40b1940fe5fba Author: John Kirkham <kirkhamj@janelia.hhmi.org> Date: Tue May 8 19:53:29 2018 -0400 Release 1.6.0 commit 76cc760db2b335af708fef1ba1d4e0fd15b34618 Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Tue May 8 19:11:21 2018 +0200 Changed tensorboard version to build tf on CI commit 5d605d85fce76f2ef09f1c71e0d323cfb75688bf Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Tue May 8 19:10:34 2018 +0200 Changed tensorboard version to build tf on CI commit 173847449754f21e3efd19864521c35648379b1c Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Tue May 8 15:08:36 2018 +0200 MNT: Re-rendered with conda-smithy 3.1.2 and pinning 2018.05.07 commit ff4336d57fd94c81781e4f940859a5e160ee67df Author: Gilbert Franc抬ois Duivesteijn <gilbert@deep-impact.ch> Date: Tue May 8 14:12:16 2018 +0200 Updates to Tensorflow 1.8.0 commit bd5ce1e6079bab7720d536c5f95ddd44bf121ed0 Merge: d786839 37a0a55 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Tue Apr 17 18:03:37 2018 -0500 Merge pull request #51 from jakirkham-feedstocks/release_1.5.1 Release 1.5.1 commit 37a0a55433a70a5432f7f9cdbf8a24dd224a94a5 Author: John Kirkham <kirkhamj@janelia.hhmi.org> Date: Mon Apr 16 13:44:51 2018 -0400 Release 1.5.1 commit d78683942e4936b0eb943053bce878ea188089b5 Merge: 65897f1 dbc7aed Author: Dave Hirschfeld <dave.hirschfeld@gmail.com> Date: Mon Feb 26 16:05:36 2018 +1000 Merge pull request #50 from peterjc/v1_5_0 tensorflow 1.5.0 commit dbc7aed3f00e1a1222a4ba61517b31d9a7e19a8f Author: Dave Hirschfeld <dave.hirschfeld@gmail.com> Date: Mon Feb 26 08:29:43 2018 +1000 Add absl-py to run deps commit f5e4c1b5cc8b245d3d496c1ff9ff4ede2b4416d6 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Sun Feb 25 21:53:56 2018 +0000 MNT: Re-rendered with conda-smithy 2.4.5 commit d91406ccc53f9dc0f69a7c13fae5afb621c9ba3d Author: Peter Cock <p.j.a.cock@googlemail.com> Date: Thu Feb 1 13:16:04 2018 +0000 tensorflow 1.5.0 Updated dependencies as per listing on PyPI. https://pypi.python.org/pypi/tensorflow/1.5.0 Note compared to the list for v1.4.0, there is a new dependency: absl-py (>=0.1.6) However, absl-py does not yet seem to be on conda. commit 65897f1533ddb1cd46991495cb59b5b081df1778 Author: Dave Hirschfeld <dave.hirschfeld@gmail.com> Date: Sat Dec 2 02:10:03 2017 +1000 Update to 1.4.0 (#45) commit b43fe3f8912f782fcf45586415d34966077cfc91 Author: Daniel Rodriguez <df.rodriguez143@gmail.com> Date: Tue Aug 29 11:25:23 2017 -0500 Update to 1.3.0 (#40) commit 5ef18bd874b4a6e964c60c721a52eaae3637e3e6 Author: Travis-CI on github.com/conda-forge/staged-recipes <conda-forge@googlegroups.com> Date: Sat Aug 26 18:59:43 2017 +0000 [ci skip] [skip ci] Update anaconda token commit 43cea135e6a123590f9bff1d108f682d8feefad0 Merge: 57dc255 b6356d2 Author: jakirkham <jakirkham@gmail.com> Date: Mon Jul 31 09:15:42 2017 -0400 Merge pull request #39 from andyli/1.2.1 update to 1.2.1 commit b6356d22e59d27a241cdb84b4cf4441dad029b81 Author: Andy Li <andy@onthewings.net> Date: Mon Jul 31 16:21:40 2017 +0800 update to 1.2.1 commit 57dc255d04809a609f63acabeec965fa32e465a1 Merge: ec9aa8a 050299f Author: jakirkham <jakirkham@gmail.com> Date: Fri Jul 14 09:39:57 2017 -0400 Merge pull request #36 from adrianchia/master Update tensorflow to 1.2.0 commit 050299fc5af25fbcbe0914b5a38cdecb4c7de129 Author: Adrian Chia <achia@adrianchia.com> Date: Wed Jun 28 11:16:31 2017 -0500 Fix appveyor build error for python 3.6 commit 77dbdb7114fd62cc7ef99ec489b19e03a803648d Author: Adrian Chia <achia@adrianchia.com> Date: Wed Jun 28 11:14:36 2017 -0500 Fix appveyor build error for python 3.6 commit 80efd8f252d45d3b626a8ae5e1ff0142532a7697 Author: Adrian Chia <achia@adrianchia.com> Date: Wed Jun 28 10:30:59 2017 -0500 MNT: Re-rendered with conda-smithy 2.3.2 commit 5777c26d12ffc851522784e896130d3aebcc20cd Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 16:17:27 2017 -0500 Remove not required build dependencies commit 99d85281afa96e6e404b7783a230c25d8f8a6786 Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 13:17:44 2017 -0500 MNT: Re-rendered with conda-smithy 2.3.2 commit f7d5e340d2b0066578dde511fcae7fe31ad16bb1 Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 11:13:36 2017 -0500 Revert changes by conda-smithy rerender, set markdown deps to >=2.6.8, added html5lib ==0.99999 commit 18103437d9f1b28597522c0089a187bb6290a88c Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 02:50:37 2017 -0500 fix markdown deps commit 75029543ccf4ea2c6372f6517a9db55a56137128 Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 02:44:48 2017 -0500 Add missing bleach deps commit 0f95bebd446d15327b1839ee3aee2c49d726414d Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 02:32:47 2017 -0500 update tensorflow to 1.2.0 commit dacaa58baf5c0a104ea2f3333bf1f65b0245e2d6 Author: Adrian Chia <achia@adrianchia.com> Date: Tue Jun 27 02:22:23 2017 -0500 MNT: Re-rendered with conda-smithy 2.3.2 commit ec9aa8af1d2622e63221975812f8b43f0e32c874 Merge: c251118 e4c73d5 Author: jakirkham <jakirkham@gmail.com> Date: Thu Jun 1 11:27:04 2017 -0400 Merge pull request #33 from adrianchia/master Update recipe to 1.1.0 commit e4c73d525bc270121e830c37534146edd0893917 Author: Adrian Chia <adrianchia@users.noreply.github.com> Date: Wed May 17 01:50:19 2017 -0500 Update recipe to 1.1.0 commit c2511186bfe3ce824d315d636dfba550c57afaf6 Merge: 1987813 e8cbc3c Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Fri Apr 14 12:00:19 2017 -0500 Merge pull request #32 from conda-forge-admin/feedstock_rerender_master MNT: Re-render the feedstock [ci skip] commit e8cbc3c24217faed2bc8b749eab952c046d71002 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Fri Apr 14 01:45:52 2017 +0000 MNT: Updated the feedstock for conda-smithy version 2.2.2. commit 19878131f5671d943b8b6ef116d934a205090a77 Merge: 55a3360 c160eba Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Fri Feb 17 11:02:58 2017 -0600 Merge pull request #30 from jjhelmus/v1.0.0 Update to tensorflow version 1.0.0 commit c160ebaa64b55229b9b7800aefcef68250ccc671 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Thu Feb 16 14:54:28 2017 -0600 Update recipe to version 1.0.0 commit 55a3360a508e5ad751841e53c73c2b4b4eb6f480 Merge: 05ca5be 4f544b1 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Sun Feb 12 19:39:55 2017 -0600 Merge pull request #28 from jjhelmus/py36 Add support for Python 3.6 commit 4f544b1733e4af038b9684cc1957d7321d3363c6 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Feb 12 19:19:50 2017 -0600 Install from googleapis wheels on OS X Wheels from PyPI are pinned to the exact OS X version number which prevents installation on Travis CI. commit 22bfa0f8e246fe63c8d5c765a1bc91c91aa9e15a Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Tue Feb 7 11:05:19 2017 -0600 Install from whl files on PyPI commit b0ddb35075bd94971ed9107c5572230eb3f42a4b Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Tue Feb 7 10:17:02 2017 -0600 Add support for Python 3.6 Use Python 3.6 wheels from PyPI. commit 648bd2ab2d8de10e19da81cfc87fb99d41322ef2 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Tue Feb 7 09:44:40 2017 -0600 MNT: Re-rendered with conda-smithy 2.0.1 commit 05ca5be1c498069a485f2713d890d43f66e9e9e3 Merge: 1001118 d9ce714 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Sat Jan 14 14:24:35 2017 -0600 Merge pull request #27 from jjhelmus/win_support Add support for Windows commit d9ce714ac2cdbe9010582e30db4be502111b18ef Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sat Jan 14 17:04:54 2017 +0000 Add support for Windows Fix run requirement of protobuf to 3.1.0 commit 1001118b124444efa77b8cbf9d0490aee4ebe9af Merge: 5db4118 b1695c8 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Sat Jan 14 10:48:24 2017 -0600 Merge pull request #26 from QtRoS/master v12.1 released. commit b1695c8458448ce1c92eaa73a8cab4607263a2ac Author: Roman Shchekin <mrqtros@gmail.com> Date: Thu Jan 5 00:19:47 2017 +0300 New version of protobuf in requirements. Thanks to jjhelmus commit 8f7a8a3fdf774d9ed49f163c2269374d4b6cd6e8 Author: Roman Shchekin <mrqtros@gmail.com> Date: Sun Jan 1 10:14:13 2017 +0300 v12.1 released. commit 5db4118f839a342a2529d9009503a5a15de527e7 Merge: bc51900 728bbd0 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Tue Nov 29 09:09:54 2016 -0600 Merge pull request #22 from ghego/master Update recipe to version 0.11.0 commit 728bbd063949dbcd1356450f3ba040364db53be0 Author: Francesco Mosconi <git@mosconi.me> Date: Mon Nov 28 19:07:47 2016 -0800 package version depends on env variable now commit 9552a68a01cf3950a3fd80e3a1aabc675cdf1443 Author: Francesco Mosconi <git@mosconi.me> Date: Fri Nov 18 10:18:08 2016 -0800 Update recipe to version 0.11.0 commit bc519002adebcc5bf2e5a6d3a91ff319666560b1 Merge: 00bf5c1 0027f25 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Tue Nov 1 22:21:17 2016 -0500 Merge pull request #20 from jjhelmus/0.11.0rc2 Tensorflow 0.11.0rc2 recipe commit 0027f25f398ebfe03656edbb689acc5f2ee58c97 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Tue Nov 1 14:01:50 2016 -0500 MNT: Re-rendered with conda-smithy 1.4.5 commit cfc48a24e5540fabaa665e652b8ff38ebdc1d589 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Tue Nov 1 14:01:24 2016 -0500 Update recipe to version 0.11.0rc2 commit 00bf5c153e3c75c00138f5c756737b3fb90f3ab3 Merge: 6d78e6a 64c6ed9 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Wed Oct 26 09:10:45 2016 -0500 Merge pull request #17 from jjhelmus/0.11.0rc0 Update to 0.11.0rc0 commit 64c6ed92f441d9b8c1f93f8ebb24d183e9ac004a Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Oct 24 23:06:14 2016 -0500 Revert "MNT: Re-rendered with conda-smithy 1.3.3" This reverts commit 32b6244cfc546538e353779bb26980a037e05573. commit 32b6244cfc546538e353779bb26980a037e05573 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Oct 24 23:04:37 2016 -0500 MNT: Re-rendered with conda-smithy 1.3.3 commit 83ccf49c346bd4e6f3307e38dcc260f54bbec6a8 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Oct 24 23:02:20 2016 -0500 Correct requirement versions for v0.11.0rc0 commit 58e96d291c4b93ad7c9d37db252bc9b7e5d9cad8 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Oct 16 14:38:00 2016 -0500 Fix type in build.sh commit 3e9696ff32505476fd2d9ea4d41d142209d171bc Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Sun Oct 16 14:31:10 2016 -0500 Update recipe to version 0.11.0rc0 New requirements taken from whl METADATA file commit 6d78e6ab5c60bea7415f904f767c5e439a7235ff Merge: ae0897f 9295a1a Author: jakirkham <jakirkham@gmail.com> Date: Tue Oct 18 22:39:37 2016 -0400 Merge pull request #18 from jakirkham/re-render_master_1.3.3 MNT: Re-rendered with conda-smithy 1.3.3 [ci skip] commit 9295a1a84b414f65d1388fa215e4c6a14d23f03b Author: John Kirkham <kirkhamj@janelia.hhmi.org> Date: Mon Oct 17 11:20:58 2016 -0400 MNT: Re-rendered with conda-smithy 1.3.3 commit ae0897fa921acf728f649d929b4824bb5ec07151 Merge: 106b4f6 141474d Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Mon Sep 19 14:45:39 2016 -0500 Merge pull request #16 from jjhelmus/v0.10.0 Tensorflow version 0.10.0 commit 141474de551e1c6db060338e7560c46c3f900f88 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Sep 19 14:10:11 2016 -0500 Fix OS X whl URLS commit ea41478a63bd8e27403a7e1ab6d3bda6586f0507 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Sep 19 11:09:12 2016 -0500 Regenerate recipe commit cac9900d4f35377e8eab89aaf1f0a586c209cca7 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Sep 19 11:07:45 2016 -0500 Update recipe to v0.10.0 commit 106b4f6f9f7bc269897f8a69dde01527325f3a71 Merge: de068c0 ae3bb77 Author: jakirkham <jakirkham@gmail.com> Date: Tue Sep 13 19:35:55 2016 -0400 Merge pull request #13 from jakirkham/add_waitingkuo Add @waitingkuo commit ae3bb77cbb03cced6eb5094aacdd6fa7ee2c1bd0 Author: John Kirkham <kirkhamj@janelia.hhmi.org> Date: Wed Aug 24 23:15:38 2016 -0400 recipe: Add @waitingkuo as a maintainer. commit de068c0f881e786618bb4cbdc04db50570cd3a60 Merge: 6a0a206 d88b2a4 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Tue Jun 28 09:10:19 2016 -0500 Merge pull request #9 from jjhelmus/tf090 Update recipe to tensorflow 0.9.0 commit d88b2a4c9857a99b929e3fc6b68337f1af69f298 Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Jun 27 15:25:46 2016 -0500 Rerender feedstock commit b10aa946654b7933f2cd5113fbe94d1fe95e81ff Author: Jonathan Helmus <jjhelmus@gmail.com> Date: Mon Jun 27 15:21:12 2016 -0500 Update recipe to tensorflow 0.9.0 Add support for Python 3.4 on Linux Add danielfrg as a maintainer commit 6a0a20613345b551fef16282277f6e3b66ebb7bf Merge: 938d22f 6effc44 Author: jakirkham <jakirkham@gmail.com> Date: Sat Jun 4 15:40:02 2016 -0400 Merge pull request #7 from conda-forge-admin/feedstock_rerender_master MNT: Re-render the feedstock commit 6effc4408202a5c33ee679f227fbfd8f3f973c54 Author: conda-forge-admin <pelson.pub+conda-forge@gmail.com> Date: Thu May 26 01:37:11 2016 +0000 MNT: Updated the feedstock for conda-smithy version 0.10.3. [ci skip] commit 938d22f3111838055ccb0d1893e4bdce1f9464ee Merge: 3e1cdd1 f2efb59 Author: Jonathan J. Helmus <jjhelmus@gmail.com> Date: Fri May 20 10:29:02 2016 -0500 Merge pull request #5 from danielfrg/0.8.0 Update to Tensorflow 0.8.0 commit f2efb5910b2468f9386de5b23cfb33f51ae66465 Author: Daniel Rodriguez <df.rodriguez143@gmail.com> Date: Thu May 19 17:30:39 2016 -0500 Update to Tensorflow 0.8.0 commit 3e1cdd1881e4b2c8eeee4109c0c9264848f75b00 Merge: 96aa152 5351f6b Author: Filipe <ocefpaf@gmail.com> Date: Tue Apr 12 12:31:56 2016 -0300 Merge pull request #1 from conda-forge-admin/feedstock_rerender MNT: Re-render the feedstock commit 5351f6b661a0260d077ffcc879ea2263cb92a3c2 Author: Phil Elson <pelson.pub@gmail.com> Date: Wed Mar 9 19:32:42 2016 +0100 MNT: Updated the feedstock for conda-smithy version 0.5.1. commit 96aa152d32464fa5408f3e820b3cb90068a6e9a6 Author: Travis-CI on github.com/conda-forge/staged-recipes <conda-forge@googlegroups.com> Date: Wed Mar 2 08:52:00 2016 +0000 Re-render the feedstock after CI registration. commit 4585e31bd5d24987850efd1c6467164f3b3307f7 Author: Travis-CI on github.com/conda-forge/staged-recipes <conda-forge@googlegroups.com> Date: Wed Mar 2 08:51:39 2016 +0000 Initial commit of the tensorflow feedstock. --- .azure-pipelines/azure-pipelines-linux.yml | 48 +++ .azure-pipelines/azure-pipelines-osx.yml | 40 ++ .../linux_64_python3.7.____cpython.yaml | 28 +- .../linux_64_python3.8.____cpython.yaml | 28 +- .../linux_64_python3.9.____cpython.yaml | 61 +++ .ci_support/osx_64_python3.7.____cpython.yaml | 47 ++- .ci_support/osx_64_python3.8.____cpython.yaml | 47 ++- .ci_support/osx_64_python3.9.____cpython.yaml | 61 +++ .../osx_arm64_python3.8.____cpython.yaml | 59 +++ .../osx_arm64_python3.9.____cpython.yaml | 59 +++ .circleci/config.yml | 24 ++ .gitattributes | 25 ++ .github/CODEOWNERS | 1 + .github/workflows/automerge.yml | 18 + .github/workflows/webservices.yml | 12 + .scripts/build_steps.sh | 27 +- .scripts/logging_utils.sh | 35 ++ .scripts/run_docker_build.sh | 27 +- .scripts/run_osx_build.sh | 66 ++-- LICENSE.txt | 2 +- README.md | 35 +- azure-pipelines.yml | 1 - build-locally.py | 35 +- conda-forge.yml | 8 +- recipe/bld.bat | 67 +++- recipe/build.sh | 176 +++++---- recipe/build_estimator.sh | 13 + recipe/build_pkg.bat | 5 + recipe/build_pkg.sh | 5 + recipe/conda_build_config.yaml | 2 + recipe/cp_libtensorflow.sh | 10 +- recipe/cp_libtensorflow_cc.sh | 23 +- recipe/custom_toolchain/BUILD | 68 ++++ recipe/custom_toolchain/CROSSTOOL.template | 88 +++++ recipe/custom_toolchain/WORKSPACE | 1 + .../custom_toolchain/cc_toolchain_config.bzl | 332 +++++++++++++++++ .../custom_toolchain/cc_wrapper.sh.template | 107 ++++++ recipe/gen-bazel-toolchain.sh | 125 +++++++ recipe/meta.yaml | 351 ++++++++++++------ ...relax-tolerence-in-special_math_test.patch | 25 ++ ...p-read-only-debugger_cli_common-test.patch | 31 ++ ...elax-precision-in-matrix_log_op_test.patch | 25 ++ recipe/patches/0004-loosen-requirements.patch | 35 ++ ...move_deprecated_use_of_error_message.patch | 25 ++ ...uf_errors_when_using_system_protobuf.patch | 26 ++ .../legacy/0001-add-rt-to-linkopts.patch | 46 +++ .../0002-stable-image-rotate-test.patch | 38 ++ .../legacy/0005-fix-lookup_ops-test.patch | 30 ++ ...ol-names-prefixed-with-an-underscore.patch | 53 +++ ...ock_gettime-implementation-for-macOS.patch | 55 +++ recipe/test_libtensorflow.sh | 6 + recipe/test_libtensorflow_cc.sh | 6 + recipe/test_tensorflow_base.py | 18 + 53 files changed, 2283 insertions(+), 303 deletions(-) create mode 100755 .azure-pipelines/azure-pipelines-linux.yml create mode 100755 .azure-pipelines/azure-pipelines-osx.yml create mode 100644 .ci_support/linux_64_python3.9.____cpython.yaml create mode 100644 .ci_support/osx_64_python3.9.____cpython.yaml create mode 100644 .ci_support/osx_arm64_python3.8.____cpython.yaml create mode 100644 .ci_support/osx_arm64_python3.9.____cpython.yaml create mode 100644 .circleci/config.yml create mode 100644 .gitattributes create mode 100644 .github/CODEOWNERS create mode 100644 .github/workflows/automerge.yml create mode 100644 .github/workflows/webservices.yml create mode 100644 .scripts/logging_utils.sh create mode 100644 recipe/build_estimator.sh create mode 100644 recipe/build_pkg.bat create mode 100644 recipe/build_pkg.sh create mode 100644 recipe/conda_build_config.yaml create mode 100644 recipe/custom_toolchain/BUILD create mode 100644 recipe/custom_toolchain/CROSSTOOL.template create mode 100644 recipe/custom_toolchain/WORKSPACE create mode 100644 recipe/custom_toolchain/cc_toolchain_config.bzl create mode 100644 recipe/custom_toolchain/cc_wrapper.sh.template create mode 100755 recipe/gen-bazel-toolchain.sh create mode 100644 recipe/patches/0001-relax-tolerence-in-special_math_test.patch create mode 100644 recipe/patches/0002-skip-read-only-debugger_cli_common-test.patch create mode 100644 recipe/patches/0003-relax-precision-in-matrix_log_op_test.patch create mode 100644 recipe/patches/0004-loosen-requirements.patch create mode 100644 recipe/patches/0005-remove_deprecated_use_of_error_message.patch create mode 100644 recipe/patches/51450-Fix_protobuf_errors_when_using_system_protobuf.patch create mode 100644 recipe/patches/legacy/0001-add-rt-to-linkopts.patch create mode 100644 recipe/patches/legacy/0002-stable-image-rotate-test.patch create mode 100644 recipe/patches/legacy/0005-fix-lookup_ops-test.patch create mode 100644 recipe/patches/legacy/0007-Add-init-symbol-names-prefixed-with-an-underscore.patch create mode 100644 recipe/patches/legacy/0008-Add-alternate-clock_gettime-implementation-for-macOS.patch create mode 100755 recipe/test_libtensorflow.sh create mode 100755 recipe/test_libtensorflow_cc.sh create mode 100644 recipe/test_tensorflow_base.py diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml new file mode 100755 index 00000000..3adf3ac8 --- /dev/null +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -0,0 +1,48 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +jobs: +- job: linux + pool: + vmImage: ubuntu-latest + strategy: + matrix: + linux_64_python3.7.____cpython: + CONFIG: linux_64_python3.7.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_64_python3.8.____cpython: + CONFIG: linux_64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + linux_64_python3.9.____cpython: + CONFIG: linux_64_python3.9.____cpython + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-comp7 + timeoutInMinutes: 360 + + steps: + - script: | + rm -rf /opt/ghc + df -h + displayName: Manage disk space + + # configure qemu binfmt-misc running. This allows us to run docker containers + # embedded qemu-static + - script: | + docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes + ls /proc/sys/fs/binfmt_misc/ + condition: not(startsWith(variables['CONFIG'], 'linux_64')) + displayName: Configure binfmt_misc + + - script: | + export CI=azure + export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME + export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) + .scripts/run_docker_build.sh + displayName: Run docker build + env: + BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) \ No newline at end of file diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml new file mode 100755 index 00000000..83e7ee9f --- /dev/null +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -0,0 +1,40 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +jobs: +- job: osx + pool: + vmImage: macOS-10.15 + strategy: + matrix: + osx_64_python3.7.____cpython: + CONFIG: osx_64_python3.7.____cpython + UPLOAD_PACKAGES: 'True' + osx_64_python3.8.____cpython: + CONFIG: osx_64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + osx_64_python3.9.____cpython: + CONFIG: osx_64_python3.9.____cpython + UPLOAD_PACKAGES: 'True' + osx_arm64_python3.8.____cpython: + CONFIG: osx_arm64_python3.8.____cpython + UPLOAD_PACKAGES: 'True' + osx_arm64_python3.9.____cpython: + CONFIG: osx_arm64_python3.9.____cpython + UPLOAD_PACKAGES: 'True' + timeoutInMinutes: 360 + + steps: + # TODO: Fast finish on azure pipelines? + - script: | + export CI=azure + export OSX_FORCE_SDK_DOWNLOAD="1" + export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME + export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) + ./.scripts/run_osx_build.sh + displayName: Run OSX build + env: + BINSTAR_TOKEN: $(BINSTAR_TOKEN) + FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) + STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) \ No newline at end of file diff --git a/.ci_support/linux_64_python3.7.____cpython.yaml b/.ci_support/linux_64_python3.7.____cpython.yaml index cb66d5c3..e4e6e860 100644 --- a/.ci_support/linux_64_python3.7.____cpython.yaml +++ b/.ci_support/linux_64_python3.7.____cpython.yaml @@ -1,24 +1,38 @@ c_compiler: - gcc c_compiler_version: -- '7' +- '9' cdt_name: - cos6 channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main cxx_compiler: - gxx cxx_compiler_version: -- '7' +- '9' docker_image: - quay.io/condaforge/linux-anvil-comp7 +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' libcurl: - '7' libpng: - '1.6' +libprotobuf: +- '3.16' +openssl: +- 1.1.1 pin_run_as_build: + jpeg: + max_pin: x libcurl: max_pin: x libpng: @@ -26,14 +40,22 @@ pin_run_as_build: python: min_pin: x.x max_pin: x.x + sqlite: + max_pin: x zlib: max_pin: x.x python: - 3.7.* *_cpython +snappy: +- '1' +sqlite: +- '3' target_platform: - linux-64 zip_keys: - - c_compiler_version - cxx_compiler_version +- - cdt_name + - docker_image zlib: - '1.2' diff --git a/.ci_support/linux_64_python3.8.____cpython.yaml b/.ci_support/linux_64_python3.8.____cpython.yaml index d0c5e866..4a587097 100644 --- a/.ci_support/linux_64_python3.8.____cpython.yaml +++ b/.ci_support/linux_64_python3.8.____cpython.yaml @@ -1,24 +1,38 @@ c_compiler: - gcc c_compiler_version: -- '7' +- '9' cdt_name: - cos6 channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main cxx_compiler: - gxx cxx_compiler_version: -- '7' +- '9' docker_image: - quay.io/condaforge/linux-anvil-comp7 +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' libcurl: - '7' libpng: - '1.6' +libprotobuf: +- '3.16' +openssl: +- 1.1.1 pin_run_as_build: + jpeg: + max_pin: x libcurl: max_pin: x libpng: @@ -26,14 +40,22 @@ pin_run_as_build: python: min_pin: x.x max_pin: x.x + sqlite: + max_pin: x zlib: max_pin: x.x python: - 3.8.* *_cpython +snappy: +- '1' +sqlite: +- '3' target_platform: - linux-64 zip_keys: - - c_compiler_version - cxx_compiler_version +- - cdt_name + - docker_image zlib: - '1.2' diff --git a/.ci_support/linux_64_python3.9.____cpython.yaml b/.ci_support/linux_64_python3.9.____cpython.yaml new file mode 100644 index 00000000..880e9bc3 --- /dev/null +++ b/.ci_support/linux_64_python3.9.____cpython.yaml @@ -0,0 +1,61 @@ +c_compiler: +- gcc +c_compiler_version: +- '9' +cdt_name: +- cos6 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- gxx +cxx_compiler_version: +- '9' +docker_image: +- quay.io/condaforge/linux-anvil-comp7 +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' +libcurl: +- '7' +libpng: +- '1.6' +libprotobuf: +- '3.16' +openssl: +- 1.1.1 +pin_run_as_build: + jpeg: + max_pin: x + libcurl: + max_pin: x + libpng: + max_pin: x.x + python: + min_pin: x.x + max_pin: x.x + sqlite: + max_pin: x + zlib: + max_pin: x.x +python: +- 3.9.* *_cpython +snappy: +- '1' +sqlite: +- '3' +target_platform: +- linux-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +- - cdt_name + - docker_image +zlib: +- '1.2' diff --git a/.ci_support/osx_64_python3.7.____cpython.yaml b/.ci_support/osx_64_python3.7.____cpython.yaml index 163d3ce6..0acf9b6b 100644 --- a/.ci_support/osx_64_python3.7.____cpython.yaml +++ b/.ci_support/osx_64_python3.7.____cpython.yaml @@ -1,16 +1,61 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' +MACOSX_SDK_VERSION: +- '10.12' +c_compiler: +- clang +c_compiler_version: +- '11' channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' +libcurl: +- '7' +libpng: +- '1.6' +libprotobuf: +- '3.16' macos_machine: - x86_64-apple-darwin13.4.0 +openssl: +- 1.1.1 pin_run_as_build: + jpeg: + max_pin: x + libcurl: + max_pin: x + libpng: + max_pin: x.x python: min_pin: x.x max_pin: x.x + sqlite: + max_pin: x + zlib: + max_pin: x.x python: - 3.7.* *_cpython +snappy: +- '1' +sqlite: +- '3' target_platform: - osx-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1.2' diff --git a/.ci_support/osx_64_python3.8.____cpython.yaml b/.ci_support/osx_64_python3.8.____cpython.yaml index 63cee21d..80134125 100644 --- a/.ci_support/osx_64_python3.8.____cpython.yaml +++ b/.ci_support/osx_64_python3.8.____cpython.yaml @@ -1,16 +1,61 @@ MACOSX_DEPLOYMENT_TARGET: - '10.9' +MACOSX_SDK_VERSION: +- '10.12' +c_compiler: +- clang +c_compiler_version: +- '11' channel_sources: -- conda-forge,defaults +- conda-forge channel_targets: - conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' +libcurl: +- '7' +libpng: +- '1.6' +libprotobuf: +- '3.16' macos_machine: - x86_64-apple-darwin13.4.0 +openssl: +- 1.1.1 pin_run_as_build: + jpeg: + max_pin: x + libcurl: + max_pin: x + libpng: + max_pin: x.x python: min_pin: x.x max_pin: x.x + sqlite: + max_pin: x + zlib: + max_pin: x.x python: - 3.8.* *_cpython +snappy: +- '1' +sqlite: +- '3' target_platform: - osx-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1.2' diff --git a/.ci_support/osx_64_python3.9.____cpython.yaml b/.ci_support/osx_64_python3.9.____cpython.yaml new file mode 100644 index 00000000..8b8632ec --- /dev/null +++ b/.ci_support/osx_64_python3.9.____cpython.yaml @@ -0,0 +1,61 @@ +MACOSX_DEPLOYMENT_TARGET: +- '10.9' +MACOSX_SDK_VERSION: +- '10.12' +c_compiler: +- clang +c_compiler_version: +- '11' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' +libcurl: +- '7' +libpng: +- '1.6' +libprotobuf: +- '3.16' +macos_machine: +- x86_64-apple-darwin13.4.0 +openssl: +- 1.1.1 +pin_run_as_build: + jpeg: + max_pin: x + libcurl: + max_pin: x + libpng: + max_pin: x.x + python: + min_pin: x.x + max_pin: x.x + sqlite: + max_pin: x + zlib: + max_pin: x.x +python: +- 3.9.* *_cpython +snappy: +- '1' +sqlite: +- '3' +target_platform: +- osx-64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1.2' diff --git a/.ci_support/osx_arm64_python3.8.____cpython.yaml b/.ci_support/osx_arm64_python3.8.____cpython.yaml new file mode 100644 index 00000000..3d406fb1 --- /dev/null +++ b/.ci_support/osx_arm64_python3.8.____cpython.yaml @@ -0,0 +1,59 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '11' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' +libcurl: +- '7' +libpng: +- '1.6' +libprotobuf: +- '3.16' +macos_machine: +- arm64-apple-darwin20.0.0 +openssl: +- 1.1.1 +pin_run_as_build: + jpeg: + max_pin: x + libcurl: + max_pin: x + libpng: + max_pin: x.x + python: + min_pin: x.x + max_pin: x.x + sqlite: + max_pin: x + zlib: + max_pin: x.x +python: +- 3.8.* *_cpython +snappy: +- '1' +sqlite: +- '3' +target_platform: +- osx-arm64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1.2' diff --git a/.ci_support/osx_arm64_python3.9.____cpython.yaml b/.ci_support/osx_arm64_python3.9.____cpython.yaml new file mode 100644 index 00000000..1de2cfd8 --- /dev/null +++ b/.ci_support/osx_arm64_python3.9.____cpython.yaml @@ -0,0 +1,59 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '11' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +cxx_compiler: +- clangxx +cxx_compiler_version: +- '11' +giflib: +- '5.2' +grpc_cpp: +- '1.39' +icu: +- '68' +jpeg: +- '9' +libcurl: +- '7' +libpng: +- '1.6' +libprotobuf: +- '3.16' +macos_machine: +- arm64-apple-darwin20.0.0 +openssl: +- 1.1.1 +pin_run_as_build: + jpeg: + max_pin: x + libcurl: + max_pin: x + libpng: + max_pin: x.x + python: + min_pin: x.x + max_pin: x.x + sqlite: + max_pin: x + zlib: + max_pin: x.x +python: +- 3.9.* *_cpython +snappy: +- '1' +sqlite: +- '3' +target_platform: +- osx-arm64 +zip_keys: +- - c_compiler_version + - cxx_compiler_version +zlib: +- '1.2' diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 00000000..6ad461b8 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,24 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. +# -*- mode: yaml -*- + +version: 2 + +jobs: + build: + working_directory: ~/test + machine: true + steps: + - run: + # The Circle-CI build should not be active, but if this is not true for some reason, do a fast finish. + command: exit 0 + +workflows: + version: 2 + build_and_test: + jobs: + - build: + filters: + branches: + ignore: + - /.*/ diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..9060b272 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,25 @@ +* text=auto + +*.patch binary +*.diff binary +meta.yaml text eol=lf +build.sh text eol=lf +bld.bat text eol=crlf + +# github helper pieces to make some files not show up in diffs automatically +.azure-pipelines/* linguist-generated=true +.circleci/* linguist-generated=true +.drone/* linguist-generated=true +.drone.yml linguist-generated=true +.github/* linguist-generated=true +.travis/* linguist-generated=true +.appveyor.yml linguist-generated=true +.gitattributes linguist-generated=true +.gitignore linguist-generated=true +.travis.yml linguist-generated=true +.scripts/* linguist-generated=true +LICENSE.txt linguist-generated=true +README.md linguist-generated=true +azure-pipelines.yml linguist-generated=true +build-locally.py linguist-generated=true +shippable.yml linguist-generated=true diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000..edbaa153 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @farhantejani @ghego @gilbertfrancois @h-vetinari @hajapy @jschueller @njzjz @waitingkuo @xhochy \ No newline at end of file diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml new file mode 100644 index 00000000..e8e59028 --- /dev/null +++ b/.github/workflows/automerge.yml @@ -0,0 +1,18 @@ +on: + status: {} + check_suite: + types: + - completed + +jobs: + automerge-action: + runs-on: ubuntu-latest + name: automerge + steps: + - name: checkout + uses: actions/checkout@v2 + - name: automerge-action + id: automerge-action + uses: conda-forge/automerge-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/webservices.yml b/.github/workflows/webservices.yml new file mode 100644 index 00000000..78f51e60 --- /dev/null +++ b/.github/workflows/webservices.yml @@ -0,0 +1,12 @@ +on: repository_dispatch + +jobs: + webservices: + runs-on: ubuntu-latest + name: webservices + steps: + - name: webservices + id: webservices + uses: conda-forge/webservices-dispatch-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index aa9727b9..71a06860 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -6,8 +6,15 @@ # benefit from the improvement. set -xeuo pipefail -export PYTHONUNBUFFERED=1 export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" +source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh + + +( endgroup "Start Docker" ) 2> /dev/null + +( startgroup "Configuring conda" ) 2> /dev/null + +export PYTHONUNBUFFERED=1 export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" @@ -18,8 +25,9 @@ conda-build: root-dir: ${FEEDSTOCK_ROOT}/build_artifacts CONDARC +BUILD_CMD=build -conda install --yes --quiet "conda-forge-ci-setup=3" conda-build pip -c conda-forge +conda install --yes --quiet "conda-forge-ci-setup=3" conda-build pip ${GET_BOA:-} -c conda-forge # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -30,6 +38,8 @@ source run_conda_forge_build_setup make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" +( endgroup "Configuring conda" ) 2> /dev/null + if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" @@ -37,17 +47,28 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ ${EXTRA_CB_OPTIONS:-} \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" + # Drop into an interactive shell /bin/bash else - conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + conda $BUILD_CMD "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ --suppress-variables ${EXTRA_CB_OPTIONS:-} \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" + ( startgroup "Validating outputs" ) 2> /dev/null + validate_recipe_outputs "${FEEDSTOCK_NAME}" + ( endgroup "Validating outputs" ) 2> /dev/null + + ( startgroup "Uploading packages" ) 2> /dev/null + if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" fi + + ( endgroup "Uploading packages" ) 2> /dev/null fi +( startgroup "Final checks" ) 2> /dev/null + touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" \ No newline at end of file diff --git a/.scripts/logging_utils.sh b/.scripts/logging_utils.sh new file mode 100644 index 00000000..57bc95c2 --- /dev/null +++ b/.scripts/logging_utils.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +# Provide a unified interface for the different logging +# utilities CI providers offer. If unavailable, provide +# a compatible fallback (e.g. bare `echo xxxxxx`). + +function startgroup { + # Start a foldable group of log lines + # Pass a single argument, quoted + case ${CI:-} in + azure ) + echo "##[group]$1";; + travis ) + echo "$1" + echo -en 'travis_fold:start:'"${1// /}"'\\r';; + github_actions ) + echo "::group::$1";; + * ) + echo "$1";; + esac +} 2> /dev/null + +function endgroup { + # End a foldable group of log lines + # Pass a single argument, quoted + + case ${CI:-} in + azure ) + echo "##[endgroup]";; + travis ) + echo -en 'travis_fold:end:'"${1// /}"'\\r';; + github_actions ) + echo "::endgroup::";; + esac +} 2> /dev/null diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 87ba4db0..244ccd1f 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -5,6 +5,10 @@ # changes to this script, consider a proposal to conda-smithy so that other feedstocks can also # benefit from the improvement. +source .scripts/logging_utils.sh + +( startgroup "Configure Docker" ) 2> /dev/null + set -xeo pipefail THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" @@ -45,10 +49,14 @@ fi if [ -z "${DOCKER_IMAGE}" ]; then SHYAML_INSTALLED="$(shyaml -h || echo NO)" if [ "${SHYAML_INSTALLED}" == "NO" ]; then - echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Falling back to condaforge/linux-anvil-comp7" - DOCKER_IMAGE="condaforge/linux-anvil-comp7" + echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils" + DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-) + if [ "${DOCKER_IMAGE}" = "" ]; then + echo "No docker_image entry found in ${CONFIG}. Falling back to quay.io/condaforge/linux-anvil-comp7" + DOCKER_IMAGE="quay.io/condaforge/linux-anvil-comp7" + fi else - DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 condaforge/linux-anvil-comp7 )" + DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )" fi fi @@ -62,10 +70,14 @@ if [ -z "${CI}" ]; then DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" fi +( endgroup "Configure Docker" ) 2> /dev/null + +( startgroup "Start Docker" ) 2> /dev/null + export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" docker run ${DOCKER_RUN_ARGS} \ - -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z \ - -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z \ + -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ + -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ -e CONFIG \ -e HOST_USER_ID \ -e UPLOAD_PACKAGES \ @@ -84,4 +96,7 @@ docker run ${DOCKER_RUN_ARGS} \ /home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh # verify that the end of the script was reached -test -f "$DONE_CANARY" \ No newline at end of file +test -f "$DONE_CANARY" + +# This closes the last group opened in `build_steps.sh` +( endgroup "Final checks" ) 2> /dev/null \ No newline at end of file diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index c299b792..96d02787 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -1,57 +1,69 @@ #!/usr/bin/env bash -set -x +source .scripts/logging_utils.sh + +set -xe + +MINIFORGE_HOME=${MINIFORGE_HOME:-${HOME}/miniforge3} + +( startgroup "Installing a fresh version of Miniforge" ) 2> /dev/null -echo -e "\n\nInstalling a fresh version of Miniforge." -if [[ ${CI} == "travis" ]]; then - echo -en 'travis_fold:start:install_miniforge\\r' -fi MINIFORGE_URL="https://github.com/conda-forge/miniforge/releases/latest/download" MINIFORGE_FILE="Miniforge3-MacOSX-x86_64.sh" curl -L -O "${MINIFORGE_URL}/${MINIFORGE_FILE}" -bash $MINIFORGE_FILE -b -if [[ ${CI} == "travis" ]]; then - echo -en 'travis_fold:end:install_miniforge\\r' -fi +bash $MINIFORGE_FILE -b -p ${MINIFORGE_HOME} -echo -e "\n\nConfiguring conda." -if [[ ${CI} == "travis" ]]; then - echo -en 'travis_fold:start:configure_conda\\r' -fi +( endgroup "Installing a fresh version of Miniforge" ) 2> /dev/null + +( startgroup "Configuring conda" ) 2> /dev/null -source ${HOME}/miniforge3/etc/profile.d/conda.sh +BUILD_CMD=build + +source ${MINIFORGE_HOME}/etc/profile.d/conda.sh conda activate base echo -e "\n\nInstalling conda-forge-ci-setup=3 and conda-build." -conda install -n base --quiet --yes "conda-forge-ci-setup=3" conda-build pip +conda install -n base --quiet --yes "conda-forge-ci-setup=3" conda-build pip ${GET_BOA:-} echo -e "\n\nSetting up the condarc and mangling the compiler." setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml -mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml -echo -e "\n\nMangling homebrew in the CI to avoid conflicts." -/usr/bin/sudo mangle_homebrew -/usr/bin/sudo -k +if [[ "${CI:-}" != "" ]]; then + mangle_compiler ./ ./recipe .ci_support/${CONFIG}.yaml +fi + +if [[ "${CI:-}" != "" ]]; then + echo -e "\n\nMangling homebrew in the CI to avoid conflicts." + /usr/bin/sudo mangle_homebrew + /usr/bin/sudo -k +else + echo -e "\n\nNot mangling homebrew as we are not running in CI" +fi echo -e "\n\nRunning the build setup script." source run_conda_forge_build_setup -if [[ ${CI} == "travis" ]]; then - echo -en 'travis_fold:end:configure_conda\\r' -fi -set -e +( endgroup "Configuring conda" ) 2> /dev/null -echo -e "\n\nMaking the build clobber file and running the build." + +echo -e "\n\nMaking the build clobber file" make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml -conda build ./recipe -m ./.ci_support/${CONFIG}.yaml --suppress-variables --clobber-file ./.ci_support/clobber_${CONFIG}.yaml ${EXTRA_CB_OPTIONS:-} +conda $BUILD_CMD ./recipe -m ./.ci_support/${CONFIG}.yaml --suppress-variables --clobber-file ./.ci_support/clobber_${CONFIG}.yaml ${EXTRA_CB_OPTIONS:-} +( startgroup "Validating outputs" ) 2> /dev/null + validate_recipe_outputs "${FEEDSTOCK_NAME}" +( endgroup "Validating outputs" ) 2> /dev/null + +( startgroup "Uploading packages" ) 2> /dev/null + if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then - echo -e "\n\nUploading the packages." upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" ./ ./recipe ./.ci_support/${CONFIG}.yaml -fi \ No newline at end of file +fi + +( endgroup "Uploading packages" ) 2> /dev/null \ No newline at end of file diff --git a/LICENSE.txt b/LICENSE.txt index 5f302793..ed3f451e 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,5 +1,5 @@ BSD 3-clause license -Copyright (c) 2015-2020, conda-forge contributors +Copyright (c) 2015-2021, conda-forge contributors All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/README.md b/README.md index 38d9c56b..3797ddfd 100644 --- a/README.md +++ b/README.md @@ -36,13 +36,6 @@ Current build status <table> <thead><tr><th>Variant</th><th>Status</th></tr></thead> <tbody><tr> - <td>linux_64_python3.6.____cpython</td> - <td> - <a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=4385&branchName=master"> - <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=linux&configuration=linux_64_python3.6.____cpython" alt="variant"> - </a> - </td> - </tr><tr> <td>linux_64_python3.7.____cpython</td> <td> <a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=4385&branchName=master"> @@ -57,10 +50,10 @@ Current build status </a> </td> </tr><tr> - <td>osx_64_python3.6.____cpython</td> + <td>linux_64_python3.9.____cpython</td> <td> <a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=4385&branchName=master"> - <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=osx&configuration=osx_64_python3.6.____cpython" alt="variant"> + <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=linux&configuration=linux_64_python3.9.____cpython" alt="variant"> </a> </td> </tr><tr> @@ -78,24 +71,24 @@ Current build status </a> </td> </tr><tr> - <td>win_64_python3.6.____cpython</td> + <td>osx_64_python3.9.____cpython</td> <td> <a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=4385&branchName=master"> - <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=win&configuration=win_64_python3.6.____cpython" alt="variant"> + <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=osx&configuration=osx_64_python3.9.____cpython" alt="variant"> </a> </td> </tr><tr> - <td>win_64_python3.7.____cpython</td> + <td>osx_arm64_python3.8.____cpython</td> <td> <a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=4385&branchName=master"> - <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=win&configuration=win_64_python3.7.____cpython" alt="variant"> + <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=osx&configuration=osx_arm64_python3.8.____cpython" alt="variant"> </a> </td> </tr><tr> - <td>win_64_python3.8.____cpython</td> + <td>osx_arm64_python3.9.____cpython</td> <td> <a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=4385&branchName=master"> - <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=win&configuration=win_64_python3.8.____cpython" alt="variant"> + <img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/tensorflow-feedstock?branchName=master&jobName=osx&configuration=osx_arm64_python3.9.____cpython" alt="variant"> </a> </td> </tr> @@ -115,6 +108,7 @@ Current release info | [](https://anaconda.org/conda-forge/libtensorflow_cc) | [](https://anaconda.org/conda-forge/libtensorflow_cc) | [](https://anaconda.org/conda-forge/libtensorflow_cc) | [](https://anaconda.org/conda-forge/libtensorflow_cc) | | [](https://anaconda.org/conda-forge/tensorflow) | [](https://anaconda.org/conda-forge/tensorflow) | [](https://anaconda.org/conda-forge/tensorflow) | [](https://anaconda.org/conda-forge/tensorflow) | | [](https://anaconda.org/conda-forge/tensorflow-base) | [](https://anaconda.org/conda-forge/tensorflow-base) | [](https://anaconda.org/conda-forge/tensorflow-base) | [](https://anaconda.org/conda-forge/tensorflow-base) | +| [](https://anaconda.org/conda-forge/tensorflow-estimator) | [](https://anaconda.org/conda-forge/tensorflow-estimator) | [](https://anaconda.org/conda-forge/tensorflow-estimator) | [](https://anaconda.org/conda-forge/tensorflow-estimator) | Installing tensorflow ===================== @@ -123,12 +117,13 @@ Installing `tensorflow` from the `conda-forge` channel can be achieved by adding ``` conda config --add channels conda-forge +conda config --set channel_priority strict ``` -Once the `conda-forge` channel has been enabled, `libtensorflow, libtensorflow_cc, tensorflow, tensorflow-base` can be installed with: +Once the `conda-forge` channel has been enabled, `libtensorflow, libtensorflow_cc, tensorflow, tensorflow-base, tensorflow-estimator` can be installed with: ``` -conda install libtensorflow libtensorflow_cc tensorflow tensorflow-base +conda install libtensorflow libtensorflow_cc tensorflow tensorflow-base tensorflow-estimator ``` It is possible to list all of the versions of `libtensorflow` available on your platform with: @@ -193,9 +188,9 @@ build distinct package versions. In order to produce a uniquely identifiable distribution: * If the version of a package **is not** being increased, please add or increase - the [``build/number``](https://conda.io/docs/user-guide/tasks/build-packages/define-metadata.html#build-number-and-string). + the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string). * If the version of a package **is** being increased, please remember to return - the [``build/number``](https://conda.io/docs/user-guide/tasks/build-packages/define-metadata.html#build-number-and-string) + the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string) back to 0. Feedstock Maintainers @@ -204,8 +199,10 @@ Feedstock Maintainers * [@farhantejani](https://github.com/farhantejani/) * [@ghego](https://github.com/ghego/) * [@gilbertfrancois](https://github.com/gilbertfrancois/) +* [@h-vetinari](https://github.com/h-vetinari/) * [@hajapy](https://github.com/hajapy/) * [@jschueller](https://github.com/jschueller/) * [@njzjz](https://github.com/njzjz/) * [@waitingkuo](https://github.com/waitingkuo/) +* [@xhochy](https://github.com/xhochy/) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 6b346f50..33a441c1 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -4,5 +4,4 @@ jobs: - template: ./.azure-pipelines/azure-pipelines-linux.yml - - template: ./.azure-pipelines/azure-pipelines-win.yml - template: ./.azure-pipelines/azure-pipelines-osx.yml \ No newline at end of file diff --git a/build-locally.py b/build-locally.py index a7cdfdfa..00eeb34b 100755 --- a/build-locally.py +++ b/build-locally.py @@ -3,10 +3,11 @@ # This file has been generated by conda-smithy in order to build the recipe # locally. # -import glob import os +import glob import subprocess from argparse import ArgumentParser +import platform def setup_environment(ns): @@ -16,6 +17,10 @@ def setup_environment(ns): os.environ["BUILD_WITH_CONDA_DEBUG"] = "1" if ns.output_id: os.environ["BUILD_OUTPUT_ID"] = ns.output_id + if "MINIFORGE_HOME" not in os.environ: + os.environ["MINIFORGE_HOME"] = os.path.join( + os.path.dirname(__file__), "miniforge3" + ) def run_docker_build(ns): @@ -23,11 +28,16 @@ def run_docker_build(ns): subprocess.check_call([script]) +def run_osx_build(ns): + script = ".scripts/run_osx_build.sh" + subprocess.check_call([script]) + + def verify_config(ns): valid_configs = { os.path.basename(f)[:-5] for f in glob.glob(".ci_support/*.yaml") } - print("valid configs are {valid_configs}".format(valid_configs=valid_configs)) + print(f"valid configs are {valid_configs}") if ns.config in valid_configs: print("Using " + ns.config + " configuration") return @@ -38,18 +48,24 @@ def verify_config(ns): print("config not selected, please choose from the following:\n") selections = list(enumerate(sorted(valid_configs), 1)) for i, c in selections: - print("{i}. {c}".format(i=i, c=c)) + print(f"{i}. {c}") s = input("\n> ") idx = int(s) - 1 ns.config = selections[idx][1] - print("selected {config}".format(config=ns.config)) + print(f"selected {ns.config}") else: raise ValueError("config " + ns.config + " is not valid") # Remove the following, as implemented - if not ns.config.startswith("linux"): + if ns.config.startswith("win"): raise ValueError( - "only Linux configs currently supported, got {config}".format(config=ns.config) + f"only Linux/macOS configs currently supported, got {ns.config}" ) + elif ns.config.startswith("osx") and platform.system() == "Darwin": + if "OSX_SDK_DIR" not in os.environ: + raise RuntimeError( + "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=/opt'" + "to download the SDK automatically to '/opt/MacOSX<ver>.sdk'" + ) def main(args=None): @@ -68,7 +84,12 @@ def main(args=None): verify_config(ns) setup_environment(ns) - run_docker_build(ns) + if ns.config.startswith("linux") or ( + ns.config.startswith("osx") and platform.system() == "Linux" + ): + run_docker_build(ns) + elif ns.config.startswith("osx"): + run_osx_build(ns) if __name__ == "__main__": diff --git a/conda-forge.yml b/conda-forge.yml index 7abbcf1a..073f0ddb 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,9 +1,5 @@ -travis: - secure: - BINSTAR_TOKEN: NBULVMw70vHV7ch6QWoFGS84M9ghYbix6Fru8O6db3pTyPXZoNlOaNdkHKaOdR88sahmjZx23T00bk9G/UjDqNO+SmPpf30m2Mt8DY+in3rAB9fi9xSJBjZ51xnAVH3JXXGo884wgtjLkCwk7aBYNLtNWtJl0AA5VgxS+1guMGYsqWiPDAtiFEswyhB4ZVO2budldeatef5unjpYC2im9gok5/fGHlRFGf8ds1K4xc22uIDeqnlR4hbu1IUS4n1+qLNi+TYLjoVyoghIm6BBuJyVMoWyGNayGootFByfPGttnfYU/9D9Z/cfonpW3iBkz3oLfq6vtKRE0mwxRdY0ZpPhQitCH6dLWA7z+9aRSLSfnZkwuFGr8uosVWFTqG0WwudgURr2PLSZf14U7tK1sVLnlVaRIfghmCFh9m8GYTImlrfUPZHsS+dtXOnLosPmH97XJke028J6dIwtNXsMaiQSJc+R7ugN6QbGKgDklsgEWJyUm7+LfSVbMf03u9fslU8V7U/TUeCqZye86GWjmcz+s42sqQ0XooPdqj3PMG6f9SeH/muxpMFnnxSoiITnmgB64dhTrymv1U0edWlbgvg9u4F7/opKExfBZtTcL5op5MKrKsMRgOAho6hixedoBXtXUts8UB4xMt3qTzDz43PkaeA096TCqyJbYJTtZqM= -appveyor: - secure: - BINSTAR_TOKEN: tumuXLL8PU75WMnRDemRy02ruEq2RpNxeK3dz0MjFssnosPm2v4EFjfNB4PTotA1 +build_platform: + osx_arm64: osx_64 provider: win: azure conda_forge_output_validation: true diff --git a/recipe/bld.bat b/recipe/bld.bat index 70703d23..bca26ebf 100644 --- a/recipe/bld.bat +++ b/recipe/bld.bat @@ -1,2 +1,65 @@ -pip install --no-deps -vv *.whl -for %%f in (*.whl) do pip install --no-deps -vv "%%f" +@echo on + +set "PATH=%CD%:%PATH%" +set LIBDIR=%LIBRARY_BIN% +set INCLUDEDIR=%LIBRARY_INC% + +set "TF_SYSTEM_LIBS=llvm,swig" + +:: do not build with MKL support +set TF_NEED_MKL=0 +set BAZEL_MKL_OPT= + +mkdir -p ./bazel_output_base +set BAZEL_OPTS= + +:: the following arguments are useful for debugging +:: --logging=6 +:: --subcommands +:: jobs can be used to limit parallel builds and reduce resource needs +:: --jobs=20 +:: Set compiler and linker flags as bazel does not account for CFLAGS, +:: CXXFLAGS and LDFLAGS. +BUILD_OPTS=" +--copt=-march=nocona +--copt=-mtune=haswell +--copt=-ftree-vectorize +--copt=-fPIC +--copt=-fstack-protector-strong +--copt=-O2 +--cxxopt=-fvisibility-inlines-hidden +--cxxopt=-fmessage-length=0 +--linkopt=-zrelro +--linkopt=-znow +--verbose_failures +%BAZEL_MKL_OPT% +--config=opt" +set TF_ENABLE_XLA=0 +set BUILD_TARGET="//tensorflow/tools/pip_package:build_pip_package //tensorflow:libtensorflow.so //tensorflow:libtensorflow_cc.so" + +:: Python settings +set PYTHON_BIN_PATH=%PYTHON% +set PYTHON_LIB_PATH=%SP_DIR% +set USE_DEFAULT_PYTHON_LIB_PATH=1 + +:: additional settings +set CC_OPT_FLAGS="-march=nocona -mtune=haswell" +set TF_NEED_OPENCL=0 +set TF_NEED_OPENCL_SYCL=0 +set TF_NEED_COMPUTECPP=0 +set TF_NEED_CUDA=0 +set TF_CUDA_CLANG=0 +set TF_NEED_TENSORRT=0 +set TF_NEED_ROCM=0 +set TF_NEED_MPI=0 +set TF_DOWNLOAD_CLANG=0 +set TF_SET_ANDROID_WORKSPACE=0 +./configure + +:: build using bazel +bazel %BAZEL_OPTS% build %BUILD_OPTS% %BUILD_TARGET% + +:: build a whl file +mkdir -p %SRC_DIR%\\tensorflow_pkg +bazel-bin\\tensorflow\\tools\\pip_package\\build_pip_package %SRC_DIR%\\tensorflow_pkg + diff --git a/recipe/build.sh b/recipe/build.sh index c9c04dbf..f0504dc9 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -2,24 +2,49 @@ set -ex -if [[ "$target_platform" == "osx-64" ]]; then - # install the whl using pip - pip install --no-deps *.whl - - # The tensorboard package has the proper entrypoint - ls -l ${SP_DIR} -# rm -f ${PREFIX}/bin/tensorboard - - exit 0 -fi - export PATH="$PWD:$PATH" export CC=$(basename $CC) export CXX=$(basename $CXX) export LIBDIR=$PREFIX/lib export INCLUDEDIR=$PREFIX/include -export TF_SYSTEM_LIBS="llvm,swig" +# Needs a bazel build: +# com_google_absl +# Build failures in tensorflow/core/platform/s3/aws_crypto.cc +# boringssl (i.e. system openssl) +# Most importantly: Write a patch that uses system LLVM libs for sure as well as MLIR and oneDNN/mkldnn +# TODO(check): +# absl_py +# com_github_googleapis_googleapis +# com_github_googlecloudplatform_google_cloud_cpp +# Needs c++17, try on linux +# com_googlesource_code_re2 + +# The possible values are specified in third_party/systemlibs/syslibs_configure.bzl +# The versions for them can be found in tensorflow/workspace.bzl +export TF_SYSTEM_LIBS=" + absl_py + astor_archive + astunparse_archive + boringssl + com_github_googlecloudplatform_google_cloud_cpp + com_github_grpc_grpc + com_google_protobuf + curl + cython + dill_archive + flatbuffers + gast_archive + gif + icu + libjpeg_turbo + org_sqlite + png + pybind11 + snappy + zlib + " +sed -i -e "s/GRPCIO_VERSION/${grpc_cpp}/" tensorflow/tools/pip_package/setup.py # do not build with MKL support export TF_NEED_MKL=0 @@ -27,66 +52,41 @@ export BAZEL_MKL_OPT="" mkdir -p ./bazel_output_base export BAZEL_OPTS="" - -if [[ "$target_platform" == "osx-64" ]]; then - # set up bazel config file for conda provided clang toolchain - cp -r ${RECIPE_DIR}/custom_clang_toolchain . - pushd custom_clang_toolchain - cp ../$CC cc_wrapper.sh - sed -e "s:\${PREFIX}:${BUILD_PREFIX}:" \ - -e "s:\${LD}:${LD}:" \ - -e "s:\${NM}:${NM}:" \ - -e "s:\${STRIP}:${STRIP}:" \ - -e "s:\${LIBTOOL}:${LIBTOOL}:" \ - -e "s:\${CONDA_BUILD_SYSROOT}:${CONDA_BUILD_SYSROOT}:" \ - CROSSTOOL.template > CROSSTOOL - popd - export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 - BUILD_OPTS=" - --crosstool_top=//custom_clang_toolchain:toolchain - --verbose_failures - ${BAZEL_MKL_OPT} - --config=opt" - export TF_ENABLE_XLA=0 - export BUILD_TARGET="//tensorflow/tools/pip_package:build_pip_package" +export CC_OPT_FLAGS="${CFLAGS}" + +# Quick debug: +# cp -r ${RECIPE_DIR}/build.sh . && bazel clean && bash -x build.sh --logging=6 | tee log.txt +# Dependency graph: +# bazel query 'deps(//tensorflow/tools/lib_package:libtensorflow)' --output graph > graph.in +if [[ "${target_platform}" == osx-* ]]; then + export LDFLAGS="${LDFLAGS} -lz -framework CoreFoundation -Xlinker -undefined -Xlinker dynamic_lookup" else - # Linux - # the following arguments are useful for debugging - # --logging=6 - # --subcommands - # jobs can be used to limit parallel builds and reduce resource needs - # --jobs=20 - # Set compiler and linker flags as bazel does not account for CFLAGS, - # CXXFLAGS and LDFLAGS. - BUILD_OPTS=" - --copt=-march=nocona - --copt=-mtune=haswell - --copt=-ftree-vectorize - --copt=-fPIC - --copt=-fstack-protector-strong - --copt=-O2 - --cxxopt=-fvisibility-inlines-hidden - --cxxopt=-fmessage-length=0 - --linkopt=-zrelro - --linkopt=-znow - --verbose_failures - ${BAZEL_MKL_OPT} - --config=opt" - export TF_ENABLE_XLA=0 - export BUILD_TARGET="//tensorflow/tools/pip_package:build_pip_package //tensorflow:libtensorflow.so //tensorflow:libtensorflow_cc.so" + export LDFLAGS="${LDFLAGS} -lrt" fi -# TODO: publish 2.0 branch in bazel-feedstock -export BAZEL_VERSION=2.0.0 -export EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk" -mkdir bazel_local -cd bazel_local -curl -sSOL https://github.com/bazelbuild/bazel/releases/download/${BAZEL_VERSION}/bazel-${BAZEL_VERSION}-dist.zip -unzip bazel-${BAZEL_VERSION}-dist.zip -./compile.sh -cd .. -export PATH="$PWD/bazel_local/output:$PATH" -bazel version +source ${RECIPE_DIR}/gen-bazel-toolchain.sh + +if [[ "${target_platform}" == "osx-64" ]]; then + # Tensorflow doesn't cope yet with an explicit architecture (darwin_x86_64) on osx-64 yet. + TARGET_CPU=darwin +fi + +# If you really want to see what is executed, add --subcommands +BUILD_OPTS=" + --crosstool_top=//custom_toolchain:toolchain + --logging=6 + --verbose_failures + --config=opt + --define=PREFIX=${PREFIX} + --define=PROTOBUF_INCLUDE_PATH=${PREFIX}/include + --config=noaws + --cpu=${TARGET_CPU}" + +if [[ "${target_platform}" == "osx-arm64" ]]; then + BUILD_OPTS="${BUILD_OPTS} --config=macos_arm64" +fi +export TF_ENABLE_XLA=0 +export BUILD_TARGET="//tensorflow/tools/pip_package:build_pip_package //tensorflow/tools/lib_package:libtensorflow //tensorflow:libtensorflow_cc.so" # Python settings export PYTHON_BIN_PATH=${PYTHON} @@ -94,7 +94,6 @@ export PYTHON_LIB_PATH=${SP_DIR} export USE_DEFAULT_PYTHON_LIB_PATH=1 # additional settings -export CC_OPT_FLAGS="-march=nocona -mtune=haswell" export TF_NEED_OPENCL=0 export TF_NEED_OPENCL_SYCL=0 export TF_NEED_COMPUTECPP=0 @@ -105,6 +104,12 @@ export TF_NEED_ROCM=0 export TF_NEED_MPI=0 export TF_DOWNLOAD_CLANG=0 export TF_SET_ANDROID_WORKSPACE=0 +export TF_CONFIGURE_IOS=0 + +# Get rid of unwanted defaults +sed -i -e "/PROTOBUF_INCLUDE_PATH/c\ " .bazelrc +sed -i -e "/PREFIX/c\ " .bazelrc + ./configure # build using bazel @@ -112,10 +117,29 @@ bazel ${BAZEL_OPTS} build ${BUILD_OPTS} ${BUILD_TARGET} # build a whl file mkdir -p $SRC_DIR/tensorflow_pkg -bazel-bin/tensorflow/tools/pip_package/build_pip_package $SRC_DIR/tensorflow_pkg - -# install the whl using pip -pip install --no-deps $SRC_DIR/tensorflow_pkg/*.whl +bash -x bazel-bin/tensorflow/tools/pip_package/build_pip_package $SRC_DIR/tensorflow_pkg + +if [[ "${target_platform}" == linux-* ]]; then + cp $SRC_DIR/bazel-bin/tensorflow/tools/lib_package/libtensorflow.tar.gz $SRC_DIR + mkdir -p $SRC_DIR/libtensorflow_cc_output/lib + cp -d bazel-bin/tensorflow/libtensorflow_cc.so* $SRC_DIR/libtensorflow_cc_output/lib/ + cp -d bazel-bin/tensorflow/libtensorflow_framework.so* $SRC_DIR/libtensorflow_cc_output/lib/ + cp -d $SRC_DIR/libtensorflow_cc_output/lib/libtensorflow_framework.so.2 $SRC_DIR/libtensorflow_cc_output/lib/libtensorflow_framework.so + # Make writable so patchelf can do its magic + chmod u+w $SRC_DIR/libtensorflow_cc_output/lib/libtensorflow* + + mkdir -p $SRC_DIR/libtensorflow_cc_output/include/tensorflow + rsync -avzh --exclude '_virtual_includes/' --exclude 'pip_package/' --exclude 'lib_package/' --include '*/' --include '*.h' --include '*.inc' --exclude '*' bazel-bin/ $SRC_DIR/libtensorflow_cc_output/include + rsync -avzh --include '*/' --include '*.h' --include '*.inc' --exclude '*' tensorflow/cc $SRC_DIR/libtensorflow_cc_output/include/tensorflow/ + rsync -avzh --include '*/' --include '*.h' --include '*.inc' --exclude '*' tensorflow/core $SRC_DIR/libtensorflow_cc_output/include/tensorflow/ + rsync -avzh --include '*/' --include '*' --exclude '*.cc' third_party/ $SRC_DIR/libtensorflow_cc_output/include/third_party/ + rsync -avzh --include '*/' --include '*' --exclude '*.txt' bazel-work/external/eigen_archive/Eigen/ $SRC_DIR/libtensorflow_cc_output/include/Eigen/ + rsync -avzh --include '*/' --include '*' --exclude '*.txt' bazel-work/external/eigen_archive/unsupported/ $SRC_DIR/libtensorflow_cc_output/include/unsupported/ + pushd $SRC_DIR/libtensorflow_cc_output + tar cf ../libtensorflow_cc_output.tar . + popd + chmod -R u+rw $SRC_DIR/libtensorflow_cc_output + rm -r $SRC_DIR/libtensorflow_cc_output +fi -# The tensorboard package has the proper entrypoint -rm -f ${PREFIX}/bin/tensorboard +bazel clean diff --git a/recipe/build_estimator.sh b/recipe/build_estimator.sh new file mode 100644 index 00000000..2c577ffa --- /dev/null +++ b/recipe/build_estimator.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +set -exuo pipefail + +pushd tensorflow-estimator + +WHEEL_DIR=${PWD}/wheel_dir +mkdir -p ${WHEEL_DIR} +bazel build tensorflow_estimator/tools/pip_package:build_pip_package +bazel-bin/tensorflow_estimator/tools/pip_package/build_pip_package ${WHEEL_DIR} +${PYTHON} -m pip install --no-deps ${WHEEL_DIR}/*.whl +bazel clean +popd diff --git a/recipe/build_pkg.bat b/recipe/build_pkg.bat new file mode 100644 index 00000000..f7cb14ea --- /dev/null +++ b/recipe/build_pkg.bat @@ -0,0 +1,5 @@ +:: install the whl using pip +pip install --no-deps %SRC_DIR%\\tensorflow_pkg\\*.whl + +:: The tensorboard package has the proper entrypoint +rm -f %LIBRARY_BIN%\\tensorboard diff --git a/recipe/build_pkg.sh b/recipe/build_pkg.sh new file mode 100644 index 00000000..893a9792 --- /dev/null +++ b/recipe/build_pkg.sh @@ -0,0 +1,5 @@ +# install the whl using pip +pip install --no-deps $SRC_DIR/tensorflow_pkg/*.whl + +# The tensorboard package has the proper entrypoint +rm -f ${PREFIX}/bin/tensorboard diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml new file mode 100644 index 00000000..f8760c8b --- /dev/null +++ b/recipe/conda_build_config.yaml @@ -0,0 +1,2 @@ +MACOSX_SDK_VERSION: # [osx and x86_64] + - "10.12" # [osx and x86_64] diff --git a/recipe/cp_libtensorflow.sh b/recipe/cp_libtensorflow.sh index 525d78a9..303f84ea 100644 --- a/recipe/cp_libtensorflow.sh +++ b/recipe/cp_libtensorflow.sh @@ -1,7 +1,5 @@ -# copy libraries -mkdir -p ${PREFIX}/lib -cp bazel-bin/tensorflow/*.so ${PREFIX}/lib/ +# https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/lib_package/README.md +tar -C ${PREFIX} -xzf $SRC_DIR/libtensorflow.tar.gz -# copy includes -mkdir -p ${PREFIX}/include/tensorflow/c -cp -R tensorflow/c/* ${PREFIX}/include/tensorflow/c/. +# Make writable so patchelf can do its magic +chmod u+w $PREFIX/lib/libtensorflow* diff --git a/recipe/cp_libtensorflow_cc.sh b/recipe/cp_libtensorflow_cc.sh index c5c8e38a..d72352ff 100644 --- a/recipe/cp_libtensorflow_cc.sh +++ b/recipe/cp_libtensorflow_cc.sh @@ -1,22 +1 @@ -# copy libraries -mkdir -p ${PREFIX}/lib -cp bazel-bin/tensorflow/libtensorflow_cc.so ${PREFIX}/lib/ -cp bazel-bin/tensorflow/libtensorflow_framework.so ${PREFIX}/lib/ - -# remove cc files -find bazel-genfiles/ -name "*.cc" -type f -delete -find tensorflow/cc -name "*.cc" -type f -delete -find tensorflow/core -name "*.cc" -type f -delete -find third_party -name "*.cc" -type f -delete -find bazel-work/external/com_google_absl/absl -name "*.cc" -type f -delete - -# copy includes -mkdir -p ${PREFIX}/include/tensorflow -cp -r bazel-genfiles/* ${PREFIX}/include/ -cp -r tensorflow/cc/ ${PREFIX}/include/tensorflow -cp -r tensorflow/core/ ${PREFIX}/include/tensorflow -cp -r third_party/ ${PREFIX}/include - -cp -r bazel-work/external/com_google_absl/absl/ ${PREFIX}/include -cp -r bazel-work/external/eigen_archive/Eigen/ ${PREFIX}/include -cp -r bazel-work/external/eigen_archive/unsupported/ ${PREFIX}/include +tar -C ${PREFIX} -xf $SRC_DIR/libtensorflow_cc_output.tar diff --git a/recipe/custom_toolchain/BUILD b/recipe/custom_toolchain/BUILD new file mode 100644 index 00000000..c09094a2 --- /dev/null +++ b/recipe/custom_toolchain/BUILD @@ -0,0 +1,68 @@ +package(default_visibility = ["//visibility:public"]) + +filegroup( + name = "empty", + srcs = [], +) + +filegroup( + name = "cc_wrapper", + srcs = ["cc_wrapper.sh"], +) + +filegroup( + name = "compiler_deps", + srcs = glob(["extra_tools/**"]) + [":cc_wrapper"], +) + +load( + ":cc_toolchain_config.bzl", "cc_toolchain_config" + ) + +cc_toolchain_config( + name = "cc-compiler-target-config" +) + +load( + ":cc_toolchain_build_config.bzl", build_cc_toolchain_config = "cc_toolchain_config" +) +build_cc_toolchain_config( + name = "cc-compiler-build-config" +) + +toolchains = { + "BUILD_CPU|compiler": ":cc-compiler-build", + "BUILD_CPU": ":cc-compiler-build", +} +toolchains["TARGET_CPU|compiler"] = ":cc-compiler-target" +toolchains["TARGET_CPU"] = ":cc-compiler-target" +cc_toolchain_suite( + name = "toolchain", + toolchains = toolchains, +) + +cc_toolchain( + name = "cc-compiler-target", + all_files = ":compiler_deps", + compiler_files = ":compiler_deps", + toolchain_identifier = "local", + toolchain_config = ":cc-compiler-target-config", + dwp_files = ":empty", + linker_files = ":compiler_deps", + objcopy_files = ":empty", + strip_files = ":empty", + supports_param_files = 0, +) + +cc_toolchain( + name = "cc-compiler-build", + all_files = ":compiler_deps", + compiler_files = ":compiler_deps", + toolchain_identifier = "build", + toolchain_config = ":cc-compiler-build-config", + dwp_files = ":empty", + linker_files = ":compiler_deps", + objcopy_files = ":empty", + strip_files = ":empty", + supports_param_files = 0, +) diff --git a/recipe/custom_toolchain/CROSSTOOL.template b/recipe/custom_toolchain/CROSSTOOL.template new file mode 100644 index 00000000..c77aa9d1 --- /dev/null +++ b/recipe/custom_toolchain/CROSSTOOL.template @@ -0,0 +1,88 @@ +major_version: "local" +minor_version: "" +default_target_cpu: "same_as_host" + +default_toolchain { + cpu: "darwin" + toolchain_identifier: "local" +} + +toolchain { + toolchain_identifier: "local" + abi_version: "local" + abi_libc_version: "local" + builtin_sysroot: "" + compiler: "compiler" + host_system_name: "local" + needsPic: true + supports_gold_linker: false + supports_incremental_linker: false + supports_fission: false + supports_interface_shared_objects: false + supports_normalizing_ar: false + supports_start_end_lib: false + target_libc: "macosx" + target_cpu: "darwin" + target_system_name: "local" + cxx_flag: "-stdlib=libc++" + cxx_flag: "-fvisibility-inlines-hidden" + cxx_flag: "-std=c++14" + cxx_flag: "-fmessage-length=0" + linker_flag: "-Wl,-pie" + linker_flag: "-headerpad_max_install_names" + linker_flag: "-Wl,-dead_strip_dylibs" + linker_flag: "-undefined" + linker_flag: "dynamic_lookup" + linker_flag: "-force_load" + linker_flag: "${BUILD_PREFIX}/lib/libc++.a" + linker_flag: "-force_load" + linker_flag: "${BUILD_PREFIX}/lib/libc++abi.a" + linker_flag: "-nostdlib" + linker_flag: "-lc" + linker_flag: "-isysroot${CONDA_BUILD_SYSROOT}" + cxx_builtin_include_directory: "${PREFIX}/include/c++/v1" + cxx_builtin_include_directory: "${PREFIX}/lib/clang/10.0.0/include" + cxx_builtin_include_directory: "${CONDA_BUILD_SYSROOT}/usr/include" + cxx_builtin_include_directory: "${CONDA_BUILD_SYSROOT}/System/Library/Frameworks" + objcopy_embed_flag: "-I" + objcopy_embed_flag: "binary" + unfiltered_cxx_flag: "-no-canonical-prefixes" + unfiltered_cxx_flag: "-Wno-builtin-macro-redefined" + unfiltered_cxx_flag: "-D__DATE__=\"redacted\"" + unfiltered_cxx_flag: "-D__TIMESTAMP__=\"redacted\"" + unfiltered_cxx_flag: "-D__TIME__=\"redacted\"" + compiler_flag: "-march=core2" + compiler_flag: "-mtune=haswell" + compiler_flag: "-mssse3" + compiler_flag: "-ftree-vectorize" + compiler_flag: "-fPIC" + compiler_flag: "-fPIE" + compiler_flag: "-fstack-protector-strong" + compiler_flag: "-O2" + compiler_flag: "-pipe" + tool_path {name: "ld" path: "${LD}" } + tool_path {name: "cpp" path: "/usr/bin/cpp" } + tool_path {name: "dwp" path: "/usr/bin/dwp" } + tool_path {name: "gcov" path: "/usr/bin/gcov" } + tool_path {name: "nm" path: "${NM}" } + tool_path {name: "objcopy" path: "/usr/bin/objcopy" } + tool_path {name: "objdump" path: "/usr/bin/objdump" } + tool_path {name: "strip" path: "${STRIP}" } + tool_path {name: "gcc" path: "cc_wrapper.sh" } + tool_path {name: "ar" path: "${LIBTOOL}" } + + compilation_mode_flags { + mode: DBG + compiler_flag: "-g" + } + compilation_mode_flags { + mode: OPT + compiler_flag: "-g0" + compiler_flag: "-O2" + compiler_flag: "-D_FORTIFY_SOURCE=1" + compiler_flag: "-DNDEBUG" + compiler_flag: "-ffunction-sections" + compiler_flag: "-fdata-sections" + } + linking_mode_flags { mode: DYNAMIC } +} diff --git a/recipe/custom_toolchain/WORKSPACE b/recipe/custom_toolchain/WORKSPACE new file mode 100644 index 00000000..12558650 --- /dev/null +++ b/recipe/custom_toolchain/WORKSPACE @@ -0,0 +1 @@ +workspace(name = "local_config_cc") diff --git a/recipe/custom_toolchain/cc_toolchain_config.bzl b/recipe/custom_toolchain/cc_toolchain_config.bzl new file mode 100644 index 00000000..a312d075 --- /dev/null +++ b/recipe/custom_toolchain/cc_toolchain_config.bzl @@ -0,0 +1,332 @@ +# Adapted from the following links and pulling in options from old CROSSTOOL.template +# https://docs.bazel.build/versions/0.26.0/tutorial/cc-toolchain-config.html +# https://github.com/bazelbuild/bazel/blob/4dfc83d5f11e9190e9e25dee4c7dc2a71cd7b8fd/tools/osx/crosstool/cc_toolchain_config.bzl +# https://docs.bazel.build/versions/master/skylark/lib/cc_common.html#create_cc_toolchain_config_info + +load("@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", + "feature", + "flag_group", + "flag_set", + "tool_path", + "with_feature_set", + ) + +load("@bazel_tools//tools/build_defs/cc:action_names.bzl", + "ACTION_NAMES") + +def _impl(ctx): + tool_paths = [ + tool_path( + name = "gcc", + path = "${GCC}", + ), + tool_path( + name = "ld", + path = "${LD}", + ), + tool_path( + name = "ar", + path = "${BUILD_PREFIX}/bin/${AR}", + ), + tool_path( + name = "cpp", + path = "/usr/bin/cpp", + ), + tool_path( + name = "gcov", + path = "/usr/bin/gcov", + ), + tool_path( + name = "nm", + path = "${NM}", + ), + tool_path( + name = "objdump", + path = "/usr/bin/objdump", + ), + tool_path( + name = "strip", + path = "${STRIP}", + ), + ] + + all_compile_actions = [ + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.clif_match, + ACTION_NAMES.lto_backend, + ] + + all_cpp_compile_actions = [ + ACTION_NAMES.cpp_compile, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.clif_match, + ] + + preprocessor_compile_actions = [ + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.clif_match, + ] + + codegen_compile_actions = [ + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.lto_backend, + ] + + all_link_actions = [ + ACTION_NAMES.cpp_link_executable, + ACTION_NAMES.cpp_link_dynamic_library, + ACTION_NAMES.cpp_link_nodeps_dynamic_library, + ] + + compiler_flags = feature( + name = "compiler_flags", + enabled = True, + flag_sets = [ + flag_set( + actions = all_compile_actions, + flag_groups = [flag_group(flags = "${CFLAGS} ${CPPFLAGS}".split(" "))], + ), + ], + ) + + objcpp_flags = feature( + name = "objcpp_flags", + enabled = True, + flag_sets = [ + flag_set( + actions = [ + ACTION_NAMES.objcpp_compile, + ], + flag_groups = [flag_group(flags = "${CXXFLAGS} ${CPPFLAGS}".split(" "))], + ), + ], + ) + + cxx_flags = feature( + name = "cxx_flags", + enabled = True, + flag_sets = [ + flag_set( + actions = [ + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.lto_backend, + ACTION_NAMES.clif_match, + ], + flag_groups = [flag_group(flags = "${CXXFLAGS} ${CPPFLAGS}".split(" "))], + ), + ], + ) + + if "TARGET_PLATFORM".startswith("osx"): + toolchain_include_directories_flags = [ + "-isystem", + "${BUILD_PREFIX}/include/c++/v1", + "-isystem", + "${BUILD_PREFIX}/lib/clang/${COMPILER_VERSION}/include", + "-isystem", + "${CONDA_BUILD_SYSROOT}/usr/include", + "-isystem", + "${CONDA_BUILD_SYSROOT}/System/Library/Frameworks", + "-isystem", + "${PREFIX}/include", + ] + else: + toolchain_include_directories_flags = [ + "-isystem", + "${PREFIX}/include", + ] + + toolchain_include_directories_feature = feature( + name = "toolchain_include_directories", + enabled = True, + flag_sets = [ + flag_set( + actions = [ + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.lto_backend, + ACTION_NAMES.clif_match, + ], + flag_groups = [ + flag_group( + flags = toolchain_include_directories_flags, + ), + ], + ), + ], + ) + + linker_flags = feature( + name = "linker_flags", + flag_sets = [ + flag_set ( + actions = [ + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.objcpp_compile, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.lto_backend, + ACTION_NAMES.clif_match, + ], + flag_groups = [flag_group(flags = "-l${LIBCXX} ${LDFLAGS}".split(" "))], + ), + ], + ) + + link_libcpp_feature = feature( + name = "link_libc++", + enabled = True, + flag_sets = [ + flag_set( + actions = all_link_actions + + ["objc-executable", "objc++-executable"], + flag_groups = [flag_group(flags = "-l${LIBCXX} ${LDFLAGS}".split(" "))], + ), + ], + ) + + supports_pic_feature = feature( + name = "supports_pic", + enabled = True + ) + + supports_dynamic_linker = feature( + name = "supports_dynamic_linker", + enabled = True + ) + + opt = feature( + name = "opt", + enabled = True, + flag_sets = [ + flag_set( + actions = [ + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.lto_backend, + ACTION_NAMES.clif_match, + ], + flag_groups = [ + flag_group( + flags = [ + "-g0", + "-O2", + "-D_FORTIFY_SOURCE=1", + "-DNDEBUG", + "-ffunction-sections", + "-fdata-sections", + ], + ), + ], + ), + ], + ) + + dbg = feature( + name = "dbg", + enabled = True, + flag_sets = [ + flag_set( + actions = [ + ACTION_NAMES.assemble, + ACTION_NAMES.preprocess_assemble, + ACTION_NAMES.linkstamp_compile, + ACTION_NAMES.c_compile, + ACTION_NAMES.cpp_compile, + ACTION_NAMES.cpp_header_parsing, + ACTION_NAMES.cpp_module_compile, + ACTION_NAMES.cpp_module_codegen, + ACTION_NAMES.lto_backend, + ACTION_NAMES.clif_match, + ], + flag_groups = [ + flag_group( + flags = [ + "-g" + ], + ), + ], + ), + ], + ) + + if "TARGET_PLATFORM".startswith("osx"): + cxx_builtin_include_directories = [ + "${CONDA_BUILD_SYSROOT}/System/Library/Frameworks", + "${CONDA_BUILD_SYSROOT}/usr/include", + "${BUILD_PREFIX}/lib/clang/${COMPILER_VERSION}/include", + "${BUILD_PREFIX}/include/c++/v1", + "${PREFIX}/include", + ] + else: + cxx_builtin_include_directories = [ + "${CONDA_BUILD_SYSROOT}/usr/include", + "${BUILD_PREFIX}/lib/gcc/${HOST}/${COMPILER_VERSION}", + "${BUILD_PREFIX}/${HOST}/include/c++/${COMPILER_VERSION}", + "${PREFIX}/include", + ] + + return cc_common.create_cc_toolchain_config_info( + ctx = ctx, + toolchain_identifier = "local", + host_system_name = "local", + #host_system_name = "TARGET_CPU", + target_system_name = "TARGET_SYSTEM", + target_cpu = "TARGET_CPU", + target_libc = "TARGET_LIBC", + compiler = "compiler", + abi_version = "local", + abi_libc_version = "local", + tool_paths = tool_paths, + cxx_builtin_include_directories = cxx_builtin_include_directories, + features = [toolchain_include_directories_feature, compiler_flags, cxx_flags, supports_pic_feature, linker_flags, supports_dynamic_linker, link_libcpp_feature, objcpp_flags], + ) + +cc_toolchain_config = rule( + implementation = _impl, + attrs = {}, + provides = [CcToolchainConfigInfo], +) diff --git a/recipe/custom_toolchain/cc_wrapper.sh.template b/recipe/custom_toolchain/cc_wrapper.sh.template new file mode 100644 index 00000000..559bc1e5 --- /dev/null +++ b/recipe/custom_toolchain/cc_wrapper.sh.template @@ -0,0 +1,107 @@ +#!/bin/bash +# +# Copyright 2015 The Bazel Authors. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# OS X relpath is not really working. This is a wrapper script around gcc +# to simulate relpath behavior. +# +# This wrapper uses install_name_tool to replace all paths in the binary +# (bazel-out/.../path/to/original/library.so) by the paths relative to +# the binary. It parses the command line to behave as rpath is supposed +# to work. +# +# See https://blogs.oracle.com/dipol/entry/dynamic_libraries_rpath_and_mac +# on how to set those paths for Mach-O binaries. +# +set -eu + +INSTALL_NAME_TOOL="${INSTALL_NAME_TOOL}" + +LIBS= +LIB_DIRS= +RPATHS= +OUTPUT= +# let parse the option list +for i in "$@"; do + if [[ "${OUTPUT}" = "1" ]]; then + OUTPUT=$i + elif [[ "$i" =~ ^-l(.*)$ ]]; then + LIBS="${BASH_REMATCH[1]} $LIBS" + elif [[ "$i" =~ ^-L(.*)$ ]]; then + LIB_DIRS="${BASH_REMATCH[1]} $LIB_DIRS" + elif [[ "$i" =~ ^-Wl,-rpath,\@loader_path/(.*)$ ]]; then + RPATHS="${BASH_REMATCH[1]} ${RPATHS}" + elif [[ "$i" = "-o" ]]; then + # output is coming + OUTPUT=1 + fi +done + +# Set-up the environment + + +# Call the C++ compiler +echo CONDA_BUILD_SYSROOT=${CONDA_BUILD_SYSROOT} ${CLANG} "$@" +CONDA_BUILD_SYSROOT=${CONDA_BUILD_SYSROOT} ${CLANG} "$@" + +function get_library_path() { + for libdir in ${LIB_DIRS}; do + if [ -f ${libdir}/lib$1.so ]; then + echo "${libdir}/lib$1.so" + elif [ -f ${libdir}/lib$1.dylib ]; then + echo "${libdir}/lib$1.dylib" + fi + done +} + +# A convenient method to return the actual path even for non symlinks +# and multi-level symlinks. +function get_realpath() { + local previous="$1" + local next=$(readlink "${previous}") + while [ -n "${next}" ]; do + previous="${next}" + next=$(readlink "${previous}") + done + echo "${previous}" +} + +# Get the path of a lib inside a tool +function get_otool_path() { + # the lib path is the path of the original lib relative to the workspace + get_realpath $1 | sed 's|^.*/bazel-out/|bazel-out/|' +} + +# Do replacements in the output +for rpath in ${RPATHS}; do + for lib in ${LIBS}; do + unset libname + if [ -f "$(dirname ${OUTPUT})/${rpath}/lib${lib}.so" ]; then + libname="lib${lib}.so" + elif [ -f "$(dirname ${OUTPUT})/${rpath}/lib${lib}.dylib" ]; then + libname="lib${lib}.dylib" + fi + # ${libname-} --> return $libname if defined, or undefined otherwise. This is to make + # this set -e friendly + if [[ -n "${libname-}" ]]; then + libpath=$(get_library_path ${lib}) + if [ -n "${libpath}" ]; then + ${INSTALL_NAME_TOOL} -change $(get_otool_path "${libpath}") \ + "@loader_path/${rpath}/${libname}" "${OUTPUT}" + fi + fi + done +done + diff --git a/recipe/gen-bazel-toolchain.sh b/recipe/gen-bazel-toolchain.sh new file mode 100755 index 00000000..cee9fc7d --- /dev/null +++ b/recipe/gen-bazel-toolchain.sh @@ -0,0 +1,125 @@ +#!/bin/bash + +set -euxo pipefail + +function apply_cc_template() { + sed -ie "s:TARGET_CPU:${TARGET_CPU}:" $1 + sed -ie "s:TARGET_LIBC:${TARGET_LIBC}:" $1 + sed -ie "s:TARGET_SYSTEM:${TARGET_SYSTEM}:" $1 + sed -ie "s:TARGET_PLATFORM:${target_platform}:" $1 + sed -ie "s:\${CONDA_BUILD_SYSROOT}:${CONDA_BUILD_SYSROOT}:" $1 + sed -ie "s:\${COMPILER_VERSION}:${BAZEL_TOOLCHAIN_COMPILER_VERSION:-}:" $1 + sed -ie "s:\${GCC}:${BAZEL_TOOLCHAIN_GCC}:" $1 + sed -ie "s:\${PREFIX}:${PREFIX}:" $1 + sed -ie "s:\${BUILD_PREFIX}:${BUILD_PREFIX}:" $1 + sed -ie "s:\${LD}:${LD}:" $1 + sed -ie "s:\${CFLAGS}:${CFLAGS}:" $1 + sed -ie "s:\${CPPFLAGS}:${CPPFLAGS}:" $1 + sed -ie "s:\${CXXFLAGS}:${CXXFLAGS}:" $1 + sed -ie "s:\${LDFLAGS}:${LDFLAGS}:" $1 + sed -ie "s:\${NM}:${NM}:" $1 + sed -ie "s:\${STRIP}:${STRIP}:" $1 + sed -ie "s:\${AR}:${BAZEL_TOOLCHAIN_AR}:" $1 + sed -ie "s:\${HOST}:${HOST}:" $1 + sed -ie "s:\${LIBCXX}:${BAZEL_TOOLCHAIN_LIBCXX}:" $1 +} + +export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 + +# set up bazel config file for conda provided clang toolchain +cp -r ${RECIPE_DIR}/custom_toolchain . +pushd custom_toolchain + if [[ "${target_platform}" == osx-* ]]; then + export BAZEL_TOOLCHAIN_COMPILER_VERSION=$($CC -v 2>&1 | head -n1 | cut -d' ' -f3) + sed -e "s:\${CLANG}:${CLANG}:" \ + -e "s:\${INSTALL_NAME_TOOL}:${INSTALL_NAME_TOOL}:" \ + -e "s:\${CONDA_BUILD_SYSROOT}:${CONDA_BUILD_SYSROOT}:" \ + cc_wrapper.sh.template > cc_wrapper.sh + chmod +x cc_wrapper.sh + sed -e "s:\${CLANG}:${CC_FOR_BUILD}:" \ + -e "s:\${INSTALL_NAME_TOOL}:${INSTALL_NAME_TOOL//${HOST}/${BUILD}}:" \ + -e "s:\${CONDA_BUILD_SYSROOT}:${CONDA_BUILD_SYSROOT}:" \ + cc_wrapper.sh.template > cc_wrapper_build.sh + chmod +x cc_wrapper.sh + export BAZEL_TOOLCHAIN_GCC="cc_wrapper.sh" + export BAZEL_TOOLCHAIN_LIBCXX="c++" + export BAZEL_TOOLCHAIN_AR=${LIBTOOL} + else + export BAZEL_TOOLCHAIN_COMPILER_VERSION=$(${CC} -v 2>&1|tail -n1|cut -d' ' -f3) + export BAZEL_TOOLCHAIN_AR=$(basename ${AR}) + touch cc_wrapper.sh + export BAZEL_TOOLCHAIN_LIBCXX="stdc++" + export BAZEL_TOOLCHAIN_GCC="${GCC}" + fi + + export TARGET_SYSTEM="${HOST}" + if [[ "${target_platform}" == "osx-64" ]]; then + export TARGET_LIBC="macosx" + export TARGET_CPU="darwin_x86_64" + export TARGET_SYSTEM="x86_64-apple-macosx" + elif [[ "${target_platform}" == "osx-arm64" ]]; then + export TARGET_LIBC="macosx" + export TARGET_CPU="darwin_arm64" + export TARGET_SYSTEM="arm64-apple-macosx" + elif [[ "${target_platform}" == "linux-64" ]]; then + export TARGET_LIBC="unknown" + export TARGET_CPU="k8" + elif [[ "${target_platform}" == "linux-aarch64" ]]; then + export TARGET_LIBC="unknown" + export TARGET_CPU="aarch64" + elif [[ "${target_platform}" == "linux-ppc64le" ]]; then + export TARGET_LIBC="unknown" + export TARGET_CPU="ppc" + fi + export BUILD_SYSTEM=${BUILD} + if [[ "${build_platform}" == "osx-64" ]]; then + export BUILD_CPU="darwin" + export BUILD_SYSTEM="x86_64-apple-macosx" + elif [[ "${build_platform}" == "osx-arm64" ]]; then + export BUILD_CPU="darwin" + export BUILD_SYSTEM="arm64-apple-macosx" + elif [[ "${build_platform}" == "linux-64" ]]; then + export BUILD_CPU="k8" + elif [[ "${build_platform}" == "linux-aarch64" ]]; then + export BUILD_CPU="aarch64" + elif [[ "${build_platform}" == "linux-ppc64le" ]]; then + export BUILD_CPU="ppc" + fi + # The current Bazel release cannot distinguish between osx-arm64 and osx-64. + # This will change with later releases and then we should get rid of this section again. + #if [[ "${target_platform}" == osx-* ]]; then + # if [[ "${build_platform}" == "${target_platform}" ]]; then + # export TARGET_CPU="darwin" + # export BUILD_CPU="darwin" + # fi + #fi + + sed -ie "s:TARGET_CPU:${TARGET_CPU}:" BUILD + sed -ie "s:BUILD_CPU:${BUILD_CPU}:" BUILD + + cp cc_toolchain_config.bzl cc_toolchain_build_config.bzl + apply_cc_template cc_toolchain_config.bzl + ( + if [[ "${build_platform}" != "${target_platform}" ]]; then + if [[ "${target_platform}" == osx-* ]]; then + BAZEL_TOOLCHAIN_GCC=cc_wrapper_build.sh + else + BAZEL_TOOLCHAIN_GCC=${BAZEL_TOOLCHAIN_GCC//${HOST}/${BUILD}} + fi + TARGET_CPU=${BUILD_CPU} + TARGET_SYSTEM=${BUILD_SYSTEM} + target_platform=${build_platform} + PREFIX=${BUILD_PREFIX} + LD=${LD//${HOST}/${BUILD}} + CFLAGS=${CFLAGS//${PREFIX}/${BUILD_PREFIX}} + CPPFLAGS=${CPPFLAGS//${PREFIX}/${BUILD_PREFIX}} + CXXFLAGS=${CXXFLAGS//${PREFIX}/${BUILD_PREFIX}} + LDFLAGS=${LDFLAGS//${PREFIX}/${BUILD_PREFIX}} + NM=${NM//${HOST}/${BUILD}} + STRIP=${STRIP//${HOST}/${BUILD}} + BAZEL_TOOLCHAIN_AR=${BAZEL_TOOLCHAIN_AR//${HOST}/${BUILD}} + HOST=${BUILD} + fi + apply_cc_template cc_toolchain_build_config.bzl + ) +popd diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 03d98865..27b8303f 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,80 +1,98 @@ -{% set version = "2.2.0" %} - -{% set pyver = "cp{}{}".format(PY_VER[0], PY_VER[2]) %} -{% set platform = "macosx_10_11_x86_64" %} # [osx] -{% set platform = "win_amd64" %} # [win] -{% set fn = "{}-{}-{}-{}m-{}.whl".format("tensorflow", version, pyver, pyver, platform) %} # [not linux] -{% set fn = "tensorflow-{{ version }}.tar.gz" %} # [linux] +{% set version = "2.6.0" %} package: - name: tensorflow + name: tensorflow-split version: {{ version }} source: - fn: {{ fn }} - url: https://github.com/tensorflow/tensorflow/archive/v{{ version }}.tar.gz # [linux] - sha256: 69cd836f87b8c53506c4f706f655d423270f5a563b76dc1cfa60fbc3184185a3 # [linux] - url: https://pypi.io/packages/{{ pyver }}/t/tensorflow/{{ fn }} # [not linux] - sha256: 6735486ee9c3cb0807476e2b36ef7a4cd6c597cb24abf496e66b703360e1e54e # [osx and py==36] - sha256: c332c7fc5cfd54cb86d5da99787c9693e3a924848097c54df1b71ee595a39c93 # [osx and py==37] - sha256: bbcfb04738099bd46822db91584db74703fdddacf4cd0a76acfc5e086956b5ba # [osx and py==38] - sha256: 3ee8819732d8594913b7d22ded7b22e48a49aa015050d8dd8464eaa010ba2e41 # [win and py==36] - sha256: 68ea22aee9c269a6a0c1061c141f1ec1cd1b1be7569390519c1bf4773f434a40 # [win and py==37] - sha256: 784ab8217e4b0eb4d121c28430c6cdc2ce56c02634a9720d84fb30598b338b8c # [win and py==38] - - patches: - #- patches/0001-add-rt-to-linkopts.patch # [linux] - #- patches/0002-stable-image-rotate-test.patch # [linux] - - patches/0003-relax-tolerence-in-special_math_test.patch # [linux] - - patches/0004-skip-read-only-debugger_cli_common-test.patch # [linux] - #- patches/0005-fix-lookup_ops-test.patch # [linux] - - patches/0006-relax-precision-in-matrix_log_op_test.patch # [linux] - #- patches/0007-Add-init-symbol-names-prefixed-with-an-underscore.patch # [osx] - #- patches/0008-Add-alternate-clock_gettime-implementation-for-macOS.patch # [osx] - - patches/unbundle_llvm.patch # [linux] + - url: https://github.com/tensorflow/tensorflow/archive/v{{ version }}.tar.gz + sha256: 41b32eeaddcbc02b0583660bcf508469550e4cd0f86b22d2abe72dfebeacde0f + patches: + - patches/0001-relax-tolerence-in-special_math_test.patch + - patches/0002-skip-read-only-debugger_cli_common-test.patch + - patches/0003-relax-precision-in-matrix_log_op_test.patch + # requires setting GRPCIO_VERSION in build script + - patches/0004-loosen-requirements.patch + - patches/0005-remove_deprecated_use_of_error_message.patch + - patches/51450-Fix_protobuf_errors_when_using_system_protobuf.patch + - url: https://github.com/tensorflow/estimator/archive/refs/tags/v{{ version }}.tar.gz + sha256: 947705c60c50da0b4a8ceec1bc058aaf6bf567a7efdcd50d5173ebf6bafcf30f + folder: tensorflow-estimator build: - number: 0 - skip: True # [not x86_64] + number: 1 + skip: true # [win] requirements: build: - - {{ compiler('c') }} # [linux] - - {{ compiler('cxx') }} # [linux] - #- bazel ==2.0.0 # [linux] - - nasm # [linux] - - swig # [linux] + - python # [build_platform != target_platform] + - cross-python_{{ target_platform }} # [build_platform != target_platform] + - numpy 1.19.* # [build_platform != target_platform] + - {{ compiler('c') }} + - {{ compiler('cxx') }} + - bazel + - bazel >=4.2.1 # [osx and arm64] + - grpc-cpp + - libprotobuf + - nasm + - sed + - rsync # [linux] host: # conda build requirements - python - pip - #- setuptools <=39.1.0 - # requirements specified by the package itself - - absl-py >=0.1.6 - - astor >=0.6.0 - - gast >=0.2.0 - - keras-applications >=1.0.6 - - keras-preprocessing >=1.0.5 - - llvmdev >=8.0.0,<9.0.0 # [linux] - - zlib # [linux] - - libpng # [linux] - - libcurl # [linux] - - unzip # [linux] - - zip # [linux] - - openjdk >=8 # [linux] - - nsync # [linux] - - numpy >=1.16.1 - - six >=1.10.0 - - protobuf >=3.6.1 - - termcolor >=1.1.0 - - grpcio >=1.8.6 - - wheel >=0.26 # [linux] - - tensorflow-estimator >=2.2.0,<2.3.0a0 - run: - - {{ pin_subpackage('tensorflow-base', exact=True) }} + - zlib + - libpng + - libcurl + - curl # [win] + - unzip # [not win] + - zip # [not win] + - m2-unzip # [win] + - m2-zip # [win] + - openjdk >=8 + - nsync + # TF_SYSTEM_LIBS + - astor >=0.7.1 + - cython >=0.28.4 + - dill >=0.3.1.1 + - giflib + - grpc-cpp + - flatbuffers + - icu + - jpeg + - libpng + - libprotobuf + - openssl + - pybind11 + - sqlite + - snappy + - zlib + # requirements specified by the package itself, see + # github.com/tensorflow/tensorflow/blob/v{{ version }}/tensorflow/tools/pip_package/setup.py + - absl-py >=0.10,<1 + - astunparse >=1.6.3,<1.7 + - python-flatbuffers >=1.12,<2 + - google-pasta >=0.2,<1 + - h5py >=3.1.0,<3.2 + - keras-preprocessing >=1.1.2,<1.2 + - numpy 1.19.* + - opt_einsum >=3.3,<3.4 + - protobuf >=3.9.2 + - six >=1.15,<1.16 + - termcolor >=1.1,<1.2 + - typing_extensions >=3.7.4,<3.8 + - wheel >=0.35,<1 + - wrapt >=1.12.1,<1.13 + # upstream wants exact pin for gast + - gast ==0.4.0 + # TF-API needs to move in sync + - tensorboard >=2.6,<3 + - keras >=2.6,<3 outputs: - name: tensorflow-base + script: build_pkg.sh # [not win] + script: build_pkg.bat # [win] build: entry_points: - toco_from_protos = tensorflow.lite.toco.python.toco_from_protos:main @@ -88,105 +106,197 @@ outputs: requirements: # build requirements needs to pick up the compiler run_exports build: - - {{ compiler('c') }} # [linux] - - {{ compiler('cxx') }} # [linux] + - {{ compiler('c') }} + - {{ compiler('cxx') }} host: # conda build requirements - python - pip + # TF_SYSTEM_LIBS + - astor >=0.7.1 + - cython >=0.28.4 + - dill >=0.3.1.1 + - giflib + - grpc-cpp + - flatbuffers + - icu + - jpeg + - libcurl + - libpng + - libprotobuf + - openssl + - pybind11 + - snappy + - sqlite + - zlib # requirements specified by the package itself - - absl-py >=0.1.6 - - astor >=0.6.0 - - astunparse - - gast >=0.2.0 - - google-pasta - - h5py - - keras-preprocessing >=1.0.5 - - numpy >=1.16.1 - - six >=1.10.0 - - protobuf >=3.6.1 - - termcolor >=1.1.0 - - grpcio >=1.8.6 - - wheel >=0.26 # [unix] - - tensorflow-estimator >=2.2.0,<2.3.0a0 - - zlib # [linux] - - libpng # [linux] - - libcurl # [linux] + - absl-py >=0.10,<1 + - astunparse >=1.6.3,<1.7 + - python-flatbuffers >=1.12,<2 + - google-pasta >=0.2,<1 + - h5py >=3.1.0,<3.2 + - keras-preprocessing >=1.1.2,<1.2 + - numpy >=1.19.2,<1.20 + - opt_einsum >=3.3,<3.4 + - protobuf >=3.9.2 + - six >=1.15,<1.16 + - termcolor >=1.1,<1.2 + - typing_extensions >=3.7.4,<3.8 + - wheel >=0.35,<1 + - wrapt >=1.12.1,<1.13 + # upstream wants exact pin for gast + - gast ==0.4.0 + # TF-API needs to move in sync + - tensorboard >=2.6,<3 + - keras >=2.6,<3 run: - python - - absl-py >=0.1.6 - - astor >=0.6.0 - - astunparse - - gast >=0.2.0 - - google-pasta - - h5py - - opt_einsum - - keras-preprocessing >=1.0.5 - - {{ pin_compatible('numpy') }} - - scipy - - six >=1.10.0 - - protobuf >=3.6.1 - - termcolor >=1.1.0 - - grpcio >=1.8.6 - - tensorflow-estimator >=2.2.0,<2.3.0a0 - - tensorboard >=2.2.0,<2.3.0a0 + - absl-py >=0.10,<1 + - astunparse >=1.6.3,<1.7 + - python-flatbuffers >=1.12,<2 + - google-pasta >=0.2,<1 + - h5py >=3.1.0,<3.2 + - keras-preprocessing >=1.1.2,<1.2 + - numpy >=1.19.2,<1.20 + - opt_einsum >=3.3,<3.4 + - protobuf >=3.9.2 + - six >=1.15,<1.16 + - termcolor >=1.1,<1.2 + - typing_extensions >=3.7.4,<3.8 + - wheel >=0.35,<1 + - wrapt >=1.12.1,<1.13 + # upstream wants exact pin for gast + - gast ==0.4.0 + # TF-API needs to move in sync + - tensorboard >=2.6,<3 + - keras >=2.6,<3 + - grpcio {{ grpc_cpp }}.* test: + files: + - test_tensorflow_base.py + commands: + - cat test_tensorflow_base.py # [unix] + - python test_tensorflow_base.py + - tf_upgrade_v2 --help + - saved_model_cli --help + - tflite_convert --help # [not win] + - toco_from_protos --help # [not win] + - toco --help # [not win] + + - name: tensorflow-estimator + script: build_estimator.sh # [not win] + script: build_estimator.bat # [win] + requirements: + build: + - {{ compiler('c') }} + - {{ compiler('cxx') }} + - bazel + - bazel >=4.2.1 # [osx and arm64] + host: + - python + - pip + - setuptools + - wheel + # This ensures that a consistent version of openssl is chosen between + # all packages. + # https://github.com/conda-forge/conda-forge.github.io/issues/1528 + - openssl + - {{ pin_subpackage('tensorflow-base', exact=True) }} + run: + - python + - {{ pin_subpackage('tensorflow-base', exact=True) }} + test: + requires: + - pip + commands: + - pip check + + + - name: tensorflow + requirements: + host: + - python + # This ensures that a consistent version of openssl is chosen between + # all packages. + # https://github.com/conda-forge/conda-forge.github.io/issues/1528 + - openssl + - {{ pin_subpackage('tensorflow-base', exact=True) }} + run: + - python + - {{ pin_subpackage('tensorflow-estimator', exact=True) }} + - {{ pin_subpackage('tensorflow-base', exact=True) }} + test: + requires: + - pip imports: - tensorflow commands: - - freeze_graph --help - - saved_model_cli --help - - tflite_convert --help # [not win] - - toco_from_protos --help # [not win] - - toco --help # [not win] + - pip check - name: libtensorflow - script: cp_libtensorflow.sh # [unix] + script: cp_libtensorflow.sh build: skip: true # [not linux] requirements: # build requirements needs to pick up the compiler run_exports build: - - {{ compiler('c') }} # [linux] - - {{ compiler('cxx') }} # [linux] + - {{ compiler('c') }} + - {{ compiler('cxx') }} # host requirements to pick up run_exports host: - - libcurl # [linux] - - zlib # [linux] + - giflib + - grpc-cpp + - icu + - jpeg + - libcurl + - libpng + - libprotobuf + - openssl + - snappy + - sqlite + - zlib test: files: + - test_libtensorflow.sh - test_c.c requires: - {{ compiler('c') }} commands: - test -f $PREFIX/lib/libtensorflow.so # [not win] - - $CC -o test_c -L${PREFIX}/lib/ -ltensorflow -I${PREFIX}/include/ test_c.c && ./test_c # [not win] + - ./test_libtensorflow.sh # [not win] - name: libtensorflow_cc - script: cp_libtensorflow_cc.sh # [unix] + script: cp_libtensorflow_cc.sh build: skip: true # [not linux] requirements: # build requirements needs to pick up the compiler run_exports build: - - {{ compiler('c') }} # [linux] - - {{ compiler('cxx') }} # [linux] + - {{ compiler('c') }} + - {{ compiler('cxx') }} # host requirements to pick up run_exports host: - - libcurl # [linux] - - zlib # [linux] - run: - - libprotobuf >=3.6.1,<3.7 - - nsync + - giflib + - grpc-cpp + - icu + - jpeg + - libcurl + - libpng + - libprotobuf + - openssl + - snappy + - sqlite + - zlib test: files: + - test_libtensorflow_cc.sh - test_cc.cc requires: - {{ compiler('cxx') }} commands: - test -f $PREFIX/lib/libtensorflow_cc.so # [not win] - - $CXX -std=c++11 -o test_cc -L${PREFIX}/lib/ -ltensorflow_cc -ltensorflow_framework -lrt -I${PREFIX}/include/ test_cc.cc && ./test_cc # [not win] + - ./test_libtensorflow_cc.sh # [not win] about: home: http://tensorflow.org/ @@ -203,11 +313,14 @@ about: doc_source_url: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/docs_src extra: + feedstock-name: tensorflow recipe-maintainers: - - waitingkuo + - farhantejani - ghego - - hajapy - gilbertfrancois - - farhantejani - - njzjz + - h-vetinari + - hajapy - jschueller + - njzjz + - waitingkuo + - xhochy diff --git a/recipe/patches/0001-relax-tolerence-in-special_math_test.patch b/recipe/patches/0001-relax-tolerence-in-special_math_test.patch new file mode 100644 index 00000000..0b857b9d --- /dev/null +++ b/recipe/patches/0001-relax-tolerence-in-special_math_test.patch @@ -0,0 +1,25 @@ +From 59ddc914ccd9a223c8411dc8a00eab9206971cd6 Mon Sep 17 00:00:00 2001 +From: Jonathan Helmus <jjhelmus@gmail.com> +Date: Tue, 20 Jun 2017 15:13:14 -0500 +Subject: [PATCH 1/5] relax tolerence in special_math_test + +--- + .../python/kernel_tests/distributions/special_math_test.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tensorflow/python/kernel_tests/distributions/special_math_test.py b/tensorflow/python/kernel_tests/distributions/special_math_test.py +index ce2cd8614f5..091753b4ef5 100644 +--- a/tensorflow/python/kernel_tests/distributions/special_math_test.py ++++ b/tensorflow/python/kernel_tests/distributions/special_math_test.py +@@ -256,7 +256,7 @@ class LogNdtrTestUpper(NdtrTest): + min=sm.LOGNDTR_FLOAT64_UPPER, + max=35., # Beyond this, log_cdf(x) may be zero. + shape=[100]) +- _error32 = ErrorSpec(rtol=1e-6, atol=1e-14) ++ _error32 = ErrorSpec(rtol=1e-6, atol=1e-13) + _error64 = ErrorSpec(rtol=1e-6, atol=1e-14) + + +-- +2.29.2.windows.3 + diff --git a/recipe/patches/0002-skip-read-only-debugger_cli_common-test.patch b/recipe/patches/0002-skip-read-only-debugger_cli_common-test.patch new file mode 100644 index 00000000..2153e586 --- /dev/null +++ b/recipe/patches/0002-skip-read-only-debugger_cli_common-test.patch @@ -0,0 +1,31 @@ +From 5d04da7f2b31df87f38bebc5ed806589880e7eed Mon Sep 17 00:00:00 2001 +From: Jonathan Helmus <jjhelmus@gmail.com> +Date: Thu, 4 Jan 2018 17:17:23 -0600 +Subject: [PATCH 2/5] skip read only debugger_cli_common test + +If tensorflow is built as root the +debugger_cli_common::testCommandHistoryHandlesWritingIOErrorGracoiusly test +will fail as the log never becomes read only. Skip the portion of the test +that depends on the read-only behavior of the log. +--- + tensorflow/python/debug/cli/debugger_cli_common_test.py | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/tensorflow/python/debug/cli/debugger_cli_common_test.py b/tensorflow/python/debug/cli/debugger_cli_common_test.py +index 93df845c4c5..814ddf13a16 100644 +--- a/tensorflow/python/debug/cli/debugger_cli_common_test.py ++++ b/tensorflow/python/debug/cli/debugger_cli_common_test.py +@@ -1057,7 +1057,9 @@ class CommandHistoryTest(test_util.TensorFlowTestCase): + + cmd_hist_3 = debugger_cli_common.CommandHistory( + limit=3, history_file_path=self._history_file_path) +- self.assertEqual(["help"], cmd_hist_3.most_recent_n(1)) ++ # when the test are run as root the log file is still writable and this ++ # test fails. ++ #self.assertEqual(["help"], cmd_hist_3.most_recent_n(1)) + + self._restoreFileReadWritePermissions(self._history_file_path) + +-- +2.29.2.windows.3 + diff --git a/recipe/patches/0003-relax-precision-in-matrix_log_op_test.patch b/recipe/patches/0003-relax-precision-in-matrix_log_op_test.patch new file mode 100644 index 00000000..42b39f8f --- /dev/null +++ b/recipe/patches/0003-relax-precision-in-matrix_log_op_test.patch @@ -0,0 +1,25 @@ +From 2e72112b3dd2e6e8c234546935bcad5dbd05280d Mon Sep 17 00:00:00 2001 +From: Jonathan Helmus <jjhelmus@gmail.com> +Date: Mon, 20 Aug 2018 12:19:04 -0500 +Subject: [PATCH 3/5] relax precision in matrix_log_op_test + +--- + tensorflow/python/kernel_tests/matrix_logarithm_op_test.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tensorflow/python/kernel_tests/matrix_logarithm_op_test.py b/tensorflow/python/kernel_tests/matrix_logarithm_op_test.py +index 5004a9c5588..62c2bfe1abe 100644 +--- a/tensorflow/python/kernel_tests/matrix_logarithm_op_test.py ++++ b/tensorflow/python/kernel_tests/matrix_logarithm_op_test.py +@@ -45,7 +45,7 @@ class LogarithmOpTest(test.TestCase): + tf_ans = linalg_impl.matrix_exponential( + gen_linalg_ops.matrix_logarithm(inp)) + out = self.evaluate(tf_ans) +- self.assertAllClose(inp, out, rtol=1e-4, atol=1e-3) ++ self.assertAllClose(inp, out, rtol=1e-3, atol=1e-3) + + def _verifyLogarithmComplex(self, x): + for np_type in [np.complex64, np.complex128]: +-- +2.29.2.windows.3 + diff --git a/recipe/patches/0004-loosen-requirements.patch b/recipe/patches/0004-loosen-requirements.patch new file mode 100644 index 00000000..771b89b9 --- /dev/null +++ b/recipe/patches/0004-loosen-requirements.patch @@ -0,0 +1,35 @@ +From b6371c3abefb0ab2b3e943f43088ab42fac9c5bc Mon Sep 17 00:00:00 2001 +From: "Uwe L. Korn" <uwe.korn@quantco.com> +Date: Wed, 8 Sep 2021 06:57:09 +0200 +Subject: [PATCH] Fixup requirements + +* Set grpcio pin to the built grpc version +* Remove unused clang requirement +--- + tensorflow/tools/pip_package/setup.py | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/tensorflow/tools/pip_package/setup.py b/tensorflow/tools/pip_package/setup.py +index 3d4a64de..3ea8ac5e 100644 +--- a/tensorflow/tools/pip_package/setup.py ++++ b/tensorflow/tools/pip_package/setup.py +@@ -82,7 +82,6 @@ REQUIRED_PACKAGES = [ + # Install other dependencies + 'absl-py ~= 0.10', + 'astunparse ~= 1.6.3', +- 'clang ~= 5.0', + 'flatbuffers ~= 1.12.0', + 'google_pasta ~= 0.2', + 'h5py ~= 3.1.0', +@@ -126,7 +125,7 @@ if 'tf_nightly' in project_name: + # BoringSSL support. + # See https://github.com/tensorflow/tensorflow/issues/17882. + if sys.byteorder == 'little': +- REQUIRED_PACKAGES.append('grpcio >= 1.37.0, < 2.0') ++ REQUIRED_PACKAGES.append('grpcio >= GRPCIO_VERSION, < 2.0') + + + # Packages which are only needed for testing code. +-- +2.30.1 (Apple Git-130) + diff --git a/recipe/patches/0005-remove_deprecated_use_of_error_message.patch b/recipe/patches/0005-remove_deprecated_use_of_error_message.patch new file mode 100644 index 00000000..ac59e24f --- /dev/null +++ b/recipe/patches/0005-remove_deprecated_use_of_error_message.patch @@ -0,0 +1,25 @@ +From ec2cc392f3a78d5cda64a36c615572693a80c8d7 Mon Sep 17 00:00:00 2001 +From: Zachary Garrett <zachgarrett@google.com> +Date: Mon, 27 Sep 2021 08:40:23 -0700 +Subject: [PATCH] Replace deprecated `absl::Status::error_message` call with + `absl::Status::message`. + +PiperOrigin-RevId: 399198325 +Change-Id: Ib4a5e1d3a5e1447fefe9de428946341522a021a4 +--- + tensorflow/core/kernels/example_parsing_ops.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tensorflow/core/kernels/example_parsing_ops.cc b/tensorflow/core/kernels/example_parsing_ops.cc +index a1265cfb5c6a1..ada919bbd7b13 100644 +--- a/tensorflow/core/kernels/example_parsing_ops.cc ++++ b/tensorflow/core/kernels/example_parsing_ops.cc +@@ -1218,7 +1218,7 @@ class DecodeJSONExampleOp : public OpKernel { + resolver_.get(), "type.googleapis.com/tensorflow.Example", &in, &out); + OP_REQUIRES(ctx, status.ok(), + errors::InvalidArgument("Error while parsing JSON: ", +- string(status.error_message()))); ++ string(status.message()))); + } + } + diff --git a/recipe/patches/51450-Fix_protobuf_errors_when_using_system_protobuf.patch b/recipe/patches/51450-Fix_protobuf_errors_when_using_system_protobuf.patch new file mode 100644 index 00000000..35ae53f3 --- /dev/null +++ b/recipe/patches/51450-Fix_protobuf_errors_when_using_system_protobuf.patch @@ -0,0 +1,26 @@ +From 7fbc5be3b5a3cc17c05f1ae5b0577fdca8a0e0e2 Mon Sep 17 00:00:00 2001 +From: sclarkson <sc@lambdal.com> +Date: Thu, 12 Aug 2021 03:23:28 -0700 +Subject: [PATCH] Fix protobuf errors when using system protobuf + +When tensorflow and python protobuf use the same instance of +libprotobuf, pywrap_tensorflow must be imported before anything +else that would import protobuf definitions. +--- + tensorflow/python/__init__.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tensorflow/python/__init__.py b/tensorflow/python/__init__.py +index c90336802e26f..39b57ffecab3f 100644 +--- a/tensorflow/python/__init__.py ++++ b/tensorflow/python/__init__.py +@@ -37,8 +37,8 @@ + # go/tf-wildcard-import + # pylint: disable=wildcard-import,g-bad-import-order,g-import-not-at-top + +-from tensorflow.python.eager import context + from tensorflow.python import pywrap_tensorflow as _pywrap_tensorflow ++from tensorflow.python.eager import context + + # pylint: enable=wildcard-import + diff --git a/recipe/patches/legacy/0001-add-rt-to-linkopts.patch b/recipe/patches/legacy/0001-add-rt-to-linkopts.patch new file mode 100644 index 00000000..84b9c183 --- /dev/null +++ b/recipe/patches/legacy/0001-add-rt-to-linkopts.patch @@ -0,0 +1,46 @@ +From 30a4ed9b097f1ea9a2a1e9303e044015d0041d63 Mon Sep 17 00:00:00 2001 +From: Jonathan Helmus <jjhelmus@gmail.com> +Date: Wed, 27 Jun 2018 12:46:18 -0500 +Subject: [PATCH 1/8] add rt to linkopts + +--- + tensorflow/BUILD | 1 + + tensorflow/tensorflow.bzl | 4 ++-- + 2 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/tensorflow/BUILD b/tensorflow/BUILD +index 823ad8f..96e12cb 100644 +--- a/tensorflow/BUILD ++++ b/tensorflow/BUILD +@@ -429,5 +429,6 @@ tf_cc_shared_object( + "//tensorflow:darwin": [], + "//tensorflow:windows": [], + "//conditions:default": [ ++ "-lrt", + "-Wl,--version-script,$(location //tensorflow:tf_framework_version_script.lds)", + ], +diff --git a/tensorflow/tensorflow.bzl b/tensorflow/tensorflow.bzl +index d93e0df..b8438d2 100644 +--- a/tensorflow/tensorflow.bzl ++++ b/tensorflow/tensorflow.bzl +@@ -377,7 +377,7 @@ def tf_cc_shared_object( + srcs = [], + deps = [], + data = [], +- linkopts = [], ++ linkopts = ['-lrt'], + framework_so = tf_binary_additional_srcs(), + kernels = [], + **kwargs): +@@ -413,7 +413,7 @@ def tf_cc_binary( + srcs = [], + deps = [], + data = [], +- linkopts = [], ++ linkopts = ['-lrt'], + copts = tf_copts(), + kernels = [], + **kwargs): +-- +2.7.4 + diff --git a/recipe/patches/legacy/0002-stable-image-rotate-test.patch b/recipe/patches/legacy/0002-stable-image-rotate-test.patch new file mode 100644 index 00000000..2a2c4448 --- /dev/null +++ b/recipe/patches/legacy/0002-stable-image-rotate-test.patch @@ -0,0 +1,38 @@ +From 11a1f8a90ccffb2746c1d6a3356fc2033be38bea Mon Sep 17 00:00:00 2001 +From: Jonathan Helmus <jjhelmus@gmail.com> +Date: Thu, 8 Jun 2017 10:48:30 -0500 +Subject: [PATCH 2/8] stable image rotate test + +--- + tensorflow/contrib/image/python/kernel_tests/image_ops_test.py | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tensorflow/contrib/image/python/kernel_tests/image_ops_test.py b/tensorflow/contrib/image/python/kernel_tests/image_ops_test.py +index ba5cdfe..41ffac4 100644 +--- a/tensorflow/contrib/image/python/kernel_tests/image_ops_test.py ++++ b/tensorflow/contrib/image/python/kernel_tests/image_ops_test.py +@@ -54,7 +54,7 @@ class ImageOpsTest(test_util.TensorFlowTestCase): + image = array_ops.reshape( + math_ops.cast(math_ops.range(36), dtype), (6, 6)) + image_rep = array_ops.tile(image[None, :, :, None], [3, 1, 1, 1]) +- angles = constant_op.constant([0.0, np.pi / 4.0, np.pi / 2.0], ++ angles = constant_op.constant([0.0, -np.pi / 2.0, np.pi / 2.0], + dtypes.float32) + image_rotated = image_ops.rotate(image_rep, angles) + self.assertAllEqual(image_rotated[:, :, :, 0].eval(), +@@ -63,9 +63,9 @@ class ImageOpsTest(test_util.TensorFlowTestCase): + [18, 19, 20, 21, 22, 23], + [24, 25, 26, 27, 28, 29], + [30, 31, 32, 33, 34, 35]], +- [[0, 3, 4, 11, 17, 0], [2, 3, 9, 16, 23, 23], +- [1, 8, 15, 21, 22, 29], [6, 13, 20, 21, 27, 34], +- [12, 18, 19, 26, 33, 33], [0, 18, 24, 31, 32, 0]], ++ [[30, 24, 18, 12, 6, 0], [31, 25, 19, 13, 7, 1], ++ [32, 26, 20, 14, 8, 2], [33, 27, 21, 15, 9, 3], ++ [34, 28, 22, 16, 10, 4], [35, 29, 23, 17, 11, 5]], + [[5, 11, 17, 23, 29, 35], [4, 10, 16, 22, 28, 34], + [3, 9, 15, 21, 27, 33], [2, 8, 14, 20, 26, 32], + [1, 7, 13, 19, 25, 31], [0, 6, 12, 18, 24, 30]]]) +-- +2.7.4 + diff --git a/recipe/patches/legacy/0005-fix-lookup_ops-test.patch b/recipe/patches/legacy/0005-fix-lookup_ops-test.patch new file mode 100644 index 00000000..ffdc1550 --- /dev/null +++ b/recipe/patches/legacy/0005-fix-lookup_ops-test.patch @@ -0,0 +1,30 @@ +From 908dba7dcc7d21e5479a37c5c1acccb6d0b90056 Mon Sep 17 00:00:00 2001 +From: Jonathan Helmus <jjhelmus@gmail.com> +Date: Thu, 11 Jan 2018 13:05:31 -0600 +Subject: [PATCH 5/8] fix lookup_ops test + +The order of the exported data is undefined, perform a valid sort before +comparing. +--- + tensorflow/contrib/lookup/lookup_ops_test.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tensorflow/contrib/lookup/lookup_ops_test.py b/tensorflow/contrib/lookup/lookup_ops_test.py +index 9b2c2dd..81d0648 100644 +--- a/tensorflow/contrib/lookup/lookup_ops_test.py ++++ b/tensorflow/contrib/lookup/lookup_ops_test.py +@@ -505,9 +505,9 @@ class MutableHashTableOpTest(test.TestCase): + msg="Saw shape %s" % exported_values.shape) + # exported data is in the order of the internal map, i.e. undefined + sorted_keys = np.sort(exported_keys.eval()) +- sorted_values = np.sort(exported_values.eval()) ++ sorted_values = np.sort(exported_values.eval(), axis=0) + self.assertAllEqual([b"brain", b"salad", b"surgery"], sorted_keys) +- self.assertAllEqual([[4, 5], [2, 3], [0, 1]], sorted_values) ++ self.assertAllEqual([[0, 1], [2, 3], [4, 5]], sorted_values) + + def testMutableHashTableExportInsert(self): + with self.cached_session(): +-- +2.7.4 + diff --git a/recipe/patches/legacy/0007-Add-init-symbol-names-prefixed-with-an-underscore.patch b/recipe/patches/legacy/0007-Add-init-symbol-names-prefixed-with-an-underscore.patch new file mode 100644 index 00000000..9f9a6fa4 --- /dev/null +++ b/recipe/patches/legacy/0007-Add-init-symbol-names-prefixed-with-an-underscore.patch @@ -0,0 +1,53 @@ +From 03d0d2bf4e47ac6b768d9f3371cdb941bf3d36e4 Mon Sep 17 00:00:00 2001 +From: Nehal J Wani <nehaljw.kkd1@gmail.com> +Date: Thu, 23 Aug 2018 11:34:00 -0500 +Subject: [PATCH 7/8] Add (init) symbol names prefixed with an underscore +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The command: `python -c 'from tensorflow.contrib import tensorrt as trt'` fails +with: + +File "/xxx/lib/python2.7/site-packages/tensorflow/contrib/tensorrt/wrap_conversion.py", line 24, in swig_import_helper + _mod = imp.load_module('_wrap_conversion', fp, pathname, description) +ImportError: dynamic module does not define init function (init_wrap_conversion) + +鉃� 1534993632 nm /xxx/lib/python2.7/site-packages/tensorflow/contrib/tensorrt/_wrap_conversion.so | grep wrap_conversion +0000000000003670 t _init_wrap_conversion <---------- symbol defined, but local, not exposed + U init_wrap_conversion + I init_wrap_conversion (indirect for init_wrap_conversion) + +Happens because the linker version script has: `init_wrap_conversion` instead of `_init_wrap_conversion` + +xref: https://github.com/tensorflow/tensorflow/issues/21818 +xref: https://stackoverflow.com/a/37534357 +--- + tensorflow/tensorflow.bzl | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tensorflow/tensorflow.bzl b/tensorflow/tensorflow.bzl +index b8438d2..f6850e3 100644 +--- a/tensorflow/tensorflow.bzl ++++ b/tensorflow/tensorflow.bzl +@@ -1594,7 +1594,7 @@ def _append_init_to_versionscript_impl(ctx): + template = ctx.file.template_file, + output = ctx.outputs.versionscript, + substitutions = { +- "global:": "global:\n init_%s;\n PyInit_*;" % (mod_name), ++ "global:": "global:\n init_%s;\n _init_%s;\n PyInit_*;\n _PyInit_*;"%(mod_name, mod_name), + }, + is_executable = False, + ) +@@ -1603,7 +1603,7 @@ def _append_init_to_versionscript_impl(ctx): + template = ctx.file.template_file, + output = ctx.outputs.versionscript, + substitutions = { +- "*tensorflow*": "*tensorflow*\ninit_%s\nPyInit_*\n" % (mod_name), ++ "*tensorflow*": "*tensorflow*\ninit_%s\n_init_%s\nPyInit_*\n_PyInit_*\n"%(mod_name, mod_name), + }, + is_executable = False, + ) +-- +2.7.4 + diff --git a/recipe/patches/legacy/0008-Add-alternate-clock_gettime-implementation-for-macOS.patch b/recipe/patches/legacy/0008-Add-alternate-clock_gettime-implementation-for-macOS.patch new file mode 100644 index 00000000..8c04e0ff --- /dev/null +++ b/recipe/patches/legacy/0008-Add-alternate-clock_gettime-implementation-for-macOS.patch @@ -0,0 +1,55 @@ +From 2f0373b5f8ea3e1ab8708cb9c64c404922b96b81 Mon Sep 17 00:00:00 2001 +From: Nehal J Wani <nehaljw.kkd1@gmail.com> +Date: Sun, 30 Sep 2018 09:16:53 -0500 +Subject: [PATCH 8/8] Add alternate clock_gettime() implementation for macOS < + 10.12 + +clock_gettime is not available in macOS SDK < 10.12 +--- + tensorflow/core/platform/posix/env_time.cc | 21 +++++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/tensorflow/core/platform/posix/env_time.cc b/tensorflow/core/platform/posix/env_time.cc +index 59a67b1..88f8a6c 100644 +--- a/tensorflow/core/platform/posix/env_time.cc ++++ b/tensorflow/core/platform/posix/env_time.cc +@@ -18,6 +18,23 @@ limitations under the License. + + #include "tensorflow/core/platform/env_time.h" + ++// Slightly pruned version of https://gist.github.com/alfwatt/3588c5aa1f7a1ef7a3bb ++// Copyright (c) 2015-2018 Alf Watt - Open Source - https://opensource.org/licenses/MIT ++#if defined __APPLE__ ++#include <mach/clock.h> ++#include <mach/mach.h> ++int alt_clock_gettime (int clock_id, timespec *ts) { ++ clock_serv_t cclock; ++ mach_timespec_t mts; ++ host_get_clock_service (mach_host_self (), clock_id, &cclock); ++ clock_get_time (cclock, &mts); ++ mach_port_deallocate (mach_task_self (), cclock); ++ ts->tv_sec = mts.tv_sec; ++ ts->tv_nsec = mts.tv_nsec; ++ return 0; ++} ++#endif ++ + namespace tensorflow { + + namespace { +@@ -28,7 +45,11 @@ class PosixEnvTime : public EnvTime { + + uint64 NowNanos() override { + struct timespec ts; ++#if defined __APPLE__ ++ alt_clock_gettime(CALENDAR_CLOCK, &ts); ++#else + clock_gettime(CLOCK_REALTIME, &ts); ++#endif + return (static_cast<uint64>(ts.tv_sec) * kSecondsToNanos + + static_cast<uint64>(ts.tv_nsec)); + } +-- +2.7.4 + + diff --git a/recipe/test_libtensorflow.sh b/recipe/test_libtensorflow.sh new file mode 100755 index 00000000..c5ca3e08 --- /dev/null +++ b/recipe/test_libtensorflow.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +set -euxo pipefail + +$CC -o test_c -L${PREFIX}/lib/ -ltensorflow -I${PREFIX}/include/ test_c.c +./test_c diff --git a/recipe/test_libtensorflow_cc.sh b/recipe/test_libtensorflow_cc.sh new file mode 100755 index 00000000..aa702674 --- /dev/null +++ b/recipe/test_libtensorflow_cc.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +set -exuo pipefail + +$CXX -std=c++11 -o test_cc -L${PREFIX}/lib/ -ltensorflow_cc -ltensorflow_framework -lrt -I${PREFIX}/include/ test_cc.cc +./test_cc diff --git a/recipe/test_tensorflow_base.py b/recipe/test_tensorflow_base.py new file mode 100644 index 00000000..5aa9e52c --- /dev/null +++ b/recipe/test_tensorflow_base.py @@ -0,0 +1,18 @@ +import tensorflow as tf +hello = tf.constant('Hello, TensorFlow!') +a = tf.constant(10) +b = tf.constant(32) +a + b + +mnist = tf.keras.datasets.mnist + +(x_train, y_train), (x_test, y_test) = mnist.load_data() +x_train, x_test = x_train / 255.0, x_test / 255.0 + +model = tf.keras.models.Sequential([ + tf.keras.layers.Flatten(input_shape=(28, 28)), + tf.keras.layers.Dense(128, activation='relu'), + tf.keras.layers.Dropout(0.2), + tf.keras.layers.Dense(10, activation='softmax') +]) + -- GitLab