diff options
Diffstat (limited to 'pkgs/development')
35 files changed, 268 insertions, 147 deletions
diff --git a/pkgs/development/compilers/osl/default.nix b/pkgs/development/compilers/osl/default.nix index e4d3398476e..26ef76382a3 100644 --- a/pkgs/development/compilers/osl/default.nix +++ b/pkgs/development/compilers/osl/default.nix @@ -8,13 +8,13 @@ in clangStdenv.mkDerivation rec { # In theory this could use GCC + Clang rather than just Clang, # but https://github.com/NixOS/nixpkgs/issues/29877 stops this name = "openshadinglanguage-${version}"; - version = "1.10.6"; + version = "1.10.7"; src = fetchFromGitHub { owner = "imageworks"; repo = "OpenShadingLanguage"; - rev = "Release-1.10.6"; - sha256 = "1g8g853iq56knlvn1hdsck78by3843vyly9wji5ip41r6i2s0zla"; + rev = "Release-1.10.7"; + sha256 = "15grach34grp8x65sq8xzs2s6nfzjhn4blpfnaicw46jdi4c2w59"; }; cmakeFlags = [ "-DUSE_BOOST_WAVE=ON" "-DENABLERTTI=ON" ]; diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix index cbcfd7efb40..0140bb40111 100644 --- a/pkgs/development/compilers/swi-prolog/default.nix +++ b/pkgs/development/compilers/swi-prolog/default.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchgit, jdk, gmp, readline, openssl, unixODBC, zlib +{ stdenv, fetchFromGitHub, jdk, gmp, readline, openssl, unixODBC, zlib , libarchive, db, pcre, libedit, libossp_uuid, libXpm -, libSM, libXt, freetype, pkgconfig, fontconfig, makeWrapper ? stdenv.isDarwin -, git, cacert, cmake, libyaml +, libSM, libXt, freetype, pkgconfig, fontconfig +, cmake, libyaml, Security , libjpeg, libX11, libXext, libXft, libXinerama , extraLibraries ? [ jdk unixODBC libXpm libSM libXt freetype fontconfig ] , extraPacks ? [] @@ -18,58 +18,35 @@ stdenv.mkDerivation { pname = "swi-prolog"; inherit version; - src = fetchgit { - url = "https://github.com/SWI-Prolog/swipl-devel"; + src = fetchFromGitHub { + owner = "SWI-Prolog"; + repo = "swipl-devel"; rev = "V${version}"; sha256 = "0czbrscx2s4079nmwvipp9cnwfny16m3fpnp823llm7wyljchgvq"; + fetchSubmodules = true; }; - buildInputs = [ cacert git cmake gmp readline openssl + nativeBuildInputs = [ cmake pkgconfig ]; + + buildInputs = [ gmp readline openssl libarchive libyaml db pcre libedit libossp_uuid - zlib pkgconfig ] + zlib ] ++ stdenv.lib.optionals (withGui && !stdenv.isDarwin) [ libXpm libX11 libXext libXft libXinerama libjpeg ] ++ extraLibraries - ++ stdenv.lib.optional stdenv.isDarwin makeWrapper; + ++ stdenv.lib.optional stdenv.isDarwin Security; hardeningDisable = [ "format" ]; - configureFlags = [ - "--with-world" - "--enable-gmp" - "--enable-shared" - ]; + cmakeFlags = [ "-DSWIPL_INSTALL_IN_LIB=ON" ]; - installPhase = '' - mkdir -p $out - mkdir build - cd build - ${cmake}/bin/cmake -DCMAKE_INSTALL_PREFIX=$out .. - cd ../ - make - make install - make clean - mkdir -p $out/lib/swipl/pack - '' - + builtins.concatStringsSep "\n" + postInstall = builtins.concatStringsSep "\n" ( builtins.map (packInstall "$out") extraPacks ); - # For macOS: still not fixed in upstream: "abort trap 6" when called - # through symlink, so wrap binary. - # We reinvent wrapProgram here but omit argv0 pass in order to not - # break PAKCS package build. This is also safe for SWI-Prolog, since - # there is no wrapping environment and hence no need to spoof $0 - postInstall = stdenv.lib.optionalString stdenv.isDarwin '' - local prog="$out/bin/swipl" - local hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped - mv $prog $hidden - makeWrapper $hidden $prog - ''; - meta = { - homepage = http://www.swi-prolog.org/; + homepage = "https://www.swi-prolog.org"; description = "A Prolog compiler and interpreter"; - license = "LGPL"; + license = stdenv.lib.licenses.bsd2; platforms = stdenv.lib.platforms.linux ++ stdenv.lib.optionals (!withGui) stdenv.lib.platforms.darwin; maintainers = [ stdenv.lib.maintainers.meditans ]; diff --git a/pkgs/development/libraries/audio/libmysofa/default.nix b/pkgs/development/libraries/audio/libmysofa/default.nix index 0e0f0c5d425..ac8d7873123 100644 --- a/pkgs/development/libraries/audio/libmysofa/default.nix +++ b/pkgs/development/libraries/audio/libmysofa/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libmysofa"; - version = "0.7"; + version = "0.8"; src = fetchFromGitHub { owner = "hoene"; repo = "libmysofa"; rev = "v${version}"; - sha256 = "0si0z7cfw6xcs3dkrb4zini55xpxwfp27yl8lbx39gx2pf8v2jls"; + sha256 = "1gas6fp0xy57wwdvsdfq1yq2hg4zl2c074b260y7hh92z96pj22j"; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/libraries/grpc/default.nix b/pkgs/development/libraries/grpc/default.nix index d45aba1cb37..5d6a10ff113 100644 --- a/pkgs/development/libraries/grpc/default.nix +++ b/pkgs/development/libraries/grpc/default.nix @@ -1,13 +1,14 @@ { stdenv, fetchFromGitHub, cmake, zlib, c-ares, pkgconfig, openssl, protobuf, gflags }: stdenv.mkDerivation rec { - version = "1.23.0"; # N.B: if you change this, change pythonPackages.grpcio and pythonPackages.grpcio-tools to a matching version too + version = "1.24.3"; # N.B: if you change this, change pythonPackages.grpcio and pythonPackages.grpcio-tools to a matching version too pname = "grpc"; src = fetchFromGitHub { owner = "grpc"; repo = "grpc"; rev = "v${version}"; - sha256 = "14svfy7lvz8lf6b7zg1fbypj2n46n9gq0ldgnv85jm0ikv72cgv6"; + sha256 = "19g3fihds9rih2ciypkwi4jahjaymyqnjhd9id397fgj1qkw4w69"; + fetchSubmodules = true; }; nativeBuildInputs = [ cmake pkgconfig ]; buildInputs = [ zlib c-ares c-ares.cmake-config openssl protobuf gflags ]; diff --git a/pkgs/development/libraries/librsync/default.nix b/pkgs/development/libraries/librsync/default.nix index 6c958feab77..02a8abb7c85 100644 --- a/pkgs/development/libraries/librsync/default.nix +++ b/pkgs/development/libraries/librsync/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "librsync"; - version = "2.1.0"; + version = "2.2.1"; src = fetchFromGitHub { owner = "librsync"; repo = "librsync"; rev = "v${version}"; - sha256 = "03ncx7a2zd93b3jaq7b62nwn8qcwmf04jfvljnpxj5wsxl2agkp7"; + sha256 = "08wdlxsa9zg2pyasz1lwg70d5psi4amv81v4yxwffx67ndzb9yp5"; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/libraries/libsolv/default.nix b/pkgs/development/libraries/libsolv/default.nix index 071111ae4c2..84f6656d0b8 100644 --- a/pkgs/development/libraries/libsolv/default.nix +++ b/pkgs/development/libraries/libsolv/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchFromGitHub, cmake, ninja, zlib, expat, rpm, db }: stdenv.mkDerivation rec { - version = "0.7.6"; + version = "0.7.7"; pname = "libsolv"; src = fetchFromGitHub { owner = "openSUSE"; repo = "libsolv"; rev = version; - sha256 = "0rrf7i2zs2kbz6k2sj1mg30i05h2msl1q9h95dp5brq2k0w94rna"; + sha256 = "0f6r5j5d4fbzx9ihbbwrqylayw90qac8kapkhmfcvsh7f8whr623"; }; cmakeFlags = [ diff --git a/pkgs/development/libraries/libstrophe/default.nix b/pkgs/development/libraries/libstrophe/default.nix index 0ef96f67505..b48bd15909d 100644 --- a/pkgs/development/libraries/libstrophe/default.nix +++ b/pkgs/development/libraries/libstrophe/default.nix @@ -2,17 +2,17 @@ stdenv.mkDerivation rec { pname = "libstrophe"; - version = "0.9.2"; + version = "0.9.3"; src = fetchFromGitHub { owner = "strophe"; - repo = "libstrophe"; + repo = pname; rev = version; - sha256 = "1milna92h8wzxax8ll362zvb70091nmfks5lmd105vk0478zraca"; + sha256 = "1g1l0w9z9hdy5ncdvd9097gi7k7783did6py5h9camlpb2fnk5mk"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ automake autoconf openssl expat libtool check ]; + nativeBuildInputs = [ automake autoconf pkgconfig libtool check ]; + buildInputs = [ openssl expat ]; dontDisableStatic = true; @@ -27,9 +27,9 @@ stdenv.mkDerivation rec { minimal dependencies and is configurable for various environments. It runs well on both Linux, Unix, and Windows based platforms. ''; - homepage = http://strophe.im/libstrophe/; - license = with stdenv.lib.licenses; [gpl3 mit]; + homepage = "http://strophe.im/libstrophe/"; + license = with stdenv.lib.licenses; [ gpl3 mit ]; platforms = stdenv.lib.platforms.linux; - maintainers = with stdenv.lib.maintainers; [devhell flosse]; + maintainers = with stdenv.lib.maintainers; [ devhell flosse ]; }; } diff --git a/pkgs/development/libraries/openmpi/default.nix b/pkgs/development/libraries/openmpi/default.nix index 2a293e0b856..5996dda1e74 100644 --- a/pkgs/development/libraries/openmpi/default.nix +++ b/pkgs/development/libraries/openmpi/default.nix @@ -1,5 +1,8 @@ { stdenv, fetchurl, fetchpatch, gfortran, perl, libnl -, rdma-core, zlib, numactl, libevent, hwloc, pkgsTargetTarget +, rdma-core, zlib, numactl, libevent, hwloc, pkgsTargetTarget, symlinkJoin + +# Enable CUDA support +, cudaSupport ? false, cudatoolkit ? null # Enable the Sun Grid Engine bindings , enableSGE ? false @@ -8,9 +11,15 @@ , enablePrefix ? false }: +assert !cudaSupport || cudatoolkit != null; + let version = "4.0.2"; + cudatoolkit_joined = symlinkJoin { + name = "${cudatoolkit.name}-unsplit"; + paths = [ cudatoolkit.out cudatoolkit.lib ]; + }; in stdenv.mkDerivation rec { pname = "openmpi"; inherit version; @@ -33,15 +42,20 @@ in stdenv.mkDerivation rec { buildInputs = with stdenv; [ gfortran zlib ] ++ lib.optionals isLinux [ libnl numactl ] + ++ lib.optionals cudaSupport [ cudatoolkit ] ++ [ libevent hwloc ] ++ lib.optional (isLinux || isFreeBSD) rdma-core; nativeBuildInputs = [ perl ]; - configureFlags = with stdenv; [ "--disable-mca-dso" ] + configureFlags = with stdenv; lib.optional (!cudaSupport) "--disable-mca-dso" ++ lib.optional isLinux "--with-libnl=${libnl.dev}" ++ lib.optional enableSGE "--with-sge" ++ lib.optional enablePrefix "--enable-mpirun-prefix-by-default" + # TODO: add UCX support, which is recommended to use with cuda for the most robust OpenMPI build + # https://github.com/openucx/ucx + # https://www.open-mpi.org/faq/?category=buildcuda + ++ lib.optionals cudaSupport [ "--with-cuda=${cudatoolkit_joined}" "--enable-dlopen" ] ; enableParallelBuilding = true; @@ -69,6 +83,10 @@ in stdenv.mkDerivation rec { doCheck = true; + passthru = { + inherit cudaSupport cudatoolkit; + }; + meta = with stdenv.lib; { homepage = https://www.open-mpi.org/; description = "Open source MPI-3 implementation"; diff --git a/pkgs/development/libraries/openxr-loader/default.nix b/pkgs/development/libraries/openxr-loader/default.nix index ec4e1b5e837..6cf03bc990c 100644 --- a/pkgs/development/libraries/openxr-loader/default.nix +++ b/pkgs/development/libraries/openxr-loader/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "openxr-loader"; - version = "1.0.2"; + version = "1.0.3"; src = fetchFromGitHub { owner = "KhronosGroup"; repo = "OpenXR-SDK-Source"; rev = "release-${version}"; - sha256 = "11lkihykwkq0sbmijqxmn52lg6mcn6gkcpj1c7fhzm0hm1b9p9dn"; + sha256 = "0hqf0z38gk4id8d6vcms66mh3gllh2xib5mr11069sh9ak6b3mmp"; }; nativeBuildInputs = [ cmake python3 ]; diff --git a/pkgs/development/libraries/packr/default.nix b/pkgs/development/libraries/packr/default.nix index e2be8ded31c..4482a9cd312 100644 --- a/pkgs/development/libraries/packr/default.nix +++ b/pkgs/development/libraries/packr/default.nix @@ -5,13 +5,13 @@ buildGoModule rec { pname = "packr"; - version = "2.6.0"; + version = "2.7.1"; src = fetchFromGitHub { owner = "gobuffalo"; repo = pname; rev = "v${version}"; - sha256 = "11bd0s3hyzvhcg1q0iahv2w9f0w1k57jfxgswhz7dyndxvvr2b8i"; + sha256 = "0m5kl2fq8gf1v4vllgag2xl8fd382sdgqrcdb8f5alsnrdn08kb9"; }; subPackages = [ "packr" "v2/packr2" ]; diff --git a/pkgs/development/libraries/science/math/magma/default.nix b/pkgs/development/libraries/science/math/magma/default.nix index ef4e89aecb8..6a07ebdb862 100644 --- a/pkgs/development/libraries/science/math/magma/default.nix +++ b/pkgs/development/libraries/science/math/magma/default.nix @@ -24,6 +24,10 @@ in stdenv.mkDerivation { MKLROOT = optionalString mklSupport mkl; + preConfigure = '' + export CC=${cudatoolkit.cc}/bin/gcc CXX=${cudatoolkit.cc}/bin/g++ + ''; + enableParallelBuilding=true; buildFlags = [ "magma" "magma_sparse" ]; diff --git a/pkgs/development/python-modules/Logbook/default.nix b/pkgs/development/python-modules/Logbook/default.nix index 74a3ffdfcc8..97befe7190a 100644 --- a/pkgs/development/python-modules/Logbook/default.nix +++ b/pkgs/development/python-modules/Logbook/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "Logbook"; - version = "1.5.2"; + version = "1.5.3"; src = fetchPypi { inherit pname version; - sha256 = "0mvsig6sk4dywpw5naah1npf6h621qzhg0sd427j5znr06a2ksqs"; + sha256 = "1s1gyfw621vid7qqvhddq6c3z2895ci4lq3g0r1swvpml2nm9x36"; }; checkInputs = [ pytest ] ++ lib.optionals (!isPy3k) [ mock ]; diff --git a/pkgs/development/python-modules/colored/default.nix b/pkgs/development/python-modules/colored/default.nix index 42443c873d7..5b03f8ce9cc 100644 --- a/pkgs/development/python-modules/colored/default.nix +++ b/pkgs/development/python-modules/colored/default.nix @@ -5,11 +5,11 @@ buildPythonPackage rec { pname = "colored"; - version = "1.3.93"; + version = "1.4.0"; src = fetchPypi { inherit pname version; - sha256 = "0xbhq9nd9xz3b6w0c4q33jfgnv8jid023v2fyhi7hsrz1scym5l2"; + sha256 = "0wlsg7z406q31r5fpwkqfpyfpigazbmq9qm856wfbn861k2773zf"; }; # No proper test suite diff --git a/pkgs/development/python-modules/cupy/default.nix b/pkgs/development/python-modules/cupy/default.nix index 407988b6c73..f949120db0c 100644 --- a/pkgs/development/python-modules/cupy/default.nix +++ b/pkgs/development/python-modules/cupy/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "cupy"; - version = "6.3.0"; + version = "6.4.0"; src = fetchPypi { inherit pname version; - sha256 = "1q38riv63110ch170c1pyhq5jfbg8y0qmcdsqn8vb9sb79amvg93"; + sha256 = "126waa1jiynq00glr1hq86sgwwmakq009crfsn8qqgrj4c4clw6a"; }; checkInputs = [ diff --git a/pkgs/development/python-modules/django-extensions/default.nix b/pkgs/development/python-modules/django-extensions/default.nix index 1e9a6ac764d..911a313aefd 100644 --- a/pkgs/development/python-modules/django-extensions/default.nix +++ b/pkgs/development/python-modules/django-extensions/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "django-extensions"; - version = "2.1.9"; + version = "2.2.3"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; - sha256 = "08vggm6wrn5cbf8brfprif0rjrkqz06wddsw0ir1skkk8q2sp1b2"; + sha256 = "19bln9z25dmz1waqcxivlwg20dlm033c7f4z3h3mkhzkbk928y71"; }; postPatch = '' diff --git a/pkgs/development/python-modules/flask-jwt-extended/default.nix b/pkgs/development/python-modules/flask-jwt-extended/default.nix index 693e733e73a..23c5c5d3a37 100644 --- a/pkgs/development/python-modules/flask-jwt-extended/default.nix +++ b/pkgs/development/python-modules/flask-jwt-extended/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "Flask-JWT-Extended"; - version = "3.23.0"; + version = "3.24.0"; src = fetchPypi { inherit pname version; - sha256 = "05nf94dp80i68gs61pf67qj1y6i56jgdxmibqmns5wz6z33fi7wj"; + sha256 = "1znqjp780nrp94hjcrcx0945izzl3zsrqkmdac44d2fmlnbdp2by"; }; propagatedBuildInputs = [ dateutil flask pyjwt werkzeug ]; diff --git a/pkgs/development/python-modules/grpcio-tools/default.nix b/pkgs/development/python-modules/grpcio-tools/default.nix index cb6e47a6002..919283fb04f 100644 --- a/pkgs/development/python-modules/grpcio-tools/default.nix +++ b/pkgs/development/python-modules/grpcio-tools/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "grpcio-tools"; - version = "1.23.0"; + version = "1.24.3"; src = fetchPypi { inherit pname version; - sha256 = "cbc35031ec2b29af36947d085a7fbbcd8b79b84d563adf6156103d82565f78db"; + sha256 = "5efc92721a364e049ad3a174d5b20a21009fae9db04b3e5020ed0b534d9c022f"; }; enableParallelBuilding = true; diff --git a/pkgs/development/python-modules/grpcio/default.nix b/pkgs/development/python-modules/grpcio/default.nix index 65e9e3fb599..60bfae8dca5 100644 --- a/pkgs/development/python-modules/grpcio/default.nix +++ b/pkgs/development/python-modules/grpcio/default.nix @@ -1,18 +1,10 @@ -{ stdenv, buildPythonPackage, fetchFromGitHub, darwin +{ stdenv, buildPythonPackage, darwin, grpc , six, protobuf, enum34, futures, isPy27, pkgconfig , cython}: buildPythonPackage rec { + inherit (grpc) src version; pname = "grpcio"; - version = "1.23.0"; - - src = fetchFromGitHub { - owner = "grpc"; - repo = "grpc"; - rev = "v${version}"; - fetchSubmodules = true; - sha256 = "18hf794frncqvq3n4j5n8kip0gp6ch4pf5b3n6809q0c1paf6rp5"; - }; nativeBuildInputs = [ cython pkgconfig ] ++ stdenv.lib.optional stdenv.isDarwin darwin.cctools; diff --git a/pkgs/development/python-modules/imageio/default.nix b/pkgs/development/python-modules/imageio/default.nix index f7b3ff63c53..0e5134eeb26 100644 --- a/pkgs/development/python-modules/imageio/default.nix +++ b/pkgs/development/python-modules/imageio/default.nix @@ -15,10 +15,10 @@ buildPythonPackage rec { pname = "imageio"; - version = "2.5.0"; + version = "2.6.1"; src = fetchPypi { - sha256 = "1bdcrr5190jvk0msw2lswj4pbdhrcggjpj8m6q2a2mrxzjnmmrj2"; + sha256 = "1bk7pijmrspdfj9nnlbnw1yiww9w1kyjvlpzy9s5hj6zp4qv4kpl"; inherit pname version; }; diff --git a/pkgs/development/python-modules/keras/default.nix b/pkgs/development/python-modules/keras/default.nix index dde820876d8..a5b6cc6cda0 100644 --- a/pkgs/development/python-modules/keras/default.nix +++ b/pkgs/development/python-modules/keras/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "Keras"; - version = "2.2.4"; + version = "2.3.0"; src = fetchPypi { inherit pname version; - sha256 = "90b610a3dbbf6d257b20a079eba3fdf2eed2158f64066a7c6f7227023fd60bc9"; + sha256 = "0m5kj6jd1jkxv3npr2s6bczp5m592iryl9ysl5gbil0wszqyrmm0"; }; checkInputs = [ diff --git a/pkgs/development/python-modules/lark-parser/default.nix b/pkgs/development/python-modules/lark-parser/default.nix index 79bf4636b50..abd3a491b20 100644 --- a/pkgs/development/python-modules/lark-parser/default.nix +++ b/pkgs/development/python-modules/lark-parser/default.nix @@ -5,13 +5,13 @@ buildPythonPackage rec { pname = "lark-parser"; - version = "0.7.5"; + version = "0.7.7"; src = fetchFromGitHub { owner = "lark-parser"; repo = "lark"; rev = version; - sha256 = "1k9s62ddv6pghzp1yak2ld6sk92zm4sz1xqp8zkzyh3xqdsmfa0f"; + sha256 = "1b0dvvqqasir8dfpqj4jch7wxxk43csbv0wa80fiqsdlymxxj2dj"; }; # tests of Nearley support require js2py diff --git a/pkgs/development/python-modules/paste/default.nix b/pkgs/development/python-modules/paste/default.nix index 21e5a04c391..ad5c1744564 100644 --- a/pkgs/development/python-modules/paste/default.nix +++ b/pkgs/development/python-modules/paste/default.nix @@ -8,12 +8,12 @@ buildPythonPackage rec { pname = "paste"; - version = "3.0.8"; + version = "3.1.0"; src = fetchPypi { pname = "Paste"; inherit version; - sha256 = "05w1sh6ky4d7pmdb8nv82n13w22jcn3qsagg5ih3hjmbws9kkwf4"; + sha256 = "1r531zsznwlflhn7pbc7kaagycqxyjlsanjcvy7rkdjsvwi3ychq"; }; propagatedBuildInputs = [ six ]; diff --git a/pkgs/development/python-modules/peewee/default.nix b/pkgs/development/python-modules/peewee/default.nix index d2cd79419a4..2c7832f6ab4 100644 --- a/pkgs/development/python-modules/peewee/default.nix +++ b/pkgs/development/python-modules/peewee/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "peewee"; - version = "3.11.1"; + version = "3.11.2"; # pypi release does not provide tests src = fetchFromGitHub { owner = "coleifer"; repo = pname; rev = version; - sha256 = "0q84r9x99h9a3kqs3i12bgk8rz5my8vpjngg8yaqd2kzsb6gynp8"; + sha256 = "097cafqgk46bf0innwm7xnmsfs6z37hv3alyvrfz6d0iy4scshm5"; }; diff --git a/pkgs/development/python-modules/pex/default.nix b/pkgs/development/python-modules/pex/default.nix index 30631e06b5f..fec9de45f68 100644 --- a/pkgs/development/python-modules/pex/default.nix +++ b/pkgs/development/python-modules/pex/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "pex"; - version = "1.6.11"; + version = "1.6.12"; src = fetchPypi { inherit pname version; - sha256 = "034170w0qh20qkfaha2rpnccm31f7snhb4r9cd079v4v2x2swybk"; + sha256 = "13q83yba01hzm9mlk5y1klqirxdmsm2yx1yll5zdik9fd8hg0rf6"; }; nativeBuildInputs = [ setuptools ]; diff --git a/pkgs/development/python-modules/pyGithub/default.nix b/pkgs/development/python-modules/pyGithub/default.nix index a4e3cada1fc..895a06ce558 100644 --- a/pkgs/development/python-modules/pyGithub/default.nix +++ b/pkgs/development/python-modules/pyGithub/default.nix @@ -3,13 +3,13 @@ buildPythonPackage rec { pname = "PyGithub"; - version = "1.43.8"; + version = "1.44"; src = fetchFromGitHub { owner = "PyGithub"; repo = "PyGithub"; rev = "v${version}"; - sha256 = "1625v558xga5mwhl9jqmibywy5qafmg1vqrirqz6zfq1la1d22mw"; + sha256 = "067iyarllgdp40bzjxskzrixvmz350yj1qf8wvbddka504bcbh9r"; }; propagatedBuildInputs = [ python-jose pyjwt requests deprecated httpretty ]; diff --git a/pkgs/development/python-modules/pyaxmlparser/default.nix b/pkgs/development/python-modules/pyaxmlparser/default.nix index 1034c9d844d..c6c1afdcc95 100644 --- a/pkgs/development/python-modules/pyaxmlparser/default.nix +++ b/pkgs/development/python-modules/pyaxmlparser/default.nix @@ -1,7 +1,7 @@ { buildPythonPackage, stdenv, lxml, click, fetchFromGitHub, pytest, isPy3k }: buildPythonPackage rec { - version = "0.3.15"; + version = "0.3.21"; pname = "pyaxmlparser"; # the PyPI tarball doesn't ship tests. @@ -9,7 +9,7 @@ buildPythonPackage rec { owner = "appknox"; repo = pname; rev = "v${version}"; - sha256 = "0p4x21rg8h7alrg2zk6rbgc3fj77fiyky4zzvziz2bp5jpx1pvzp"; + sha256 = "1bphd2vl9akk78yqvvxcz36wmr47hp3nh6xyrdc8w1avy1aby1ij"; }; disabled = !isPy3k; diff --git a/pkgs/development/python-modules/pytorch/default.nix b/pkgs/development/python-modules/pytorch/default.nix index 92afa80852a..d55be70ae49 100644 --- a/pkgs/development/python-modules/pytorch/default.nix +++ b/pkgs/development/python-modules/pytorch/default.nix @@ -1,18 +1,101 @@ -{ stdenv, fetchurl, buildPythonPackage, pythonOlder, - cudaSupport ? false, cudatoolkit ? null, cudnn ? null, - fetchFromGitHub, lib, numpy, pyyaml, cffi, typing, cmake, hypothesis, numactl, +{ stdenv, fetchurl, fetchgit, buildPythonPackage, python, pythonOlder, + cudaSupport ? false, cudatoolkit ? null, cudnn ? null, nccl ? null, magma ? null, + mklSupport ? false, mkl ? null, + openMPISupport ? false, openmpi ? null, + buildNamedTensor ? false, + buildBinaries ? false, + cudaArchList ? null, + fetchFromGitHub, lib, numpy, pyyaml, cffi, click, typing, cmake, hypothesis, numactl, linkFarm, symlinkJoin, + + # ninja (https://ninja-build.org) must be available to run C++ extensions tests, + ninja, + + # dependencies for torch.utils.tensorboard + tensorboardSupport ? true, pillow, six, future, tensorflow-tensorboard, + utillinux, which, isPy3k }: -assert cudnn == null || cudatoolkit != null; +assert !openMPISupport || openmpi != null; +assert !tensorboardSupport || tensorflow-tensorboard != null; + +# assert that everything needed for cuda is present and that the correct cuda versions are used assert !cudaSupport || cudatoolkit != null; +assert cudnn == null || cudatoolkit != null; +assert !cudaSupport || (let majorIs = lib.versions.major cudatoolkit.version; + in majorIs == "9" || majorIs == "10"); + +let + hasDependency = dep: pkg: lib.lists.any (inp: inp == dep) pkg.buildInputs; + matchesCudatoolkit = hasDependency cudatoolkit; + matchesMkl = hasDependency mkl; +in +# confirm that cudatoolkits are sync'd across dependencies +assert !(openMPISupport && cudaSupport) || matchesCudatoolkit openmpi; +assert !cudaSupport || matchesCudatoolkit magma; + +# confirm that mkl is sync'd across dependencies +assert !mklSupport || mkl != null; +assert !(mklSupport && cudaSupport) || matchesMkl magma; +assert !mklSupport || (numpy.blasImplementation == "mkl" && numpy.blas == mkl); let cudatoolkit_joined = symlinkJoin { name = "${cudatoolkit.name}-unsplit"; - paths = [ cudatoolkit.out cudatoolkit.lib ]; + # nccl is here purely for semantic grouping it could be moved to nativeBuildInputs + paths = [ cudatoolkit.out cudatoolkit.lib nccl.dev nccl.out ]; }; + # Give an explicit list of supported architectures for the build, See: + # - pytorch bug report: https://github.com/pytorch/pytorch/issues/23573 + # - pytorch-1.2.0 build on nixpks: https://github.com/NixOS/nixpkgs/pull/65041 + # + # This list was selected by omitting the TORCH_CUDA_ARCH_LIST parameter, + # observing the fallback option (which selected all architectures known + # from cudatoolkit_10_0, pytorch-1.2, and python-3.6), and doing a binary + # searching to find offending architectures. + # + # NOTE: Because of sandboxing, this derivation can't auto-detect the hardware's + # cuda architecture, so there is also now a problem around new architectures + # not being supported until explicitly added to this derivation. + # + # FIXME: CMake is throwing the following warning on python-1.2: + # + # ``` + # CMake Warning at cmake/public/utils.cmake:172 (message): + # In the future we will require one to explicitly pass TORCH_CUDA_ARCH_LIST + # to cmake instead of implicitly setting it as an env variable. This will + # become a FATAL_ERROR in future version of pytorch. + # ``` + # If this is causing problems for your build, this derivation may have to strip + # away the standard `buildPythonPackage` and use the + # [*Adjust Build Options*](https://github.com/pytorch/pytorch/tree/v1.2.0#adjust-build-options-optional) + # instructions. This will also add more flexibility around configurations + # (allowing FBGEMM to be built in pytorch-1.1), and may future proof this + # derivation. + brokenArchs = [ "3.0" ]; # this variable is only used as documentation. + cuda9ArchList = [ + "3.5" + "5.0" + "5.2" + "6.0" + "6.1" + "7.0" + "7.0+PTX" # I am getting a "undefined architecture compute_75" on cuda 9 + # which leads me to believe this is the final cuda-9-compatible architecture. + ]; + cuda10ArchList = cuda9ArchList ++ [ + "7.5" + "7.5+PTX" # < most recent architecture as of cudatoolkit_10_0 and pytorch-1.2.0 + ]; + final_cudaArchList = + if !cudaSupport || cudaArchList != null + then cudaArchList + else + if lib.versions.major cudatoolkit.version == "9" + then cuda9ArchList + else cuda10ArchList; # the assert above removes any ambiguity here. + # Normally libcuda.so.1 is provided at runtime by nvidia-x11 via # LD_LIBRARY_PATH=/run/opengl-driver/lib. We only use the stub # libcuda.so from cudatoolkit for running tests, so that we don’t have @@ -25,28 +108,27 @@ let "LD_LIBRARY_PATH=${cudaStub}\${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} "; in buildPythonPackage rec { - version = "1.0.0"; + version = "1.2.0"; pname = "pytorch"; disabled = !isPy3k; + outputs = [ + "out" # output standard python package + "dev" # output libtorch only + ]; + src = fetchFromGitHub { owner = "pytorch"; repo = "pytorch"; rev = "v${version}"; fetchSubmodules = true; - sha256 = "076cpbig4sywn9vv674c0xdg832sdrd5pk1d0725pjkm436kpvlm"; + sha256 = "1biyq2p48chakf2xw7hazzqmr5ps1nx475ql8vkmxjg5zaa071cz"; }; - patches = - [ # Skips two tests that are only meant to run on multi GPUs - (fetchurl { - url = "https://github.com/pytorch/pytorch/commit/bfa666eb0deebac21b03486e26642fd70d66e478.patch"; - sha256 = "1fgblcj02gjc0y62svwc5gnml879q3x2z7m69c9gax79dpr37s9i"; - }) - ]; - dontUseCmakeConfigure = true; + preConfigure = lib.optionalString cudaSupport '' + export TORCH_CUDA_ARCH_LIST="${lib.strings.concatStringsSep ";" final_cudaArchList}" export CC=${cudatoolkit.cc}/bin/gcc CXX=${cudatoolkit.cc}/bin/g++ '' + lib.optionalString (cudaSupport && cudnn != null) '' export CUDNN_INCLUDE_DIR=${cudnn}/include @@ -61,7 +143,6 @@ in buildPythonPackage rec { RP_NEW=$(join_by : ''${RP[@]:2}) patchelf --set-rpath \$ORIGIN:''${RP_NEW} "$1" } - for f in $(find ''${out} -name 'libcaffe2*.so') do strip2 $f @@ -74,38 +155,84 @@ in buildPythonPackage rec { PYTORCH_BUILD_VERSION = version; PYTORCH_BUILD_NUMBER = 0; + BUILD_NAMEDTENSOR = buildNamedTensor; # experimental feature + USE_SYSTEM_NCCL=true; # don't build pytorch's third_party NCCL + # Suppress a weird warning in mkl-dnn, part of ideep in pytorch # (upstream seems to have fixed this in the wrong place?) # https://github.com/intel/mkl-dnn/commit/8134d346cdb7fe1695a2aa55771071d455fae0bc - NIX_CFLAGS_COMPILE = lib.optionals (numpy.blasImplementation == "mkl") [ "-Wno-error=array-bounds" ]; + # https://github.com/pytorch/pytorch/issues/22346 + # + # Also of interest: pytorch ignores CXXFLAGS uses CFLAGS for both C and C++: + # https://github.com/pytorch/pytorch/blob/v1.2.0/setup.py#L17 + NIX_CFLAGS_COMPILE = lib.optionals (numpy.blas == mkl) [ "-Wno-error=array-bounds" ]; nativeBuildInputs = [ - cmake - utillinux - which + cmake + utillinux + which + ninja ] ++ lib.optionals cudaSupport [ cudatoolkit_joined ]; buildInputs = [ - numpy.blas - ] ++ lib.optionals cudaSupport [ cudnn ] + numpy.blas + ] ++ lib.optionals cudaSupport [ cudnn magma nccl ] ++ lib.optionals stdenv.isLinux [ numactl ]; propagatedBuildInputs = [ cffi + click numpy pyyaml - ] ++ lib.optional (pythonOlder "3.5") typing; + ] ++ lib.optionals openMPISupport [ openmpi ] + ++ lib.optional (pythonOlder "3.5") typing + ++ lib.optionals tensorboardSupport [pillow six future tensorflow-tensorboard]; + + checkInputs = [ hypothesis ninja ]; + + doCheck = false; # tests take a long time for channel release, so doCheck should be overridden only when developing + checkPhase = "${cudaStubEnv}python test/run_test.py" + + " --exclude utils" # utils requires git, which is not allowed in the check phase + + # Other tests which have been disabled in previous nix derivations of pytorch. + # --exclude dataloader sparse torch utils thd_distributed distributed cpp_extensions + ; + postInstall = '' + mkdir $dev + cp -r $out/${python.sitePackages}/torch/lib $dev/lib + cp -r $out/${python.sitePackages}/torch/include $dev/include + ''; + + postFixup = stdenv.lib.optionalString stdenv.isDarwin '' + for f in $(ls $dev/lib/*.dylib); do + install_name_tool -id $dev/lib/$(basename $f) $f || true + done + + install_name_tool -change @rpath/libshm.dylib $dev/lib/libshm.dylib $dev/lib/libtorch_python.dylib + install_name_tool -change @rpath/libtorch.dylib $dev/lib/libtorch.dylib $dev/lib/libtorch_python.dylib + install_name_tool -change @rpath/libc10.dylib $dev/lib/libc10.dylib $dev/lib/libtorch_python.dylib - checkInputs = [ hypothesis ]; - checkPhase = '' - ${cudaStubEnv}python test/run_test.py --exclude dataloader sparse torch utils thd_distributed distributed cpp_extensions + install_name_tool -change @rpath/libc10.dylib $dev/lib/libc10.dylib $dev/lib/libtorch.dylib + + install_name_tool -change @rpath/libtorch.dylib $dev/lib/libtorch.dylib $dev/lib/libcaffe2_observers.dylib + install_name_tool -change @rpath/libc10.dylib $dev/lib/libc10.dylib $dev/lib/libcaffe2_observers.dylib + + install_name_tool -change @rpath/libtorch.dylib $dev/lib/libtorch.dylib $dev/lib/libcaffe2_module_test_dynamic.dylib + install_name_tool -change @rpath/libc10.dylib $dev/lib/libc10.dylib $dev/lib/libcaffe2_module_test_dynamic.dylib + + install_name_tool -change @rpath/libtorch.dylib $dev/lib/libtorch.dylib $dev/lib/libcaffe2_detectron_ops.dylib + install_name_tool -change @rpath/libc10.dylib $dev/lib/libc10.dylib $dev/lib/libcaffe2_detectron_ops.dylib + + install_name_tool -change @rpath/libtorch.dylib $dev/lib/libtorch.dylib $dev/lib/libshm.dylib + install_name_tool -change @rpath/libc10.dylib $dev/lib/libc10.dylib $dev/lib/libshm.dylib ''; + meta = { description = "Open source, prototype-to-production deep learning platform"; homepage = https://pytorch.org/; license = lib.licenses.bsd3; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ teh thoughtpolice ]; + platforms = with lib.platforms; linux ++ lib.optionals (!cudaSupport) darwin; + maintainers = with lib.maintainers; [ teh thoughtpolice stites tscholak ]; # tscholak esp. for darwin-related builds }; } diff --git a/pkgs/development/python-modules/rasterio/default.nix b/pkgs/development/python-modules/rasterio/default.nix index 143b5bea155..42b03849283 100644 --- a/pkgs/development/python-modules/rasterio/default.nix +++ b/pkgs/development/python-modules/rasterio/default.nix @@ -6,14 +6,14 @@ buildPythonPackage rec { pname = "rasterio"; - version = "1.0.28"; + version = "1.1.0"; # Pypi doesn't ship the tests, so we fetch directly from GitHub src = fetchFromGitHub { owner = "mapbox"; repo = "rasterio"; rev = version; - sha256 = "05rn2ijjv64a765gkpwcq3bb933gzp35zj4l9sk0agh19462myjx"; + sha256 = "0xa9jazsgsf7is4dbf2bbnfga8q8nmqy0qq4i7jj3riiccwlm6xw"; }; checkInputs = [ boto3 pytest pytestcov packaging hypothesis ] ++ lib.optional (!isPy3k) mock; diff --git a/pkgs/development/python-modules/shodan/default.nix b/pkgs/development/python-modules/shodan/default.nix index ae9f9e42ecf..7202b3cf70e 100644 --- a/pkgs/development/python-modules/shodan/default.nix +++ b/pkgs/development/python-modules/shodan/default.nix @@ -10,11 +10,11 @@ buildPythonPackage rec { pname = "shodan"; - version = "1.17.0"; + version = "1.19.0"; src = fetchPypi { inherit pname version; - sha256 = "1sh7a2dsal3kzcl4s9xbpl7hxhm9k55s5hiqdqqnafhvhnh0vmbz"; + sha256 = "1i4zrzamvgy3g117a2x66gyi7pzh27slc2w9pqysc0ldfcibi2wx"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/soco/default.nix b/pkgs/development/python-modules/soco/default.nix index 3f0d16cc8a8..cb38711ff91 100644 --- a/pkgs/development/python-modules/soco/default.nix +++ b/pkgs/development/python-modules/soco/default.nix @@ -7,11 +7,11 @@ buildPythonPackage rec { pname = "soco"; - version = "0.17"; + version = "0.18"; src = fetchPypi { inherit pname version; - sha256 = "15zw6i5z5p8vsa3lp20rjizhv4lzz935r73im0xm6zsl71bsgvj8"; + sha256 = "0bf55mqnz3l3ii26dvx33d35fv7jn7p5kmfwnr0xbpj38sxvhfr4"; }; postPatch = '' diff --git a/pkgs/development/python-modules/ssdeep/default.nix b/pkgs/development/python-modules/ssdeep/default.nix index f41452b4b61..f33143a0f02 100644 --- a/pkgs/development/python-modules/ssdeep/default.nix +++ b/pkgs/development/python-modules/ssdeep/default.nix @@ -10,11 +10,11 @@ buildPythonPackage rec { pname = "ssdeep"; - version = "3.3"; + version = "3.4"; src = fetchPypi { inherit pname version; - sha256 = "255de1f034652b3ed21920221017e70e570b1644f9436fea120ae416175f4ef5"; + sha256 = "0px8k4fjbkjb717bg2v7rjhm4iclrxzq7sh0hfqs55f4ddqi0m8v"; }; buildInputs = [ pkgs.ssdeep pytestrunner ]; diff --git a/pkgs/development/python-modules/twisted/default.nix b/pkgs/development/python-modules/twisted/default.nix index 249ddb4be86..dc534eaa3fe 100644 --- a/pkgs/development/python-modules/twisted/default.nix +++ b/pkgs/development/python-modules/twisted/default.nix @@ -39,7 +39,9 @@ buildPythonPackage rec { # http://twistedmatrix.com/documents/current/core/howto/plugin.html#auto3 # and http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=477103 for # details. - postInstall = "$out/bin/twistd --help > /dev/null"; + postFixup = '' + $out/bin/twistd --help > /dev/null + ''; checkPhase = '' ${python.interpreter} -m unittest discover -s twisted/test diff --git a/pkgs/development/python-modules/yamllint/default.nix b/pkgs/development/python-modules/yamllint/default.nix index 5c738c11f84..0406f6fe5a0 100644 --- a/pkgs/development/python-modules/yamllint/default.nix +++ b/pkgs/development/python-modules/yamllint/default.nix @@ -3,11 +3,11 @@ buildPythonPackage rec { pname = "yamllint"; - version = "1.17.0"; + version = "1.18.0"; src = fetchPypi { inherit pname version; - sha256 = "04xarlbh59f9ah53jxrcpqpzladyfxaw6cb2g8clw9aid0qzi9kh"; + sha256 = "076hqf189ww95n9vcbkkn8an42nx79cy8pf2qnl251yjncsvnbfl"; }; checkInputs = [ nose ]; diff --git a/pkgs/development/tools/selenium/chromedriver/default.nix b/pkgs/development/tools/selenium/chromedriver/default.nix index eff06daac06..aed384ba61f 100644 --- a/pkgs/development/tools/selenium/chromedriver/default.nix +++ b/pkgs/development/tools/selenium/chromedriver/default.nix @@ -6,12 +6,12 @@ let allSpecs = { x86_64-linux = { system = "linux64"; - sha256 = "04wb6h57daxmnv3a3xrcsznawbx7r8wyi1vk1g26z2l2ppcnsbzv"; + sha256 = "155yilj9w8a6jbkx1axhhkizwdc12krl4xixn10j7n94bvny4w2y"; }; x86_64-darwin = { system = "mac64"; - sha256 = "0f8j7m8ardaaw8pv02vxhwkqbcm34366bln0np0j0ig21d4fag09"; + sha256 = "0dzy9ihhbhx4byr2kalwfbn6jbk1hinacdqi25lvhaprdbrh2igh"; }; }; @@ -28,7 +28,7 @@ let in stdenv.mkDerivation rec { pname = "chromedriver"; - version = "76.0.3809.68"; + version = "78.0.3904.70"; src = fetchurl { url = "https://chromedriver.storage.googleapis.com/${version}/chromedriver_${spec.system}.zip"; @@ -50,7 +50,7 @@ stdenv.mkDerivation rec { homepage = https://sites.google.com/a/chromium.org/chromedriver; description = "A WebDriver server for running Selenium tests on Chrome"; license = licenses.bsd3; - maintainers = [ maintainers.goibhniu ]; + maintainers = [ maintainers.goibhniu maintainers.marsam ]; platforms = attrNames allSpecs; }; } diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix index 07bb1337745..e0d8fb2337d 100644 --- a/pkgs/development/web/postman/default.nix +++ b/pkgs/development/web/postman/default.nix @@ -7,11 +7,11 @@ stdenv.mkDerivation rec { pname = "postman"; - version = "7.6.0"; + version = "7.9.0"; src = fetchurl { url = "https://dl.pstmn.io/download/version/${version}/linux64"; - sha256 = "sha256:03y82ydkj46l7dn35y944gnghbrrhc75y3yxdyidbh8fl3xvmlfv"; + sha256 = "0qgw3mvds99ca1gy0zfxzi7n1yxv99xwqgzr9rkx5qm6bw9c1ppw"; name = "${pname}.tar.gz"; }; |