python3Packages.tensorflow: 2.20.0 -> 2.21.0; python3Packages.keras: 3.13.2 -> 3.14.0 (#507074)

This commit is contained in:
Gaétan Lepage
2026-04-07 07:35:20 +00:00
committed by GitHub
5 changed files with 97 additions and 117 deletions
@@ -3,7 +3,6 @@
stdenv,
buildPythonPackage,
fetchFromGitHub,
fetchpatch,
# build-system
setuptools,
@@ -38,24 +37,16 @@
buildPythonPackage (finalAttrs: {
pname = "keras";
version = "3.13.2";
version = "3.14.0";
pyproject = true;
src = fetchFromGitHub {
owner = "keras-team";
repo = "keras";
tag = "v${finalAttrs.version}";
hash = "sha256-7s3bJdkS/G/Ydj9txbtGrqGCE3PjjS1ZiuoGOzk+UIg=";
hash = "sha256-EMwqo+0mIwjDY3wKW4idiAczSSPIGjTRNIYlqPDwd+w=";
};
patches = [
(fetchpatch {
name = "numpy-2.4-compat.patch";
url = "https://github.com/keras-team/keras/commit/bc3bc4fc167049eb35136deaf5680cdaacc80371.patch";
hash = "sha256-+eN3QVBpHGIv67hbRxzVHeKjFZIz5LCdbNO0AL65OoQ=";
})
];
build-system = [
setuptools
];
@@ -95,6 +86,7 @@ buildPythonPackage (finalAttrs: {
disabledTests = [
# Require unpackaged `grain`
"test_basics_grain"
"test_fit_with_data_adapter_grain_dataloader"
"test_fit_with_data_adapter_grain_datast"
"test_fit_with_data_adapter_grain_datast_with_len"
@@ -109,7 +101,13 @@ buildPythonPackage (finalAttrs: {
"test_image_dataset_from_directory_pad_to_aspect_ratio_grain"
"test_image_dataset_from_directory_shuffle_grain"
"test_image_dataset_from_directory_validation_split_grain"
"test_no_targets_grain"
"test_not_batched_grain"
"test_sample_count_grain"
"test_sampling_rate_grain"
"test_sequence_stride_grain"
"test_shuffle_grain"
"test_start_and_end_index_grain"
"test_text_dataset_from_directory_binary_grain"
"test_text_dataset_from_directory_follow_links_grain"
"test_text_dataset_from_directory_manual_labels_grain"
@@ -117,6 +115,7 @@ buildPythonPackage (finalAttrs: {
"test_text_dataset_from_directory_not_batched_grain"
"test_text_dataset_from_directory_standalone_grain"
"test_text_dataset_from_directory_validation_split_grain"
"test_timeseries_regression_grain"
# Tries to install the package in the sandbox
"test_keras_imports"
@@ -132,8 +131,11 @@ buildPythonPackage (finalAttrs: {
disabledTestPaths = [
# Require unpackaged `grain`
"keras/src/layers/preprocessing/data_layer_test.py"
"keras/src/layers/preprocessing/discretization_test.py"
"keras/src/layers/preprocessing/image_preprocessing/resizing_test.py"
"keras/src/layers/preprocessing/rescaling_test.py"
"keras/src/layers/preprocessing/string_lookup_test.py"
"keras/src/layers/preprocessing/text_vectorization_test.py"
"keras/src/trainers/data_adapters/grain_dataset_adapter_test.py"
# These tests succeed when run individually, but crash within the full test suite:
@@ -52,7 +52,7 @@ let
isCudaJetson = cudaSupport && cudaPackages.flags.isJetsonBuild;
in
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "tensorflow" + lib.optionalString cudaSupport "-gpu";
version = packages."${"version" + lib.optionalString isCudaJetson "_jetson"}";
format = "wheel";
@@ -73,9 +73,20 @@ buildPythonPackage rec {
];
nativeBuildInputs =
lib.optionals cudaSupport [ addDriverRunpath ]
++ lib.optionals isCudaJetson [ cudaPackages.autoAddCudaCompatRunpath ];
lib.optionals cudaSupport [
addDriverRunpath
]
++ lib.optionals isCudaJetson [
cudaPackages.autoAddCudaCompatRunpath
];
pythonRemoveDeps = [
"libclang"
"keras"
];
pythonRelaxDeps = [
"h5py"
];
dependencies = [
absl-py
astunparse
@@ -99,11 +110,6 @@ buildPythonPackage rec {
]
++ lib.optional (!isPy3k) mock;
pythonRemoveDeps = [
"libclang"
"keras"
];
preConfigure = ''
unset SOURCE_DATE_EPOCH
@@ -125,13 +131,13 @@ buildPythonPackage rec {
# Then, in each package requiring `tensorflow`, our pythonRuntimeDepsCheck will fail with:
# importlib.metadata.PackageNotFoundError: No package metadata was found for tensorflow
# Hence, we manually rename the package to `tensorflow`.
lib.optionalString ((builtins.match ".*tensorflow_cpu.*" src.url) != null) ''
lib.optionalString ((builtins.match ".*tensorflow_cpu.*" finalAttrs.src.url) != null) ''
(
cd $out/${python.sitePackages}
dest="tensorflow-${version}.dist-info"
dest="tensorflow-${finalAttrs.version}.dist-info"
mv tensorflow_cpu-${version}.dist-info "$dest"
mv tensorflow_cpu-${finalAttrs.version}.dist-info "$dest"
(
cd "$dest"
@@ -169,18 +175,23 @@ buildPythonPackage rec {
# TODO: Create this list programmatically, and remove paths that aren't
# actually needed.
rrPathArr=(
"$out/${python.sitePackages}/tensorflow/"
"$out/${python.sitePackages}/tensorflow.libs"
"$out/${python.sitePackages}/tensorflow"
"$out/${python.sitePackages}/tensorflow/compiler/mlir/lite/python"
"$out/${python.sitePackages}/tensorflow/compiler/mlir/quantization/tensorflow/python"
"$out/${python.sitePackages}/tensorflow/compiler/mlir/stablehlo"
"$out/${python.sitePackages}/tensorflow/compiler/mlir/tensorflow_to_stablehlo/python"
"$out/${python.sitePackages}/tensorflow/compiler/tf2tensorrt"
"$out/${python.sitePackages}/tensorflow/compiler/tf2xla/ops"
"$out/${python.sitePackages}/tensorflow/core/kernels"
"$out/${python.sitePackages}/tensorflow/compiler/mlir/stablehlo/"
"$out/${python.sitePackages}/tensorflow/compiler/tf2tensorrt/"
"$out/${python.sitePackages}/tensorflow/compiler/tf2xla/ops/"
"$out/${python.sitePackages}/tensorflow/include/external/ml_dtypes/"
"$out/${python.sitePackages}/tensorflow/lite/experimental/microfrontend/python/ops/"
"$out/${python.sitePackages}/tensorflow/lite/python/analyzer_wrapper/"
"$out/${python.sitePackages}/tensorflow/lite/python/interpreter_wrapper/"
"$out/${python.sitePackages}/tensorflow/lite/python/metrics/"
"$out/${python.sitePackages}/tensorflow/lite/python/optimize/"
"$out/${python.sitePackages}/tensorflow/python/"
"$out/${python.sitePackages}/tensorflow/include/external/ml_dtypes"
"$out/${python.sitePackages}/tensorflow/lite/experimental/microfrontend/python/ops"
"$out/${python.sitePackages}/tensorflow/lite/python"
"$out/${python.sitePackages}/tensorflow/lite/python/analyzer_wrapper"
"$out/${python.sitePackages}/tensorflow/lite/python/interpreter_wrapper"
"$out/${python.sitePackages}/tensorflow/lite/python/metrics"
"$out/${python.sitePackages}/tensorflow/lite/python/optimize"
"$out/${python.sitePackages}/tensorflow/python"
"$out/${python.sitePackages}/tensorflow/python/autograph/impl/testing"
"$out/${python.sitePackages}/tensorflow/python/client"
"$out/${python.sitePackages}/tensorflow/python/data/experimental/service"
@@ -191,9 +202,9 @@ buildPythonPackage rec {
"$out/${python.sitePackages}/tensorflow/python/platform"
"$out/${python.sitePackages}/tensorflow/python/profiler/internal"
"$out/${python.sitePackages}/tensorflow/python/saved_model"
"$out/${python.sitePackages}/tensorflow/python/tpu"
"$out/${python.sitePackages}/tensorflow/python/util"
"$out/${python.sitePackages}/tensorflow/tsl/python/lib/core"
"$out/${python.sitePackages}/tensorflow.libs/"
"${rpath}"
)
@@ -217,14 +228,6 @@ buildPythonPackage rec {
ln -s ${cudaPackages.cuda_nvcc} "$out/${python.sitePackages}/tensorflow/cuda"
'';
# Upstream has a pip hack that results in bin/tensorboard being in both tensorflow
# and the propagated input tensorboard, which causes environment collisions.
# Another possibility would be to have tensorboard only in the buildInputs
# See https://github.com/NixOS/nixpkgs/pull/44381 for more information.
postInstall = ''
rm $out/bin/tensorboard
'';
pythonImportsCheck = [
"tensorflow"
"tensorflow.python"
@@ -241,4 +244,4 @@ buildPythonPackage rec {
# unsupported combination
broken = stdenv.hostPlatform.isDarwin && cudaSupport;
};
}
})
@@ -1,88 +1,68 @@
{
version = "2.20.0";
version = "2.21.0";
version_jetson = "2.16.1+nv24.08";
x86_64-linux_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow_cpu-2.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1nxmm37miz0kzq8g2zc5f9w5vaiz0m75g2q97v19f0pnpl4q1kwh";
};
x86_64-linux_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow_cpu-2.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "10y5s4bd1s4yk9qx71ap743l8l17axvj5lk49f4fwhq584wg4ghs";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow_cpu-2.21.0-cp310-cp310-manylinux_2_27_x86_64.whl";
sha256 = "10sbn67bm17mhbn8vbv87b2hxz9frmrqzjpa4vxcsq86bhpyjhyi";
};
x86_64-linux_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow_cpu-2.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1077zld9n53w72sbvzll2ic1f05liy2jrbfhnlm98vi55nz6nxfg";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow_cpu-2.21.0-cp311-cp311-manylinux_2_27_x86_64.whl";
sha256 = "0v2vdqp269xy4d6n351wdhcs1njh6apishwixlqpgvh2gchpv11b";
};
x86_64-linux_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow_cpu-2.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "19yn5ligcazva59bgw7v6pdl2wp7xz9i9qf4jpnr9041hm0j5af7";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow_cpu-2.21.0-cp312-cp312-manylinux_2_27_x86_64.whl";
sha256 = "1jr0z3hgbf83wpxrgspl1a1hcdvpic3ikvmnjr92vr1h579szj6w";
};
x86_64-linux_313 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow_cpu-2.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1db4gipi9x05r4fbdj98p3bk6pz0zq25xi15c97ch3p1wn8pfvns";
};
x86_64-linux_39_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1hwfakj3b5w0lc641bqqcnxhdd47037998aqs57valzw7mc5rsqd";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow_cpu-2.21.0-cp313-cp313-manylinux_2_27_x86_64.whl";
sha256 = "14vp3parbn85lkczwiqggcd8709rgr87p32rnl8fjkazsck7rbq5";
};
x86_64-linux_310_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "07jr5bpvmxd3yjw3v2jd9i3jswlsfxr26604r16ka38f04x7zgbs";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp310-cp310-manylinux_2_27_x86_64.whl";
sha256 = "191kjb4p35xbvffmlff1j9pcqc3mv7w30zfx7hl1vslmwscg5ikp";
};
x86_64-linux_311_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "17i2z37jrji8rk11pspmlkd8r297x3an3gj5i7g86ic21zyrj528";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp311-cp311-manylinux_2_27_x86_64.whl";
sha256 = "097iamhva8rypzzvqfxm9y0fi5m1b3cwprhsnw85h8q4pb4znmlh";
};
x86_64-linux_312_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1v2jkhglfrh4by86nri7zq4shi2gl920rilw3r5xbq17ql5mn9i5";
};
x86_64-linux_313_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0wkklfh0ny4y4lzac540v8g745b5adyzp29bi2cmmxr606dp58sz";
};
aarch64-linux_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1pzbi2calx0crx8f0ff1kbibn1j5wwjbvpp9rsmqxja9j9sk7g18";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp312-cp312-manylinux_2_27_x86_64.whl";
sha256 = "1h0kpc9kflb1xr26ibw4xhbz6hp1rcsznf4rhcjvj3p7qi1mdfdk";
};
aarch64-linux_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1sms3c4mxy892gaa066nx4xa6m28rhigdav6bc9bgj7mjhyjk802";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp310-cp310-manylinux_2_27_aarch64.whl";
sha256 = "0pcskswb7v82282w4mmj5smy5pmwbbw336b1x05chw6g4n5r75vw";
};
aarch64-linux_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1mfflmpmywqihd1mdwcq6jnzgsv2khkf68z2dckc01fbxz46i59y";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp311-cp311-manylinux_2_27_aarch64.whl";
sha256 = "0p7bwqxrz2xc6a3akpqg9l7x5hw4qh20qwkzqgqkqyjjdnhsq92b";
};
aarch64-linux_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "13q71s5gjb405s48maqz4sckwx971lwj5sg1bz2gyaz2s0yzpyrb";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp312-cp312-manylinux_2_27_aarch64.whl";
sha256 = "0ljmpixm6b4m5691nlnw5288xq8v9fagfzkcwfc3hlq6firiazdh";
};
aarch64-linux_313 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "09nrnffmqdfr9zy5l1li0727b02drlz4p2dlfx4ss7kzl02qxj27";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp313-cp313-manylinux_2_27_aarch64.whl";
sha256 = "1q4kln5iwcy37lgka8b5iqmcbk5pagqs688h4l62328iigxvs2m1";
};
aarch64-linux_310_jetson = {
url = "https://developer.download.nvidia.com/compute/redist/jp/v61/tensorflow/tensorflow-2.16.1+nv24.08-cp310-cp310-linux_aarch64.whl";
sha256 = "0z18zdcjc2dingl94kivhd5cpzbvkjp9j12q57acjppp4hyd6g7f";
};
aarch64-darwin_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp39-cp39-macosx_12_0_arm64.whl";
sha256 = "0g3qg53l8pfna5r964s08das8jsijbg81snb8ny3z79034dvsv56";
};
aarch64-darwin_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp310-cp310-macosx_12_0_arm64.whl";
sha256 = "0msk3aw06q46n4ng8i5cs79r6bhmmvqcam78pdav42hkypw6kwg5";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp310-cp310-macosx_12_0_arm64.whl";
sha256 = "0rgm8wbcf7pg4vagfzj0k7l59hd8hrxwh25jalacxsg0i4l66qk4";
};
aarch64-darwin_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp311-cp311-macosx_12_0_arm64.whl";
sha256 = "1visqvq280k4cgmg6hwphfkq54p8kdrnnsi4baw0jp83qlb415jz";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp311-cp311-macosx_12_0_arm64.whl";
sha256 = "126a8gmjq8dn784gyh5z943ghxjqqyj75k10g7y0378k0r46zx2i";
};
aarch64-darwin_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp312-cp312-macosx_12_0_arm64.whl";
sha256 = "13vcl3wcgaid8f2rdzvzmkfbdl3hhkh7qlwdy88apmrg4gq25caj";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp312-cp312-macosx_12_0_arm64.whl";
sha256 = "04npxa04fv5gv5y3djwjmjakkz7rbfvm0kb9y8fvxb19fkadgv2n";
};
aarch64-darwin_313 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.20.0/tensorflow-2.20.0-cp313-cp313-macosx_12_0_arm64.whl";
sha256 = "19g8kk7f7ylx1y7awpc3afw7hp50sid2ka0jd9fdmh1q7dhhnzqr";
url = "https://storage.googleapis.com/tensorflow/versions/%222.21.0%22/tensorflow-2.21.0-cp313-cp313-macosx_12_0_arm64.whl";
sha256 = "1x279567yrwpvn1iylg5qxnzqsjgmw60fvciz71vg4l1qm3fsid1";
};
}
@@ -1,32 +1,27 @@
#!/usr/bin/env bash
version="2.20.0"
version="2.21.0"
version_jetson="2.16.1+nv24.08"
bucket="https://storage.googleapis.com/tensorflow/versions/${version}"
bucket="https://storage.googleapis.com/tensorflow/versions/%22${version}%22"
bucket_jetson="https://developer.download.nvidia.com/compute/redist/jp/v61/tensorflow"
# List of binary wheels for Tensorflow. The most recent versions can be found
# on the following page:
# https://www.tensorflow.org/install/pip?lang=python3#package_location
url_and_key_list=(
"x86_64-linux_39 $bucket/tensorflow_cpu-${version}-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_310 $bucket/tensorflow_cpu-${version}-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_311 $bucket/tensorflow_cpu-${version}-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_312 $bucket/tensorflow_cpu-${version}-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_313 $bucket/tensorflow_cpu-${version}-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_39_gpu $bucket/tensorflow-${version}-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_310_gpu $bucket/tensorflow-${version}-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_311_gpu $bucket/tensorflow-${version}-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_312_gpu $bucket/tensorflow-${version}-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"x86_64-linux_313_gpu $bucket/tensorflow-${version}-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"aarch64-linux_39 $bucket/tensorflow-${version}-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"aarch64-linux_310 $bucket/tensorflow-${version}-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"aarch64-linux_311 $bucket/tensorflow-${version}-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"aarch64-linux_312 $bucket/tensorflow-${version}-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"aarch64-linux_313 $bucket/tensorflow-${version}-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"x86_64-linux_310 $bucket/tensorflow_cpu-${version}-cp310-cp310-manylinux_2_27_x86_64.whl"
"x86_64-linux_311 $bucket/tensorflow_cpu-${version}-cp311-cp311-manylinux_2_27_x86_64.whl"
"x86_64-linux_312 $bucket/tensorflow_cpu-${version}-cp312-cp312-manylinux_2_27_x86_64.whl"
"x86_64-linux_313 $bucket/tensorflow_cpu-${version}-cp313-cp313-manylinux_2_27_x86_64.whl"
"x86_64-linux_310_gpu $bucket/tensorflow-${version}-cp310-cp310-manylinux_2_27_x86_64.whl"
"x86_64-linux_311_gpu $bucket/tensorflow-${version}-cp311-cp311-manylinux_2_27_x86_64.whl"
"x86_64-linux_312_gpu $bucket/tensorflow-${version}-cp312-cp312-manylinux_2_27_x86_64.whl"
"aarch64-linux_310 $bucket/tensorflow-${version}-cp310-cp310-manylinux_2_27_aarch64.whl"
"aarch64-linux_311 $bucket/tensorflow-${version}-cp311-cp311-manylinux_2_27_aarch64.whl"
"aarch64-linux_312 $bucket/tensorflow-${version}-cp312-cp312-manylinux_2_27_aarch64.whl"
"aarch64-linux_313 $bucket/tensorflow-${version}-cp313-cp313-manylinux_2_27_aarch64.whl"
"aarch64-linux_310_jetson $bucket_jetson/tensorflow-${version_jetson}-cp310-cp310-linux_aarch64.whl"
"aarch64-darwin_39 $bucket/tensorflow-${version}-cp39-cp39-macosx_12_0_arm64.whl"
"aarch64-darwin_310 $bucket/tensorflow-${version}-cp310-cp310-macosx_12_0_arm64.whl"
"aarch64-darwin_311 $bucket/tensorflow-${version}-cp311-cp311-macosx_12_0_arm64.whl"
"aarch64-darwin_312 $bucket/tensorflow-${version}-cp312-cp312-macosx_12_0_arm64.whl"
@@ -16,15 +16,15 @@
pytestCheckHook,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "tf-keras";
version = "2.20.1";
inherit (tensorflow) version;
pyproject = true;
src = fetchPypi {
pname = "tf_keras";
inherit version;
hash = "sha256-iEvlk4+wsrU7FYPBritmDvhyFTd8KbW2p3/SIbRyrq8=";
inherit (finalAttrs) version;
hash = "sha256-+a8PJUbNVTLeD656SB80ocoiU3N9TNEAD2txPccz93A=";
};
build-system = [
@@ -47,4 +47,4 @@ buildPythonPackage rec {
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ GaetanLepage ];
};
}
})