Merge master into staging-nixos

This commit is contained in:
nixpkgs-ci[bot]
2026-03-24 06:25:58 +00:00
committed by GitHub
35 changed files with 554 additions and 124 deletions
@@ -228,13 +228,13 @@
"vendorHash": "sha256-LNsJygeBSpY4xawhWfIcYOB0TEVK4DMeyiSgyn8PJ2A="
},
"cloudscale-ch_cloudscale": {
"hash": "sha256-r+0HrY+5ciNb3+JHV05ez/uPElbD7LcQqlUHWYp865Q=",
"hash": "sha256-Ynuyn0L5B7d81WXEHoTI03zFzlEP3LGY4yQIl/WBr/8=",
"homepage": "https://registry.terraform.io/providers/cloudscale-ch/cloudscale",
"owner": "cloudscale-ch",
"repo": "terraform-provider-cloudscale",
"rev": "v5.0.1",
"rev": "v5.0.2",
"spdx": "MIT",
"vendorHash": "sha256-sF43AWlGz2/lgtjHOl1OyDqF2IXlaqFkXaW8pVpFS/I="
"vendorHash": "sha256-WnVdJk74nrCHeP+Y6xdZZTDdfVIyk9TDan5cUU2O//8="
},
"constellix_constellix": {
"deleteVendor": true,
@@ -46,19 +46,19 @@ let
callPackage
(import ./generic.nix rec {
pname = "singularity-ce";
version = "4.4.0";
version = "4.4.1";
projectName = "singularity";
src = fetchFromGitHub {
owner = "sylabs";
repo = "singularity";
tag = "v${version}";
hash = "sha256-RYUsGAPDSbH3eYiCF25PEr1sI43y+MlXDq/ze2VICu4=";
hash = "sha256-lFnxh+cs5y6F/1f5uyQ3vA1E8uBKJOyOYbJy6081I5U=";
};
# Override vendorHash with overrideAttrs.
# See https://nixos.org/manual/nixpkgs/unstable/#buildGoModule-vendorHash
vendorHash = "sha256-Hs5t1N9oYodwLI6lrE+FMXRIQ3tpQCdZdUwO6FbxVH8=";
vendorHash = "sha256-uqEzYj8JmZWi2Rceh+JMJ5kzUmJ4T3JAt0rto1NewlM=";
extraConfigureFlags = [
# Do not build squashfuse from the Git submodule sources, use Nixpkgs provided version
+3 -3
View File
@@ -6,16 +6,16 @@
buildGoModule (finalAttrs: {
pname = "argo-rollouts";
version = "1.8.4";
version = "1.9.0";
src = fetchFromGitHub {
owner = "argoproj";
repo = "argo-rollouts";
rev = "v${finalAttrs.version}";
sha256 = "sha256-LT5RV5dBqcEloKUm9RCDxPncxScYVlYVWWYUld1iO0M=";
sha256 = "sha256-qpTilslCu9rmBVMo73lHnKD8NPxLHSzeBwkWhEB4If4=";
};
vendorHash = "sha256-+qdj72kjpctQabalcmjqk5DhptvBOzGErn9cpRkGqlk=";
vendorHash = "sha256-bF4jIEEG5DFhtDdy8LwK6SfE5OdyUsDjOIbAddvb5V8=";
# Disable tests since some test fail because of missing test data
doCheck = false;
+11 -5
View File
@@ -46,11 +46,17 @@ stdenv.mkDerivation (finalAttrs: {
"--enable-jack-default-midi"
];
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: brightonCLI.o:/build/bristol-0.60.11/brighton/brightonCLI.c:139: multiple definition of
# `event'; brightonMixerMenu.o:/build/bristol-0.60.11/brighton/brightonMixerMenu.c:1182: first defined here
env.NIX_CFLAGS_COMPILE = "-fcommon -Wno-implicit-int";
env.NIX_CFLAGS_COMPILE = toString [
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: brightonCLI.o:/build/bristol-0.60.11/brighton/brightonCLI.c:139: multiple definition of
# `event'; brightonMixerMenu.o:/build/bristol-0.60.11/brighton/brightonMixerMenu.c:1182: first defined here
"-fcommon"
# gcc14
"-Wno-implicit-int"
# gcc15
"-std=gnu17"
];
preInstall = ''
sed -e "s@\`which bristol\`@$out/bin/bristol@g" -i bin/startBristol
+3 -3
View File
@@ -11,18 +11,18 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "code";
version = "0.6.53";
version = "0.6.83";
src = fetchFromGitHub {
owner = "just-every";
repo = "code";
tag = "v${finalAttrs.version}";
hash = "sha256-lKe6OKIrf1k8sJpWIEippbvwamTWLe0uP1KOg7UsY6A=";
hash = "sha256-5BQDIb+wcDuz3aAkhBIimjxJY6vgQufiX+GWvSZ5yIs=";
};
sourceRoot = "${finalAttrs.src.name}/code-rs";
cargoHash = "sha256-Yo8g9GavX9lrIHGoTs8YzMJkVyABflaRa3ni0xf7EvQ=";
cargoHash = "sha256-ZNoF47zeLgmhBPZ2P9P2YAaWwmuykxj5veUX8qX0bGk=";
nativeBuildInputs = lib.optionals stdenvNoCC.hostPlatform.isLinux [
pkg-config
+8 -4
View File
@@ -12,7 +12,7 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "dprint";
version = "0.52.1";
version = "0.53.0";
# Prefer repository rather than crate here
# - They have Cargo.lock in the repository
@@ -21,10 +21,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
owner = "dprint";
repo = "dprint";
tag = finalAttrs.version;
hash = "sha256-CV0txMWYL9s11pA59D/RCt/s8GZ9LpUqOpEhK0yOhfA=";
hash = "sha256-4LtE/r/qUiZb4bOph/XEx+U0g11fvyX/nKZh8Ikt0SQ=";
};
cargoHash = "sha256-ca5e5wWRfMz+qCMbAUlMls8u+txcHgZ0R9dzN+dm1L4=";
cargoHash = "sha256-BV+hyiuIvn811E1y0IWOTkjtEpH/l6drWHXeMIXeOWk=";
nativeBuildInputs = [ installShellFiles ];
@@ -78,7 +78,11 @@ rustPlatform.buildRustPackage (finalAttrs: {
versionCheckKeepEnvironment = [ "HOME" ];
passthru = {
updateScript = nix-update-script { };
updateScript = nix-update-script {
# Follow upstream's release policy. Git tags are not enough for this package:
# https://github.com/dprint/dprint/issues/1113
extraArgs = [ "--use-github-releases" ];
};
};
meta = {
@@ -10,13 +10,13 @@
}:
stdenv.mkDerivation (finalAttrs: rec {
pname = "nano-syntax-highlighting";
version = "2025.07.01";
version = "2026.03.14";
src = fetchFromGitHub {
owner = "galenguyer";
repo = pname;
tag = version;
hash = "sha256-+ydaxjF0CzARxyJU9h1Iq2Yj5JgtAd59sf9yH+PyavY=";
hash = "sha256-H0F57b8M+onhpVtvna03t919xk6+z/dJP37y9hcqfCY=";
};
dontBuild = true;
+5 -8
View File
@@ -11,23 +11,20 @@
stdenv.mkDerivation (finalAttrs: {
pname = "odyssey";
version = "1.3";
version = "1.5.0";
src = fetchFromGitHub {
owner = "yandex";
repo = "odyssey";
rev = finalAttrs.version;
sha256 = "sha256-1ALTKRjpKmmFcAuhmgpcbJBkNuUlTyau8xWDRHh7gf0=";
rev = "v${finalAttrs.version}";
hash = "sha256-70h8JJH9+2xmgrADz106DNBLGUH0gnvatoeAbD03eKY=";
};
patches = [
# Fix compression build. Remove with the next release. https://github.com/yandex/odyssey/pull/441
(fetchpatch {
url = "https://github.com/yandex/odyssey/commit/01ca5b345c4483add7425785c9c33dfa2c135d63.patch";
sha256 = "sha256-8UPkZkiI08ZZL6GShhug/5/kOVrmdqYlsD1bcqfxg/w=";
url = "https://github.com/yandex/odyssey/commit/51c0e777aa45157f4f03fbd036113ce6d11ca41f.patch?full_index=1";
hash = "sha256-yytyA2K62v7XwJQ+WJnBGh87AVyeOv0cuzlQ7oYnhFg=";
})
# Fixes kiwi build.
./fix-missing-c-header.patch
];
nativeBuildInputs = [ cmake ];
+5
View File
@@ -28,6 +28,11 @@ stdenv.mkDerivation {
sha256 = "sha256-uBfECbU2Df/pPpEXXq62S7Ec0YU4lPIsZ8k5UmKD7xQ=";
};
postPatch = ''
substituteInPlace RetroFE/Source/CMakeLists.txt \
--replace-fail "cmake_minimum_required (VERSION 2.8)" "cmake_minimum_required (VERSION 3.10)"
'';
nativeBuildInputs = [
cmake
makeWrapper
+6 -9
View File
@@ -11,16 +11,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "rumdl";
version = "0.1.42";
version = "0.1.58";
src = fetchFromGitHub {
owner = "rvben";
repo = "rumdl";
tag = "v${finalAttrs.version}";
hash = "sha256-zOLNfZ8TrBIUVkoQT+GxSc4z48+IEx8RnURRgWooqt8=";
hash = "sha256-cGj+YNwrglxBiFwR7Tx/ntuJc8p1JwmiZdmLyTnrJwQ=";
};
cargoHash = "sha256-YhjDn5UIydP6jwxUiQy+jcTGWRD0HfcVxHtacka94Wg=";
cargoHash = "sha256-hFdA/M9X46+uQl6/JTohCiMq2JLHuBjz6s6e7yTBRUI=";
cargoBuildFlags = [
"--bin=rumdl"
@@ -34,15 +34,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
gitMinimal
];
__darwinAllowLocalNetworking = true;
useNextest = true;
cargoTestFlags = [
"--bins"
# Building all tests takes too long, and filtering by profile does not solve it.
# It also causes flaky results on Darwin in Hydra.
"--test"
"cli_*"
"--lib"
# Prefer the "smoke" profile over "ci" to exclude flaky tests: https://github.com/rvben/rumdl/pull/341
"--profile"
+3 -3
View File
@@ -13,16 +13,16 @@
buildGoModule (finalAttrs: {
pname = "runme";
version = "3.16.5";
version = "3.16.6";
src = fetchFromGitHub {
owner = "runmedev";
repo = "runme";
rev = "v${finalAttrs.version}";
hash = "sha256-FtZSwD9kGFaE43iJcei2K4tzPzXku9R9OnEeub/jYlg=";
hash = "sha256-bW4MlzBRC+Mf6Y1CmtTdMFaZbTBDqaPh3puFQpOl+hQ=";
};
vendorHash = "sha256-5x8KEd0foUZ68dS+SeXvaDzfwHVKuKTKCxlhXivTsB0=";
vendorHash = "sha256-yS87r9zYQpJ7G/opqBNJ6EgqO7/R1jL+mxPVX71rQhc=";
nativeBuildInputs = [
installShellFiles
@@ -1,4 +1,5 @@
{
libxcb,
serious-sam-classic,
vulkan-headers,
vulkan-loader,
@@ -11,7 +12,10 @@ serious-sam-classic.overrideAttrs (oldAttrs: {
hash = "sha256-fnWJOmgaW4/PfrmXiN7qodHEXc96/AZCbUo3dwelY6s=";
};
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ vulkan-headers ];
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [
libxcb
vulkan-headers
];
buildInputs = oldAttrs.buildInputs ++ [ vulkan-loader ];
})
+5 -5
View File
@@ -31,14 +31,14 @@ let
libsession-util-nodejs = stdenv.mkDerivation (finalAttrs: {
pname = "libsession-util-nodejs";
version = "0.6.12"; # find version in pnpm-lock.yaml
version = "0.6.16"; # find version in pnpm-lock.yaml
src = fetchFromGitHub {
owner = "session-foundation";
repo = "libsession-util-nodejs";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
deepClone = true; # need git rev for all submodules
hash = "sha256-6+eAofi4uapRKqJvCrekP7MWTfdd4VhOnSbc/8rsFic=";
hash = "sha256-xTaXPz5p+NBCdjCTErQVrG2gBA4oxHCvSqJTN8g9uE4=";
# fetchgit is not reproducible with deepClone + fetchSubmodules:
# https://github.com/NixOS/nixpkgs/issues/100498
postFetch = ''
@@ -109,7 +109,7 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "session-desktop";
version = "1.17.14";
version = "1.17.15";
src =
(fetchFromGitHub {
owner = "session-foundation";
@@ -123,7 +123,7 @@ stdenv.mkDerivation (finalAttrs: {
rm -rf .git
popd
'';
hash = "sha256-SrXlAOl6X5/4Vqrow+VONIiXPBC53Nm6M+xpcUTwjhk=";
hash = "sha256-snQYyXwybXqDkCBHtIeSMTkQLIXrc8zET7kRiWjPwpI=";
}).overrideAttrs
(oldAttrs: {
# https://github.com/NixOS/nixpkgs/issues/195117#issuecomment-1410398050
@@ -169,7 +169,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit (finalAttrs) pname version src;
inherit pnpm;
fetcherVersion = 3;
hash = "sha256-nIBMPw0laFDQWlY05x0YsSmYHLyAxKOD4ArbZ6wLZ7Y=";
hash = "sha256-cinhhPTFSzrr/hc/+Tyv1IKRn84MYpycOQ1qxCMQuy8=";
};
buildPhase = ''
+3 -3
View File
@@ -36,20 +36,20 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "siyuan";
version = "3.6.0";
version = "3.6.1";
src = fetchFromGitHub {
owner = "siyuan-note";
repo = "siyuan";
tag = "v${finalAttrs.version}";
hash = "sha256-0CP9ypx1w2s949oDYYvv96p8xvhPZs5y1FLWoUBN5r4=";
hash = "sha256-Qsqg6WKfpPOZwvH6aFcDVjIAJcBckClqE/1g92JvR2M=";
};
kernel = buildGoModule {
name = "${finalAttrs.pname}-${finalAttrs.version}-kernel";
inherit (finalAttrs) src;
sourceRoot = "${finalAttrs.src.name}/kernel";
vendorHash = "sha256-IAkohYOF8s8NFsy/fagVXddtym6URop6tvEIB6H8gI0=";
vendorHash = "sha256-R+/njKBraRPgWLnhBXy969ILA/fn0wyq6OkYgJnS1WM=";
patches = [
(replaceVars ./set-pandoc-path.patch {
+3 -3
View File
@@ -8,16 +8,16 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "sqruff";
version = "0.35.4";
version = "0.37.3";
src = fetchFromGitHub {
owner = "quarylabs";
repo = "sqruff";
tag = "v${finalAttrs.version}";
hash = "sha256-Ksd/nt5zUyfRXDeBU8N56UvIriG2biE2tGlIF2Wy1iI=";
hash = "sha256-cqPbDMZICXMO4qZ6FEy07uy92mUD53VR6yKG+oitzcg=";
};
cargoHash = "sha256-bIU1a7GcmzjGl8Plik0MOLFe5ToReuowLzVwRAen1h4=";
cargoHash = "sha256-L7u544Sapu0W2UnQhER820EY2LfJvOHzy7bIMZUOQiQ=";
# Disable the `python` feature which doesn't work on Nix yet
buildNoDefaultFeatures = true;
+4 -1
View File
@@ -14,7 +14,10 @@ stdenv.mkDerivation (finalAttrs: {
sha256 = "1sn6005aqyfvrlkm5445cyyaj6h6wfyskfncfmds55x34hfyxpvl";
};
patches = [ ./arm.patch ];
patches = [
./arm.patch
./signal-handler.patch
];
buildInputs = [ libxcrypt ];
@@ -0,0 +1,44 @@
diff --git a/main.c b/main.c
index 00d1cf3..3526cfd 100644
--- a/main.c
+++ b/main.c
@@ -675,7 +675,7 @@ int main(int argc, char **argv)
msg_out(warn, "cannot open pidfile %s", pidfile);
}
- setsignal(SIGHUP, reload);
+ setsignal(SIGHUP, do_sighup);
setsignal(SIGINT, SIG_IGN);
setsignal(SIGQUIT, SIG_IGN);
setsignal(SIGILL, SIG_IGN);
@@ -690,7 +690,7 @@ int main(int argc, char **argv)
setsignal(SIGSYS, SIG_IGN);
setsignal(SIGPIPE, SIG_IGN);
setsignal(SIGALRM, SIG_IGN);
- setsignal(SIGTERM, cleanup);
+ setsignal(SIGTERM, do_sigterm);
setsignal(SIGUSR1, SIG_IGN);
setsignal(SIGUSR2, SIG_IGN);
#ifdef SIGPOLL
@@ -737,7 +737,7 @@ int main(int argc, char **argv)
}
} else {
#endif
- setsignal(SIGCHLD, reapchild);
+ setsignal(SIGCHLD, do_sigchld);
setregid(-1, PROCGID);
setreuid(-1, PROCUID);
msg_out(norm, "Starting: MAX_CH(%d)", max_child);
diff --git a/srelay.h b/srelay.h
index 3e4d5e7..35010f0 100644
--- a/srelay.h
+++ b/srelay.h
@@ -366,7 +366,7 @@ struct user_pass {
};
#ifndef SIGFUNC_DEFINED
-typedef void (*sigfunc_t)();
+typedef void (*sigfunc_t)(int);
#endif
#ifndef MAX
+19 -4
View File
@@ -2,6 +2,7 @@
lib,
stdenv,
fetchurl,
fetchDebianPatch,
autoreconfHook,
testers,
}:
@@ -22,14 +23,28 @@ stdenv.mkDerivation (finalAttrs: {
substituteInPlace Makefile.am \
--replace-fail 4555 0555
sed -i '/chown $(OWNER)/d' Makefile.am
# don't reply on implicitly defined `exit` function in `HAVE_VOID` test:
substituteInPlace configure.in \
--replace-fail '(void) exit (0)' '(void) (0)'
'';
patches = [
./socklen_t.patch
(fetchDebianPatch {
inherit (finalAttrs) pname version;
debianRevision = "31";
patch = "configure.patch";
hash = "sha256-6Aqghz6P+bWULHOXCQIdQLRuaE+Lci7t5ojQXJOyeA0=";
})
(fetchDebianPatch {
inherit (finalAttrs) pname version;
debianRevision = "31";
patch = "implicit.patch";
hash = "sha256-EsJqZCV4x7ggzpoa4OaibCLvF8L8FGGnLlBtr4Cee18=";
})
(fetchDebianPatch {
inherit (finalAttrs) pname version;
debianRevision = "31";
patch = "gcc15.patch";
hash = "sha256-+9H/gQLwkPx4GeWiZyy6oQdysvw2+P1O8wP5It/Tg5k=";
})
];
# Regenerate `configure`; the checked in version was generated in 2002 and
@@ -1,6 +1,7 @@
{
lib,
buildPythonPackage,
python,
fetchFromGitHub,
cython,
numpy,
@@ -8,9 +9,9 @@
property-cached,
pytestCheckHook,
scipy,
setuptools,
setuptools-scm,
statsmodels,
meson-python,
}:
buildPythonPackage rec {
@@ -25,17 +26,10 @@ buildPythonPackage rec {
hash = "sha256-qw8sSgsMu6YTiQlzsrePnDKkFBtrxD9RK6ZZE5jFeX0=";
};
postPatch = ''
substituteInPlace setup.cfg \
--replace-fail 'PytestRemovedIn8Warning' 'PytestRemovedIn9Warning'
substituteInPlace pyproject.toml \
--replace-fail '"setuptools_scm[toml]>=8.0.3,<9",' '"setuptools_scm[toml]",'
'';
build-system = [
setuptools
setuptools-scm
cython
meson-python
];
dependencies = [
@@ -48,6 +42,16 @@ buildPythonPackage rec {
nativeCheckInputs = [ pytestCheckHook ];
# Replace the source tree's arch/ with symlinks to the installed package.
# pytest adds rootdir to sys.path, so the source arch/ always shadows the
# installed one. The source tree lacks _version.py (generated by setuptools-scm)
# and compiled Cython extensions, causing import failures.
# Symlinking to the installed package makes all imports resolve correctly.
preCheck = ''
rm -rf arch
ln -s $out/${python.sitePackages}/arch arch
'';
disabledTestPaths = [
# Skip long-running/failing tests
"arch/tests/univariate/test_forecast.py"
@@ -1,9 +1,12 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
# dependencies
ctranslate2,
ctranslate2-cpp,
@@ -12,6 +15,7 @@
sentencepiece,
spacy,
stanza,
# tests
pytestCheckHook,
writableTmpDirAsHomeHook,
@@ -24,6 +28,9 @@ let
withOpenblas = false;
};
};
inherit (stdenv.hostPlatform) isDarwin isLinux isAarch64;
isAarch64Linux = isLinux && isAarch64;
in
buildPythonPackage (finalAttrs: {
pname = "argostranslate";
@@ -39,6 +46,9 @@ buildPythonPackage (finalAttrs: {
build-system = [ setuptools ];
pythonRelaxDeps = [
"stanza"
];
dependencies = [
ctranslate2OneDNN
minisbd
@@ -53,14 +63,13 @@ buildPythonPackage (finalAttrs: {
writableTmpDirAsHomeHook
];
pythonRelaxDeps = [
"stanza"
];
pythonImportsCheck = [
# aarch64-linux fails cpuinfo test, because /sys/devices/system/cpu/ does not exist in the sandbox:
# terminate called after throwing an instance of 'onnxruntime::OnnxRuntimeException'
pythonImportsCheck = lib.optionals (!isAarch64Linux) [
"argostranslate"
"argostranslate.translate"
];
doCheck = !isAarch64Linux;
meta = {
description = "Open-source offline translation library written in Python";
@@ -19,14 +19,14 @@
buildPythonPackage (finalAttrs: {
pname = "confection";
version = "1.2.2";
version = "1.3.2";
pyproject = true;
src = fetchFromGitHub {
owner = "explosion";
repo = "confection";
tag = "release-v${finalAttrs.version}";
hash = "sha256-C7TAfr7Xq4C+JJI7/XWX1mTf2IvvOQT+q/nnGojhbFU=";
hash = "sha256-14e2aOE9HyqrLE6i8ljA81pi7PYdQL+AReo/HPzOwck=";
};
build-system = [
@@ -4,8 +4,12 @@
aiohttp,
buildPythonPackage,
fetchFromGitHub,
typing-extensions,
libopus,
pynacl,
pytestCheckHook,
pytest-asyncio,
looptime,
withVoice ? true,
ffmpeg,
}:
@@ -26,6 +30,7 @@ buildPythonPackage rec {
dependencies = [
aiohttp
typing-extensions
]
++ lib.optionals withVoice [
libopus
@@ -40,8 +45,16 @@ buildPythonPackage rec {
--replace-fail 'executable: str = "ffmpeg"' 'executable: str="${ffmpeg}/bin/ffmpeg"'
'';
# Only have integration tests with discord
doCheck = false;
nativeCheckInputs = [
pytestCheckHook
pytest-asyncio
looptime
];
pytestFlags = [
# DeprecationWarning: There is no current event loop
"-Wignore::DeprecationWarning"
];
pythonImportsCheck = [
"disnake"
@@ -0,0 +1,48 @@
{
buildPythonPackage,
django,
fetchFromGitHub,
lib,
python-dateutil,
pytest-django,
pytestCheckHook,
pytest-cov-stub,
pdm-backend,
}:
buildPythonPackage (finalAttrs: {
pname = "django-recurrence";
version = "1.14";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-recurrence";
tag = finalAttrs.version;
hash = "sha256-Hw9QebQuQfhooa6rhJ1+y7DTgPgaVF9kZzQ9H7NshmM=";
};
build-system = [
pdm-backend
];
dependencies = [
django
python-dateutil
];
pythonImportsCheck = [ "recurrence" ];
nativeCheckInputs = [
pytest-django
pytest-cov-stub
pytestCheckHook
];
meta = {
description = "Utility for working with recurring dates in Django";
homepage = "https://github.com/jazzband/django-recurrence";
changelog = "https://github.com/jazzband/django-recurrence/blob/${finalAttrs.src.tag}/CHANGES.rst";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ kurogeek ];
};
})
@@ -9,14 +9,14 @@
buildPythonPackage (finalAttrs: {
pname = "ghmap";
version = "2.0.3";
version = "2.0.4";
pyproject = true;
src = fetchFromGitHub {
owner = "sgl-umons";
repo = "ghmap";
tag = "v${finalAttrs.version}";
hash = "sha256-UF7Zxrm+thZeAKPiCaI5t4NbDzuUU3oosPsb0Cgv9t0=";
hash = "sha256-FXeLSCoZRkHVXDtV/L75mACdU3MvOOSe3Cw6U2+6FfE=";
};
build-system = [
@@ -29,6 +29,11 @@ buildPythonPackage rec {
mercurial
];
# the dulwich version we are using is ahead of the one used upstream by hg-git.
# the build was failing because it could not import 'ANNOTATED_TAG_SUFFIX' from
# 'dulwich.refs'.
patches = [ ./dulwich_ANNOTATED_TAG_SUFFIX_renamed.patch ];
pythonRelaxDeps = [ "dulwich" ];
pythonImportsCheck = [ "hggit" ];
@@ -0,0 +1,64 @@
diff -r 1c168e428a22 hggit/git2hg.py
--- a/hggit/git2hg.py Mon Nov 18 20:33:10 2024 +0100
+++ b/hggit/git2hg.py Fri Mar 20 01:49:29 2026 +0000
@@ -5,8 +5,8 @@
from dulwich import config as dul_config
from dulwich.objects import Commit, Tag
+from dulwich.protocol import PEELED_TAG_SUFFIX
from dulwich.refs import (
- ANNOTATED_TAG_SUFFIX,
LOCAL_BRANCH_PREFIX,
LOCAL_TAG_PREFIX,
)
@@ -306,7 +306,7 @@
raise error.RepoLookupError(msg)
else:
for ref, sha in refs.items():
- if not ref.endswith(ANNOTATED_TAG_SUFFIX) and (
+ if not ref.endswith(PEELED_TAG_SUFFIX) and (
ref.startswith(LOCAL_BRANCH_PREFIX)
or ref.startswith(LOCAL_TAG_PREFIX)
or ref == b'HEAD'
diff -r 1c168e428a22 hggit/git_handler.py
--- a/hggit/git_handler.py Mon Nov 18 20:33:10 2024 +0100
+++ b/hggit/git_handler.py Fri Mar 20 01:49:29 2026 +0000
@@ -9,8 +9,8 @@
from dulwich.errors import HangupException, GitProtocolError, ApplyDeltaError
from dulwich.objects import Blob, Commit, Tag, Tree, parse_timezone
from dulwich.pack import apply_delta
+from dulwich.protocol import PEELED_TAG_SUFFIX
from dulwich.refs import (
- ANNOTATED_TAG_SUFFIX,
LOCAL_BRANCH_PREFIX,
LOCAL_TAG_PREFIX,
)
@@ -1638,8 +1638,8 @@
# pull tags pointing to known revisions, including
# annotated tags
for ref, sha in refs.items():
- if ref.endswith(ANNOTATED_TAG_SUFFIX) and sha in self._map_git:
- actual_ref = ref[: -len(ANNOTATED_TAG_SUFFIX)]
+ if ref.endswith(PEELED_TAG_SUFFIX) and sha in self._map_git:
+ actual_ref = ref[: -len(PEELED_TAG_SUFFIX)]
filteredrefs.setdefault(actual_ref, refs[actual_ref])
return [x for x in filteredrefs.values() if x not in self.git]
@@ -1855,7 +1855,7 @@
repotags = self.repo.tags()
new_refs = {}
for k in refs:
- if k.endswith(ANNOTATED_TAG_SUFFIX) or not k.startswith(
+ if k.endswith(PEELED_TAG_SUFFIX) or not k.startswith(
LOCAL_TAG_PREFIX
):
continue
@@ -2036,7 +2036,7 @@
for ref_name, sha in refs.items():
if (
- ref_name.endswith(ANNOTATED_TAG_SUFFIX)
+ ref_name.endswith(PEELED_TAG_SUFFIX)
or sha not in self.git.object_store
):
# the sha points to a peeled tag; we should either
@@ -1,5 +1,6 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
# build-system
@@ -29,9 +30,11 @@ buildPythonPackage (finalAttrs: {
onnxruntime
];
pythonImportsCheck = [
"minisbd"
];
# aarch64-linux fails cpuinfo test, because /sys/devices/system/cpu/ does not exist in the sandbox:
# terminate called after throwing an instance of 'onnxruntime::OnnxRuntimeException'
pythonImportsCheck = lib.optionals (
!(stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64)
) [ "minisbd" ];
meta = {
description = "Free and open source library for fast sentence boundary detection";
@@ -0,0 +1,194 @@
From 9a903af867a6f1571ed5716a568afcfbc0010552 Mon Sep 17 00:00:00 2001
From: Tom van Dijk <18gatenmaker6@gmail.com>
Date: Sun, 22 Mar 2026 17:01:13 +0100
Subject: [PATCH] Fix multiprocessing errors for python 3.14
---
src/etcd/tests/integration/test_simple.py | 98 +++++++++++------------
1 file changed, 49 insertions(+), 49 deletions(-)
diff --git a/src/etcd/tests/integration/test_simple.py b/src/etcd/tests/integration/test_simple.py
index 54e2a13..a5de541 100644
--- a/src/etcd/tests/integration/test_simple.py
+++ b/src/etcd/tests/integration/test_simple.py
@@ -243,6 +243,14 @@ class TestClusterFunctions(EtcdIntegrationTest):
class TestWatch(EtcdIntegrationTest):
+ def watch_change_value(key, newValue):
+ c = etcd.Client(port=6001)
+ c.set(key, newValue)
+
+ def watch_watch_value(key, queue):
+ c = etcd.Client(port=6001)
+ queue.put(c.watch(key).value)
+
def test_watch(self):
"""INTEGRATION: Receive a watch event from other process"""
@@ -250,23 +258,15 @@ class TestWatch(EtcdIntegrationTest):
queue = multiprocessing.Queue()
- def change_value(key, newValue):
- c = etcd.Client(port=6001)
- c.set(key, newValue)
-
- def watch_value(key, queue):
- c = etcd.Client(port=6001)
- queue.put(c.watch(key).value)
-
changer = multiprocessing.Process(
- target=change_value,
+ target=TestWatch.watch_change_value,
args=(
"/test-key",
"new-test-value",
),
)
- watcher = multiprocessing.Process(target=watch_value, args=("/test-key", queue))
+ watcher = multiprocessing.Process(target=TestWatch.watch_watch_value, args=("/test-key", queue))
watcher.start()
time.sleep(1)
@@ -279,6 +279,16 @@ class TestWatch(EtcdIntegrationTest):
assert value == "new-test-value"
+ def watch_indexed_change_value(key, newValue):
+ c = etcd.Client(port=6001)
+ c.set(key, newValue)
+ c.get(key)
+
+ def watch_indexed_watch_value(key, index, queue):
+ c = etcd.Client(port=6001)
+ for i in range(0, 3):
+ queue.put(c.watch(key, index=index + i).value)
+
def test_watch_indexed(self):
"""INTEGRATION: Receive a watch event from other process, indexed"""
@@ -290,18 +300,8 @@ class TestWatch(EtcdIntegrationTest):
queue = multiprocessing.Queue()
- def change_value(key, newValue):
- c = etcd.Client(port=6001)
- c.set(key, newValue)
- c.get(key)
-
- def watch_value(key, index, queue):
- c = etcd.Client(port=6001)
- for i in range(0, 3):
- queue.put(c.watch(key, index=index + i).value)
-
proc = multiprocessing.Process(
- target=change_value,
+ target=TestWatch.watch_indexed_change_value,
args=(
"/test-key",
"test-value3",
@@ -309,7 +309,7 @@ class TestWatch(EtcdIntegrationTest):
)
watcher = multiprocessing.Process(
- target=watch_value, args=("/test-key", original_index, queue)
+ target=TestWatch.watch_indexed_watch_value, args=("/test-key", original_index, queue)
)
watcher.start()
@@ -325,6 +325,19 @@ class TestWatch(EtcdIntegrationTest):
watcher.join(timeout=5)
proc.join(timeout=5)
+ def watch_generator_change_value(key):
+ time.sleep(0.5)
+ c = etcd.Client(port=6001)
+ for i in range(0, 3):
+ c.set(key, "test-value%d" % i)
+ c.get(key)
+
+ def watch_generator_watch_value(key, queue):
+ c = etcd.Client(port=6001)
+ for i in range(0, 3):
+ event = next(c.eternal_watch(key)).value
+ queue.put(event)
+
def test_watch_generator(self):
"""INTEGRATION: Receive a watch event from other process (gen)"""
@@ -332,22 +345,9 @@ class TestWatch(EtcdIntegrationTest):
queue = multiprocessing.Queue()
- def change_value(key):
- time.sleep(0.5)
- c = etcd.Client(port=6001)
- for i in range(0, 3):
- c.set(key, "test-value%d" % i)
- c.get(key)
+ changer = multiprocessing.Process(target=TestWatch.watch_generator_change_value, args=("/test-key",))
- def watch_value(key, queue):
- c = etcd.Client(port=6001)
- for i in range(0, 3):
- event = next(c.eternal_watch(key)).value
- queue.put(event)
-
- changer = multiprocessing.Process(target=change_value, args=("/test-key",))
-
- watcher = multiprocessing.Process(target=watch_value, args=("/test-key", queue))
+ watcher = multiprocessing.Process(target=TestWatch.watch_generator_watch_value, args=("/test-key", queue))
watcher.start()
changer.start()
@@ -361,6 +361,16 @@ class TestWatch(EtcdIntegrationTest):
watcher.join(timeout=5)
changer.join(timeout=5)
+ def watch_indexed_generator_change_value(key, newValue):
+ c = etcd.Client(port=6001)
+ c.set(key, newValue)
+
+ def watch_indexed_generator_watch_value(key, index, queue):
+ c = etcd.Client(port=6001)
+ iterevents = c.eternal_watch(key, index=index)
+ for i in range(0, 3):
+ queue.put(next(iterevents).value)
+
def test_watch_indexed_generator(self):
"""INTEGRATION: Receive a watch event from other process, ixd, (2)"""
@@ -372,18 +382,8 @@ class TestWatch(EtcdIntegrationTest):
queue = multiprocessing.Queue()
- def change_value(key, newValue):
- c = etcd.Client(port=6001)
- c.set(key, newValue)
-
- def watch_value(key, index, queue):
- c = etcd.Client(port=6001)
- iterevents = c.eternal_watch(key, index=index)
- for i in range(0, 3):
- queue.put(next(iterevents).value)
-
proc = multiprocessing.Process(
- target=change_value,
+ target=TestWatch.watch_indexed_generator_change_value,
args=(
"/test-key",
"test-value3",
@@ -391,7 +391,7 @@ class TestWatch(EtcdIntegrationTest):
)
watcher = multiprocessing.Process(
- target=watch_value, args=("/test-key", original_index, queue)
+ target=TestWatch.watch_indexed_generator_watch_value, args=("/test-key", original_index, queue)
)
watcher.start()
--
2.53.0
@@ -11,6 +11,7 @@
etcd_3_4,
mock,
pyopenssl,
python,
}:
buildPythonPackage {
@@ -25,7 +26,12 @@ buildPythonPackage {
hash = "sha256-osiSeBdZBT3w9pJUBxD7cI9/2T7eiyj6M6+87T8bTj0=";
};
patches = [ ./remove-getheader-usage.patch ];
patches = [
./remove-getheader-usage.patch
]
++ lib.optionals (python.pythonAtLeast "3.14") [
./Fix-multiprocessing-errors-for-python-3.14.patch
];
build-system = [ setuptools ];
@@ -47,21 +47,16 @@
buildPythonPackage (finalAttrs: {
pname = "spacy";
version = "3.8.11";
version = "3.8.13";
pyproject = true;
src = fetchFromGitHub {
owner = "explosion";
repo = "spaCy";
tag = "release-v${finalAttrs.version}";
hash = "sha256-pLn3fq6SDstkRIv+1fj1yEGTlAd1IAiVgRu25CnEV8E=";
hash = "sha256-mjl4s3uUEdwPTvyq5HGDtxxREdnHAmUU8IpN/7+YxTc=";
};
postPatch = ''
substituteInPlace requirements.txt setup.cfg \
--replace-fail typer-slim typer
'';
build-system = [
cymem
cython
@@ -123,6 +118,10 @@ buildPythonPackage (finalAttrs: {
# Tests for presence of outdated (and thus missing) spacy models
# https://github.com/explosion/spaCy/issues/13856
"test_registry_entries"
# AssertionError: confection has different version in setup.cfg and in requirements.txt:
# >=1.3.2,<2.0.0 and >=1.1.0,<2.0.0 respectively
"test_build_dependencies"
];
pythonImportsCheck = [ "spacy" ];
@@ -1,26 +1,34 @@
{
lib,
buildPythonPackage,
fetchPypi,
fetchFromGitHub,
# build-system
cython,
setuptools,
# dependencies
catalogue,
# tests
mock,
numpy,
psutil,
pytest,
ruamel-yaml,
setuptools,
tornado,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "srsly";
version = "2.5.2";
version = "2.5.3";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-QJK8hDxxt1lcbJCgMCoZeFjFuf5DBn9irmpFvDuqHBk=";
src = fetchFromGitHub {
owner = "explosion";
repo = "srsly";
tag = "release-v${finalAttrs.version}";
hash = "sha256-dZuw0+tNIMseznGBQwIS6uICZEozkBWzF7FMQIo0Tbo=";
};
build-system = [
@@ -42,9 +50,9 @@ buildPythonPackage rec {
pythonImportsCheck = [ "srsly" ];
meta = {
changelog = "https://github.com/explosion/srsly/releases/tag/v${version}";
description = "Modern high-performance serialization utilities for Python";
homepage = "https://github.com/explosion/srsly";
changelog = "https://github.com/explosion/srsly/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
};
}
})
@@ -16,6 +16,7 @@
## wandb
buildPythonPackage,
replaceVars,
fetchpatch,
# build-system
hatchling,
@@ -75,12 +76,12 @@
}:
let
version = "0.25.0";
version = "0.25.1";
src = fetchFromGitHub {
owner = "wandb";
repo = "wandb";
tag = "v${version}";
hash = "sha256-ouJHMPcWiHn2p0mFatmC28xUmjzxsoDW9WBX6FzjyDc=";
hash = "sha256-jrHj+dNW/eUMcqT5XJbiAz1tlviVBhdtroJ8dA7GBr4=";
};
gpu-stats = rustPlatform.buildRustPackage {
@@ -107,7 +108,7 @@ let
};
};
wandb-core = buildGoModule rec {
wandb-core = buildGoModule {
pname = "wandb-core";
inherit src version;
@@ -162,6 +163,13 @@ buildPythonPackage (finalAttrs: {
(replaceVars ./hardcode-git-path.patch {
git = lib.getExe gitMinimal;
})
# https://github.com/wandb/wandb/pull/11552
(fetchpatch {
name = "add-protobuf-7-compatibility";
url = "https://github.com/wandb/wandb/commit/4ef09f3dd1ee408eb9194ea8b7feea2b1128839c.patch";
hash = "sha256-6weMJI51cWXz2mCxOGWYGrh0QCxtMGqz6HAVRF5b1xs=";
})
];
postPatch =
@@ -1,39 +1,26 @@
diff --git a/landfill/functional_tests/kfp/wandb_probe.py b/landfill/functional_tests/kfp/wandb_probe.py
index 86b18a438..23e237e3b 100644
--- a/landfill/functional_tests/kfp/wandb_probe.py
+++ b/landfill/functional_tests/kfp/wandb_probe.py
@@ -5,7 +5,7 @@ import subprocess
def wandb_probe_package():
if not os.environ.get("WB_PROBE_PACKAGE"):
return
- s, o = subprocess.getstatusoutput("git rev-parse HEAD")
+ s, o = subprocess.getstatusoutput("@git@ rev-parse HEAD")
if s:
return
wandb_local = f"git+https://github.com/wandb/wandb.git@{o}#egg=wandb"
diff --git a/wandb/cli/cli.py b/wandb/cli/cli.py
index 1453100cc..9dc468201 100644
index a87b17c96..21c851992 100644
--- a/wandb/cli/cli.py
+++ b/wandb/cli/cli.py
@@ -2531,7 +2531,7 @@ def restore(ctx, run, no_git, branch, project, entity):
@@ -2672,7 +2672,7 @@ def restore(ctx, run, no_git, branch, project, entity):
commit, json_config, patch_content, metadata = api.run_config(
project, run=run, entity=entity
)
- repo = metadata.get("git", {}).get("repo")
+ repo = metadata.get("@git@", {}).get("repo")
image = metadata.get("docker")
restore_message = """`wandb restore` needs to be run from the same git repository as the original run.
Run `git clone {}` and restore from there or pass the --no-git flag.""".format(repo)
@@ -2547,7 +2547,7 @@ Run `git clone {}` and restore from there or pass the --no-git flag.""".format(r
restore_message = f"""`wandb restore` needs to be run from the same git repository as the original run.
Run `git clone {repo}` and restore from there or pass the --no-git flag."""
@@ -2691,7 +2691,7 @@ Run `git clone {repo}` and restore from there or pass the --no-git flag."""
if commit and api.git.enabled:
if commit and git.enabled:
wandb.termlog(f"Fetching origin and finding commit: {commit}")
- subprocess.check_call(["git", "fetch", "--all"])
+ subprocess.check_call(["@git@", "fetch", "--all"])
try:
api.git.repo.commit(commit)
git.repo.commit(commit)
except ValueError:
@@ -2604,7 +2604,7 @@ Run `git clone {}` and restore from there or pass the --no-git flag.""".format(r
@@ -2744,7 +2744,7 @@ Run `git clone {repo}` and restore from there or pass the --no-git flag."""
# --reject is necessary or else this fails any time a binary file
# occurs in the diff
exit_code = subprocess.call(
@@ -59,6 +59,11 @@ buildPythonPackage (finalAttrs: {
"test_project_assets"
"test_project_git_dir_asset"
"test_project_git_file_asset"
# configparser.InterpolationMissingOptionError: Bad value substitution: option 'commands' in
# section 'project' contains an interpolation key 'vars.b.e' which is not a valid option name.
# Raw value: '[{"name": "x", "script": ["hello ${vars.a} ${vars.b.e}"]}]'
"test_project_config_interpolation"
];
passthru = {
+2
View File
@@ -4330,6 +4330,8 @@ self: super: with self; {
django-ratelimit = callPackage ../development/python-modules/django-ratelimit { };
django-recurrence = callPackage ../development/python-modules/django-recurrence { };
django-redis = callPackage ../development/python-modules/django-redis { };
django-registration = callPackage ../development/python-modules/django-registration { };