!FBuJyWXTGcGtHTPphC:nixos.org

Nix Rust

686 Members
Rust160 Servers

Load older messages


SenderMessageTime
12 May 2026
@emilazy:matrix.orgemilycould use importCargoLock for those14:18:10
@hexa:lossy.networkhexaI tried :D it has a git dep14:18:20
@emilazy:matrix.orgemilylovely14:18:29
@gsaurel:laas.frnim65shttpx or aiohttp can be tried quickly I guess14:18:37
@gsaurel:laas.frnim65sbut they may have the same issue, now or in a near future14:18:57
@hexa:lossy.networkhexaI tried httpx and the recursion chain is longer14:19:03
@gsaurel:laas.frnim65sat least they are pretty much dropin14:19:07
@hexa:lossy.networkhexaI did not try aiohttp because it does not have featre parity14:19:14
@hexa:lossy.networkhexaRedacted or Malformed Event14:19:22
@hexa:lossy.networkhexaby which I mean e.g. ALL_PROXY env var support14:19:57
@figsoda:matrix.orgfigsodai believe importCargoLock can handle that unless something changed in the 2 years i was gone14:20:28
@figsoda:matrix.orgfigsoda with outputHashes 14:20:50
@hexa:lossy.networkhexa I specify outputHash and it wants to fetch that and it results in an infinite recursioin 14:20:54
@hexa:lossy.networkhexaRedacted or Malformed Event14:21:00
@figsoda:matrix.orgfigsodado you have a wip branch perhaps i can take a look14:21:42
@hexa:lossy.networkhexa
error: infinite recursion encountered

note: trace involved the following derivations:
derivation 'python3.14-ast-serialize-0.3.0'
derivation 'cargo-vendor-dir'
derivation 'ruff_python_ast-0.0.0'
derivation 'cargo-1.95.0'
derivation 'auditable-cargo-bootstrap-1.95.0'
derivation 'cargo-auditable-bootstrap-0.7.2'
derivation 'cargo-auditable-bootstrap-0.7.2-vendor'
derivation 'fetch-cargo-vendor-util'
derivation 'python3-3.14.5-env'
derivation 'python3.14-charset-normalizer-3.4.7'
derivation 'python3.14-mypy-2.1.0'
14:22:15
@hexa:lossy.networkhexahttps://github.com/mweinelt/nixpkgs/tree/python-updates-wip14:23:56
@hexa:lossy.networkhexathe last two commits are the elevant ones14:24:17
@hexa:lossy.networkhexaRedacted or Malformed Event14:24:20
@hexa:lossy.networkhexayou can probably move to a simpler base14:24:30
@hexa:lossy.networkhexa anway, the chain is mypy -> charset_normalizer -> requests -> fetch-cargo-venor 14:25:01
@hexa:lossy.networkhexa and the loop is now ast-serialize -> mypyp -> .... 14:25:13
@hexa:lossy.networkhexaRedacted or Malformed Event14:25:31
@gsaurel:laas.frnim65sso we can bootstrap with a version that don't has mypy ?14:26:38
@gsaurel:laas.frnim65s* so we can bootstrap with a version that don't have mypy ?14:26:49
@hexa:lossy.networkhexaRedacted or Malformed Event14:27:29
@hexa:lossy.networkhexahm, without mypyc, indeed14:28:00
@hexa:lossy.networkhexa
diff --git a/pkgs/build-support/rust/fetch-cargo-vendor.nix b/pkgs/build-support/rust/fetch-cargo-vendor.nix
index 2802bf9e73f1..f97c270e731a 100644
--- a/pkgs/build-support/rust/fetch-cargo-vendor.nix
+++ b/pkgs/build-support/rust/fetch-cargo-vendor.nix
@@ -3,7 +3,7 @@
   stdenvNoCC,
   runCommand,
   writers,
-  python3Packages,
+  python3,
   cargo,
   gitMinimal,
   nix-prefetch-git,
@@ -11,6 +11,14 @@
 }:
 
 let
+  python = python3.override {
+    self = python;
+    packageOverrides = final: prev: {
+      charset-normalier = prev.charset-normalizer.override { withMypyc = false; };
+    };
+  };
+  python3Packages = python.pkgs;
+
   replaceWorkspaceValues = writers.writePython3Bin "replace-workspace-values" {
     libraries = with python3Packages; [
       tomli
diff --git a/pkgs/development/python-modules/charset-normalizer/default.nix b/pkgs/development/python-modules/charset-normalizer/default.nix
index 5137ceb0e83f..c3650a402f17 100644
--- a/pkgs/development/python-modules/charset-normalizer/default.nix
+++ b/pkgs/development/python-modules/charset-normalizer/default.nix
@@ -8,6 +8,7 @@
   pytestCheckHook,
   requests,
   setuptools,
+  withMypyc ? !isPyPy,
 }:
 
 buildPythonPackage rec {
@@ -30,9 +31,9 @@ buildPythonPackage rec {
   build-system = [
     setuptools
   ]
-  ++ lib.optional (!isPyPy) mypy;
+  ++ lib.optional (withMypyc) mypy;
 
-  env.CHARSET_NORMALIZER_USE_MYPYC = lib.optionalString (!isPyPy) "1";
+  env.CHARSET_NORMALIZER_USE_MYPYC = lib.optionalString (withMypyc) "1";
 
   nativeCheckInputs = [ pytestCheckHook ];
 
14:33:05
@hexa:lossy.networkhexaRedacted or Malformed Event14:33:10
@emilazy:matrix.orgemilywonder if it makes sense to RIIR the fetcher so that the cycle can be broken locally14:33:26

Show newer messages


Back to Room ListRoom Version: 6