diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix index 8983b14cb446..fdc3770676ff 100644 --- a/pkgs/applications/graphics/darktable/default.nix +++ b/pkgs/applications/graphics/darktable/default.nix @@ -56,12 +56,12 @@ }: stdenv.mkDerivation rec { - version = "4.6.0"; + version = "4.6.1"; pname = "darktable"; src = fetchurl { url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz"; - sha256 = "sha256-cksn4yBNGCLebcU+oJCmsc5V98MiJtNGQmiXdcaKrMI="; + sha256 = "sha256-Fu3AoHApPi082k6hDkm9qb3pMuI/nmLi+i56x0rPev0="; }; nativeBuildInputs = [ cmake ninja llvmPackages.llvm pkg-config intltool perl desktop-file-utils wrapGAppsHook ]; diff --git a/pkgs/by-name/re/renode-dts2repl/package.nix b/pkgs/by-name/re/renode-dts2repl/package.nix index 1d589de2aa65..54d320362a45 100644 --- a/pkgs/by-name/re/renode-dts2repl/package.nix +++ b/pkgs/by-name/re/renode-dts2repl/package.nix @@ -6,14 +6,14 @@ python3.pkgs.buildPythonApplication { pname = "renode-dts2repl"; - version = "unstable-2024-02-14"; + version = "unstable-2024-02-16"; pyproject = true; src = fetchFromGitHub { owner = "antmicro"; repo = "dts2repl"; - rev = "b31d32ff4d02577f17bad214d8d7d17f0a5d0466"; - hash = "sha256-BgbCS4wRoV4/Rt+nLPQGQh25YEnXMqIz3RXEbQEmZuE="; + rev = "83c35ebd87c000f37a0b873e7c82134da7daa7a2"; + hash = "sha256-ga9D/5MkAso9NVK7cv2JryOoDF+a2ORN4MVQ3uns/zk="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/re/rerun/0001-re_space_view_time_series-utils-patch-out-doctests-w.patch b/pkgs/by-name/re/rerun/0001-re_space_view_time_series-utils-patch-out-doctests-w.patch new file mode 100644 index 000000000000..d43ae339641e --- /dev/null +++ b/pkgs/by-name/re/rerun/0001-re_space_view_time_series-utils-patch-out-doctests-w.patch @@ -0,0 +1,31 @@ +From f6c5dde13a39bd149d892162e2ef72267f4c4a57 Mon Sep 17 00:00:00 2001 +From: Someone Serge +Date: Thu, 15 Feb 2024 18:05:16 +0000 +Subject: [PATCH] re_space_view_time_series: utils: patch out doctests w + unstable features + +--- + crates/re_space_view_time_series/src/util.rs | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/crates/re_space_view_time_series/src/util.rs b/crates/re_space_view_time_series/src/util.rs +index 83ce5362f..59d3b9734 100644 +--- a/crates/re_space_view_time_series/src/util.rs ++++ b/crates/re_space_view_time_series/src/util.rs +@@ -288,12 +288,7 @@ fn add_series_runs( + /// is finite `x == x.next_up().next_down()` also holds. + /// + /// ```rust +-/// #![feature(float_next_up_down)] +-/// // f64::EPSILON is the difference between 1.0 and the next number up. +-/// assert_eq!(1.0f64.next_up(), 1.0 + f64::EPSILON); +-/// // But not for most numbers. +-/// assert!(0.1f64.next_up() < 0.1 + f64::EPSILON); +-/// assert_eq!(9007199254740992f64.next_up(), 9007199254740994.0); ++/// // PATCHED OUT THE UNSTABLE float_next_up_down + /// ``` + /// + /// [`NEG_INFINITY`]: f64::NEG_INFINITY +-- +2.43.0 + diff --git a/pkgs/by-name/re/rerun/package.nix b/pkgs/by-name/re/rerun/package.nix new file mode 100644 index 000000000000..c2f3842a298c --- /dev/null +++ b/pkgs/by-name/re/rerun/package.nix @@ -0,0 +1,128 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + stdenv, + binaryen, + rustfmt, + lld, + darwin, + freetype, + glib, + gtk3, + libxkbcommon, + openssl, + protobuf, + vulkan-loader, + wayland, + python3Packages, +}: + +rustPlatform.buildRustPackage rec { + pname = "rerun"; + version = "0.13.0"; + + src = fetchFromGitHub { + owner = "rerun-io"; + repo = "rerun"; + rev = version; + hash = "sha256-HgzzuvCpzKgWC8it0PSq62hBjjqpdgYtQQ50SNbr3do="; + }; + patches = [ + # Disables a doctest that depends on a nightly feature + ./0001-re_space_view_time_series-utils-patch-out-doctests-w.patch + ]; + + cargoHash = "sha256-qvnkOlcjADV4b+JfFAy9yNaZGaf0ZO7hh9HBg5XmPi0="; + + nativeBuildInputs = [ + (lib.getBin binaryen) # wasm-opt + + # @SomeoneSerge: Upstream suggests `mold`, but I didn't get it to work + lld + + pkg-config + protobuf + rustfmt + ]; + + buildInputs = + [ + freetype + glib + gtk3 + (lib.getDev openssl) + libxkbcommon + vulkan-loader + ] + ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.AppKit + darwin.apple_sdk.frameworks.CoreFoundation + darwin.apple_sdk.frameworks.CoreGraphics + darwin.apple_sdk.frameworks.CoreServices + darwin.apple_sdk.frameworks.Foundation + darwin.apple_sdk.frameworks.IOKit + darwin.apple_sdk.frameworks.Metal + darwin.apple_sdk.frameworks.QuartzCore + darwin.apple_sdk.frameworks.Security + ] + ++ lib.optionals stdenv.isLinux [ (lib.getLib wayland) ]; + + env.CARGO_TARGET_WASM32_UNKNOWN_UNKNOWN_LINKER = "lld"; + + addBuildInputRunpathsPhase = '' + declare _extraRunpaths + _sep= + for p in "''${pkgsHostTarget[@]}" ; do + if [[ -d "$p/lib" ]] ; then + _extraRunpaths+="$_sep$p/lib" + if [[ -z "$_sep" ]] ; then + _sep=: + fi + fi + done + + elfHasDynamicSection() { + patchelf --print-rpath "$1" >& /dev/null + } + + while IFS= read -r -d $'\0' path ; do + if elfHasDynamicSection "$path" ; then + patchelf "$path" --add-rpath "''${_extraRunpaths}" + fi + done < <( + for o in $(getAllOutputNames) ; do + find "''${!o}" -type f -and "(" -executable -or -iname '*.so' ")" -print0 + done + ) + + unset _extraRunpaths + unset _sep + ''; + + postPhases = lib.optionals stdenv.isLinux [ "addBuildInputRunpathsPhase" ]; + + cargoTestFlags = [ + "-p" + "rerun" + "--workspace" + "--exclude=crates/rerun/src/lib.rs" + ]; + + passthru.tests = { + inherit (python3Packages) rerun-sdk; + }; + + meta = with lib; { + description = "Visualize streams of multimodal data. Fast, easy to use, and simple to integrate. Built in Rust using egui"; + homepage = "https://github.com/rerun-io/rerun"; + changelog = "https://github.com/rerun-io/rerun/blob/${src.rev}/CHANGELOG.md"; + license = with licenses; [ + asl20 + mit + ]; + maintainers = with maintainers; [ SomeoneSerge ]; + mainProgram = "rerun"; + }; +} diff --git a/pkgs/by-name/uv/uv/Cargo.lock b/pkgs/by-name/uv/uv/Cargo.lock index 2aaf52edb349..5466f637ef71 100644 --- a/pkgs/by-name/uv/uv/Cargo.lock +++ b/pkgs/by-name/uv/uv/Cargo.lock @@ -203,9 +203,9 @@ dependencies = [ [[package]] name = "async_http_range_reader" -version = "0.5.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea8c52f8b749ec4e8665041001a31208afdae9ef88916d2edf1610deb8b3616e" +checksum = "5143aaae4ec035a5d7cfda666eab896fe5428a2a8ab09ca651a2dce3a8f06912" dependencies = [ "bisection", "futures", @@ -213,6 +213,7 @@ dependencies = [ "itertools 0.12.1", "memmap2 0.9.4", "reqwest", + "reqwest-middleware", "thiserror", "tokio", "tokio-stream", @@ -4114,7 +4115,7 @@ checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a" [[package]] name = "uv" -version = "0.1.3" +version = "0.1.4" dependencies = [ "anstream", "anyhow", diff --git a/pkgs/by-name/uv/uv/package.nix b/pkgs/by-name/uv/uv/package.nix index cad6dfbc12cc..aa05d6517d91 100644 --- a/pkgs/by-name/uv/uv/package.nix +++ b/pkgs/by-name/uv/uv/package.nix @@ -15,14 +15,14 @@ python3.pkgs.buildPythonApplication rec { pname = "uv"; - version = "0.1.3"; + version = "0.1.4"; pyproject = true; src = fetchFromGitHub { owner = "astral-sh"; repo = "uv"; rev = version; - hash = "sha256-eOrmVI8Lc9ScWHst72xLayX0UHVij6h/jf2p8AXiIRE="; + hash = "sha256-0bG1nReTaNqjHXCeW8gg3AWfXpsm8KulX6jsZQMVLlg="; }; cargoDeps = rustPlatform.importCargoLock { diff --git a/pkgs/development/interpreters/python/hooks/default.nix b/pkgs/development/interpreters/python/hooks/default.nix index 39a958b69ab3..04b1f4a512c9 100644 --- a/pkgs/development/interpreters/python/hooks/default.nix +++ b/pkgs/development/interpreters/python/hooks/default.nix @@ -8,7 +8,9 @@ let pythonCheckInterpreter = python.interpreter; setuppy = ../run_setup.py; in { - makePythonHook = args: pkgs.makeSetupHook ({passthru.provides.setupHook = true; } // args); + makePythonHook = let + defaultArgs = { passthru.provides.setupHook = true; }; + in args: pkgs.makeSetupHook (lib.recursiveUpdate defaultArgs args); condaInstallHook = callPackage ({ makePythonHook, gnutar, lbzip2 }: makePythonHook { @@ -68,8 +70,8 @@ in { # Such conflicts don't happen within the standard nixpkgs python package # set, but in downstream projects that build packages depending on other # versions of this hook's dependencies. - passthru.tests = import ./pypa-build-hook-test.nix { - inherit pythonOnBuildForHost runCommand; + passthru.tests = callPackage ./pypa-build-hook-test.nix { + inherit pythonOnBuildForHost; }; } ./pypa-build-hook.sh) { inherit (pythonOnBuildForHost.pkgs) build; diff --git a/pkgs/development/python-modules/openai-triton/0001-ptxas-disable-version-key-for-non-cuda-targets.patch b/pkgs/development/python-modules/openai-triton/0001-ptxas-disable-version-key-for-non-cuda-targets.patch new file mode 100644 index 000000000000..3941d54b8b37 --- /dev/null +++ b/pkgs/development/python-modules/openai-triton/0001-ptxas-disable-version-key-for-non-cuda-targets.patch @@ -0,0 +1,27 @@ +From 10f3d49aa6084d1b9b9624017cce7df106b9fb7e Mon Sep 17 00:00:00 2001 +From: Yaroslav Bolyukin +Date: Tue, 6 Feb 2024 13:51:28 +0100 +Subject: [PATCH] ptxas: disable version key for non-cuda targets + +--- + python/triton/runtime/jit.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/python/triton/runtime/jit.py b/python/triton/runtime/jit.py +index d55972b4b..bd875a701 100644 +--- a/python/triton/runtime/jit.py ++++ b/python/triton/runtime/jit.py +@@ -117,8 +117,8 @@ def version_key(): + with open(lib.module_finder.find_spec(lib.name).origin, "rb") as f: + contents += [hashlib.md5(f.read()).hexdigest()] + # ptxas version +- ptxas = path_to_ptxas()[0] +- ptxas_version = hashlib.md5(subprocess.check_output([ptxas, "--version"])).hexdigest() ++ # ptxas = path_to_ptxas()[0] ++ ptxas_version = "noptxas" + return '-'.join(TRITON_VERSION) + '-' + ptxas_version + '-' + '-'.join(contents) + + +-- +2.43.0 + diff --git a/pkgs/development/python-modules/openai-triton/default.nix b/pkgs/development/python-modules/openai-triton/default.nix index 46f1e6de5684..018852bdc743 100644 --- a/pkgs/development/python-modules/openai-triton/default.nix +++ b/pkgs/development/python-modules/openai-triton/default.nix @@ -19,6 +19,9 @@ , filelock , torchWithRocm , python + +, runCommand + , cudaPackages , cudaSupport ? config.cudaSupport }: @@ -46,6 +49,9 @@ buildPythonPackage rec { }) ] ++ lib.optionals (!cudaSupport) [ ./0000-dont-download-ptxas.patch + # openai-triton wants to get ptxas version even if ptxas is not + # used, resulting in ptxas not found error. + ./0001-ptxas-disable-version-key-for-non-cuda-targets.patch ]; nativeBuildInputs = [ @@ -71,7 +77,12 @@ buildPythonPackage rec { zlib ]; - propagatedBuildInputs = [ filelock ]; + propagatedBuildInputs = [ + filelock + # openai-triton uses setuptools at runtime: + # https://github.com/NixOS/nixpkgs/pull/286763/#discussion_r1480392652 + setuptools + ]; postPatch = let # Bash was getting weird without linting, @@ -150,7 +161,18 @@ buildPythonPackage rec { # ]; # Ultimately, torch is our test suite: - passthru.tests = { inherit torchWithRocm; }; + passthru.tests = { + inherit torchWithRocm; + # Implemented as alternative to pythonImportsCheck, in case if circular dependency on torch occurs again, + # and pythonImportsCheck is commented back. + import-triton = runCommand "import-triton" { nativeBuildInputs = [(python.withPackages (ps: [ps.openai-triton]))]; } '' + python << \EOF + import triton + import triton.language + EOF + touch "$out" + ''; + }; pythonRemoveDeps = [ # Circular dependency, cf. https://github.com/openai/triton/issues/1374 diff --git a/pkgs/development/python-modules/rerun-sdk/default.nix b/pkgs/development/python-modules/rerun-sdk/default.nix new file mode 100644 index 000000000000..7c6c13be63a2 --- /dev/null +++ b/pkgs/development/python-modules/rerun-sdk/default.nix @@ -0,0 +1,70 @@ +{ + buildPythonPackage, + lib, + rustPlatform, + stdenv, + attrs, + numpy, + pillow, + pyarrow, + rerun, + torch, + typing-extensions, + pytestCheckHook, + python, +}: + +buildPythonPackage { + pname = "rerun-sdk"; + inherit (rerun) version; + pyproject = true; + + inherit (rerun) src; + inherit (rerun) cargoDeps; + + nativeBuildInputs = [ + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook + ]; + + propagatedBuildInputs = [ + attrs + numpy + pillow + pyarrow + typing-extensions + ]; + + buildAndTestSubdir = "rerun_py"; + + # https://github.com/NixOS/nixpkgs/issues/289340 + # + # Alternatively, one could + # dontUsePythonImportsCheck = true; + # dontUsePytestCheck = true; + postInstall = '' + rm $out/${python.sitePackages}/rerun_sdk.pth + ln -s rerun_sdk/rerun $out/${python.sitePackages}/rerun + ''; + + pythonImportsCheck = [ "rerun" ]; + + nativeCheckInputs = [ + pytestCheckHook + torch + ]; + + inherit (rerun) addBuildInputRunpathsPhase; + postPhases = lib.optionals stdenv.isLinux [ "addBuildInputRunpathsPhase" ]; + + disabledTestPaths = [ + # "fixture 'benchmark' not found" + "tests/python/log_benchmark/test_log_benchmark.py" + ]; + + meta = { + description = "Python bindings for `rerun` (an interactive visualization tool for stream data)"; + inherit (rerun.meta) changelog homepage license maintainers; + mainProgram = "rerun"; + }; +} diff --git a/pkgs/development/python-modules/trimesh/default.nix b/pkgs/development/python-modules/trimesh/default.nix index d05cefe6ebe4..bf1de1ae4ab4 100644 --- a/pkgs/development/python-modules/trimesh/default.nix +++ b/pkgs/development/python-modules/trimesh/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "trimesh"; - version = "4.1.3"; + version = "4.1.4"; format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-SIHIA6HKo3Ka6rmZrBZfSmN/sNfEjSImYUtbtQs3ozQ="; + hash = "sha256-JeURuw0YImIKRwi35tYWDa5CQqYfPZm+NJiap8Qo6mE="; }; nativeBuildInputs = [ setuptools ]; diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix index 999c8e54baaf..ce737d343b70 100644 --- a/pkgs/development/tools/ruff/default.nix +++ b/pkgs/development/tools/ruff/default.nix @@ -1,7 +1,6 @@ { lib , rustPlatform , fetchFromGitHub -, fetchpatch , installShellFiles , stdenv , darwin @@ -11,33 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "ruff"; - version = "0.2.1"; + version = "0.2.2"; src = fetchFromGitHub { owner = "astral-sh"; repo = "ruff"; rev = "refs/tags/v${version}"; - hash = "sha256-VcDDGi6fPGZ75+J7aOSr7S6Gt5bpr0vM2Sk/Utlmf4k="; + hash = "sha256-wCjPlKlw0IAh5oH4W7DUw3KBxR4bt9Ho7ncRL5TbD/0="; }; - patches = [ - # TODO: remove at next release - (fetchpatch { - name = "filter-out-test-rules-in-ruleselector-json-schema"; - url = "https://github.com/astral-sh/ruff/commit/49c5e715f9c85aa8d0412b2ec9b1dd6f7ae24c5c.patch"; - hash = "sha256-s0Nv5uW3TKfKgro3V3E8Q0c8uOTgOKZQx9CxXge4YWE="; - }) - ]; - - # The following specific substitution is not working as the current directory is `/build/source` and thus has no mention of `ruff` in it. - # https://github.com/astral-sh/ruff/blob/866bea60a5de3c59d2537b0f3a634ae0ac9afd94/crates/ruff/tests/show_settings.rs#L12 - # -> Just patch it so that it expects the actual current directory and not `"[BASEPATH]"`. - postPatch = '' - substituteInPlace crates/ruff/tests/snapshots/show_settings__display_default_settings.snap \ - --replace '"[BASEPATH]"' '"'$PWD'"' - ''; - - cargoHash = "sha256-B7AiDNWEN4i/Lz9yczlRNXczQph52SMa3pcxK2AtO2A="; + cargoHash = "sha256-EHAlsEh3YnAhjIGC9rSgyK3gbKPCJqI6F3uAqZxv2nU="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/tools/backup/zfs-replicate/default.nix b/pkgs/tools/backup/zfs-replicate/default.nix index c5852d400eab..7405ccac2fe7 100644 --- a/pkgs/tools/backup/zfs-replicate/default.nix +++ b/pkgs/tools/backup/zfs-replicate/default.nix @@ -11,12 +11,12 @@ buildPythonApplication rec { pname = "zfs_replicate"; - version = "3.2.6"; - format = "pyproject"; + version = "3.2.7"; + pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-K+OCJmx0KfFTuaP3c5oFJqWa+zqYJtoruO2v/F0FtfA="; + hash = "sha256-+FJuV9BVfG2LbakE4Pw5ZhooSGq8xey9f3ATPTlCSkg="; }; postPatch = '' diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 513046e930cd..065271af1130 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12680,6 +12680,8 @@ self: super: with self; { reretry = callPackage ../development/python-modules/reretry { }; + rerun-sdk = callPackage ../development/python-modules/rerun-sdk { }; + resampy = callPackage ../development/python-modules/resampy { }; resize-right = callPackage ../development/python-modules/resize-right { };