Change:
<!-- Note that these are hard requirements --<!-- You can use the "Go to file" functionality on GitHub to find the package Then you can go to the history for this package Find the latest "packagename: oldversion -newversion" commit The "newversion" is the current version of the package --- <!-- Type the name of your package and try to find an open pull request for the package If you find an open pull request, you can review it! There's a high chance that you'll have the new version right away while helping the community! --- name: <!-- The current version can be found easily with the same process as above for checking the master branch If an open PR is present for the package, take this version as the current one and link to the PR --current version: 1.7.3 desired version: <!-- Search your package here: If no maintainer is listed for your package, tag the person that last updated the package --maintainers: Please tag this issue in your PR.
I started preparing the update in . Cc:

Discussion:
<del> { autoPatchelfHook, fetchurl, lib, stdenv }: stdenv.mkDerivation rec { pname = "julia-bin"; version = "1.7.3"; src = { x86_64-linux = fetchurl { url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz"; sha256 = "0ff7ypr76xf99h3dmy1xdnkq2xn432qnzihxs72xrd4j5nhlybwv"; }; }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); # Julia’s source files are in different locations for source and binary # releases. Thus we temporarily create a symlink to allow us to share patches # with source releases. prePatch = '' ln -s share/julia/test ''; patches = [ # Source release Nix patch(es) relevant for binary releases as well. ./patches/1.7-bin/0005-nix-Enable-parallel-unit-tests-for-sandbox.patch ]; postPatch = '' # Revert symlink hack. rm test # Julia fails to pick up our Certification Authority root certificates, but # it provides its own so we can simply disable the test. Patching in the # dynamic path to ours require us to rebuild the Julia system image. substituteInPlace share/julia/stdlib/v${lib.versions.majorMinor version}/NetworkOptions/test/runtests.jl  --replace '@test ca_roots_path() != bundled_ca_roots()'  '@test_skip ca_roots_path() != bundled_ca_roots()' ''; nativeBuildInputs = [ autoPatchelfHook ]; installPhase = '' runHook preInstall cp -r . $out runHook postInstall ''; # Breaks backtraces, etc. dontStrip = true; doInstallCheck = true; preInstallCheck = '' # Some tests require read/write access to $HOME. export HOME="$TMPDIR" ''; installCheckPhase = '' runHook preInstallCheck # Command lifted from `test/Makefile`. $out/bin/julia  --check-bounds=yes  --startup-file=no  --depwarn=error  $out/share/julia/test/runtests.jl runHook postInstallCheck ''; meta = { description = "High-level, high-performance, dynamic language for technical computing"; homepage = "https://julialang.org"; # Bundled and linked with various GPL code, although Julia itself is MIT. license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ ninjin raskin ]; platforms = [ "x86_64-linux" ]; mainProgram = "julia"; }; } </del>

<ins> { autoPatchelfHook, fetchurl, lib, stdenv }: stdenv.mkDerivation rec { pname = "julia-bin"; version = "1.8.0"; src = { x86_64-linux = fetchurl { url = "https://julialang-s3.julialang.org/bin/linux/x64/${lib.versions.majorMinor version}/julia-${version}-linux-x86_64.tar.gz"; sha256 = "sha256-6A1zLMt/eeAA15jLi2Vtw2QatZUW1uTlLhZ2UBeJKgA="; }; }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); postPatch = '' # Julia fails to pick up our Certification Authority root certificates, but # it provides its own so we can simply disable the test. Patching in the # dynamic path to ours require us to rebuild the Julia system image. substituteInPlace share/julia/stdlib/v${lib.versions.majorMinor version}/NetworkOptions/test/runtests.jl  --replace '@test ca_roots_path() != bundled_ca_roots()'  '@test_skip ca_roots_path() != bundled_ca_roots()' ''; nativeBuildInputs = [ autoPatchelfHook ]; installPhase = '' runHook preInstall cp -r . $out runHook postInstall ''; # Breaks backtraces, etc. dontStrip = true; doInstallCheck = true; preInstallCheck = '' export JULIA_TEST_USE_MULTIPLE_WORKERS=true # Some tests require read/write access to $HOME. export HOME="$TMPDIR" ''; installCheckPhase = '' runHook preInstallCheck # Command lifted from `test/Makefile`. $out/bin/julia  --check-bounds=yes  --startup-file=no  --depwarn=error  $out/share/julia/test/runtests.jl runHook postInstallCheck ''; meta = { description = "High-level, high-performance, dynamic language for technical computing"; homepage = "https://julialang.org"; # Bundled and linked with various GPL code, although Julia itself is MIT. license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ ninjin raskin ]; platforms = [ "x86_64-linux" ]; mainProgram = "julia"; }; } </ins>

<del> From 44c2c979c4f2222567ce65f506cf47fb87482348 Mon Sep 17 00:00:00 2001 From: Pontus Stenetorp <pontus@stenetorp.se> Date: Thu, 8 Apr 2021 04:37:44 +0000 Subject: [PATCH 5/6] nix: Enable parallel unit tests for sandbox Disabled by default due to lack of networking in the Nix sandbox. This greatly speeds up the build process on a multi-core system. --- test/runtests.jl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test/runtests.jl b/test/runtests.jl index 2f9cd058bb..2f8c19fa32 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -83,8 +83,9 @@ prepend!(tests, linalg_tests) import LinearAlgebra cd(@__DIR__) do n = 1 -    if net_on -        n = min(Sys.CPU_THREADS, length(tests)) +    if net_on || haskey(ENV, "NIX_BUILD_CORES") +        x = haskey(ENV, "NIX_BUILD_CORES") ? parse(Int, ENV["NIX_BUILD_CORES"]) : Sys.CPU_THREADS +        n = min(x, Sys.CPU_THREADS, length(tests)) n > 1 && addprocs_with_testenv(n) LinearAlgebra.BLAS.set_num_threads(1) end -- 2.29.3 </del>

julia_11 = throw "julia_11 has been deprecated in favor of the latest stable version"; # Added 2020-09-15 julia_13 = throw "julia_13 has been deprecated in favor of the latest stable version"; # Added 2021-03-13 julia_10-bin = throw "julia_10-bin has been deprecated in favor of the latest LTS version"; # Added 2021-12-02 <ins> julia_17-bin = throw "julia_17-bin has been deprecated in favor of the latest stable version"; # Added 2022-09-04 </ins> json_glib = throw "'json_glib' has been renamed to/replaced by 'json-glib'"; # Converted to throw 2022-02-22 jvmci8 = throw "graalvm8 and its tools were deprecated in favor of graalvm8-ce"; # Added 2021-10-15

julia = julia-stable; julia_16-bin = callPackage ../development/compilers/julia/1.6-bin.nix { }; <del> julia_17-bin = callPackage ../development/compilers/julia/1.7-bin.nix { }; </del> <ins> julia_18-bin = callPackage ../development/compilers/julia/1.8-bin.nix { }; </ins> julia-lts-bin = julia_16-bin; <del> julia-stable-bin = julia_17-bin; </del> <ins> julia-stable-bin = julia_18-bin; </ins> julia-bin = julia-stable-bin; jwasm =  callPackage ../development/compilers/jwasm { };