diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix index 7749249695d..3a0583628f0 100644 --- a/pkgs/development/web/deno/default.nix +++ b/pkgs/development/web/deno/default.nix @@ -18,16 +18,16 @@ let in rustPlatform.buildRustPackage rec { pname = "deno"; - version = "1.3.0"; + version = "1.3.1"; src = fetchFromGitHub { owner = "denoland"; repo = pname; rev = "v${version}"; - sha256 = "163qvxggdv4mr1r1nab4s5n2b74bji0iil4r4nmp6n2ghssyf01h"; + sha256 = "1j5ajasng380p5a7nkk9ag5zp9ybwfz7b2z42lyk1wfg0pcd6j0r"; fetchSubmodules = true; }; - cargoSha256 = "11i00a92i2d6y2vj04wa6qbpsd351qcdy6a9ansq6n3928m9f2pk"; + cargoSha256 = "0ba7afk4n7k170cqwy0gjc53vz6bjc176s9w1wln6yfhh55fyw6x"; # Install completions post-install nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/development/web/deno/update/common.ts b/pkgs/development/web/deno/update/common.ts index 71e4d638f8d..d8956b21d16 100644 --- a/pkgs/development/web/deno/update/common.ts +++ b/pkgs/development/web/deno/update/common.ts @@ -8,7 +8,20 @@ const run = async (command: string, args: string[]) => { { cmd: [command, ...args], stdout: "piped", stderr: "piped" }, ); if (!(await cmd.status()).success) { - throw await cmd.stderrOutput().then((b) => decode(b)); + const error = await cmd.stderrOutput().then((b) => decode(b).trimEnd()); + // Known error we can ignore + if (error.includes("'allow-unsafe-native-code-during-evaluation'")) { + // Extract the target sha256 out of the error + const target = " got: sha256:"; + const match = error + .split("\n") + .find((l) => l.includes(target)) + ?.split(target)[1]; + if (typeof match !== "undefined") { + return match; + } + } + throw new Error(error); } return cmd.output().then((b) => decode(b).trimEnd()); };