diff options
author | Alyssa Ross <hi@alyssa.is> | 2020-07-13 23:20:04 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2020-07-13 23:21:06 +0000 |
commit | a42c1d6d62656dcf9bd85de620f2e200a5ad22d8 (patch) | |
tree | 7d481fea9872f62a034452612be17f4494159baa /nixpkgs/pkgs/development/web/deno/update/update.ts | |
parent | 55f69a6b0e53c1c4b3e0396937c53bf5662b5519 (diff) | |
parent | 9480bae337095fd24f61380bce3174fdfe926a00 (diff) | |
download | nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.tar nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.tar.gz nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.tar.bz2 nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.tar.lz nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.tar.xz nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.tar.zst nixlib-a42c1d6d62656dcf9bd85de620f2e200a5ad22d8.zip |
Merge commit '9480bae337095fd24f61380bce3174fdfe926a00'
This is the last nixos-unstable release before 13b2903169f, which I'm a bit nervous about. So I want the update including that one to be as small as possible, hence going to this one first.
Diffstat (limited to 'nixpkgs/pkgs/development/web/deno/update/update.ts')
-rwxr-xr-x | nixpkgs/pkgs/development/web/deno/update/update.ts | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/web/deno/update/update.ts b/nixpkgs/pkgs/development/web/deno/update/update.ts new file mode 100755 index 000000000000..18d451480137 --- /dev/null +++ b/nixpkgs/pkgs/development/web/deno/update/update.ts @@ -0,0 +1,50 @@ +#!/usr/bin/env nix-shell +/* +#!nix-shell -i "deno run --allow-net --allow-run --allow-read --allow-write" -p deno git nix-prefetch +*/ +import { + commit, + getExistingVersion, + getLatestVersion, + logger, +} from "./common.ts"; +import { Architecture, updateDeps } from "./deps.ts"; +import { updateSrc } from "./src.ts"; + +const log = logger("update"); +// TODO: Getting current file position to more-safely point to nixpkgs root +const nixpkgs = Deno.cwd(); +// TODO: Read values from default.nix +const owner = "denoland"; +const repo = "deno"; +const denoDir = `${nixpkgs}/pkgs/development/web/${repo}`; +const src = `${denoDir}/default.nix`; +const deps = `${denoDir}/deps.nix`; +const architectures: Architecture[] = [ + { nix: "x86_64-linux", rust: "x86_64-unknown-linux-gnu" }, + { nix: "aarch64-linux", rust: "aarch64-unknown-linux-gnu" }, + { nix: "x86_64-darwin", rust: "x86_64-apple-darwin" }, +]; + +log("Updating deno"); + +log("Getting latest deno version"); +const version = await getLatestVersion(owner, repo); +const existingVersion = await getExistingVersion(src); +const trimVersion = version.substr(1); // Strip v from v0.0.0 +log("Latest version: ", trimVersion); +log("Extracted version:", existingVersion); +if (trimVersion === existingVersion) { + log("Version already matches latest, skipping..."); + Deno.exit(0); +} + +const tasks = [ + updateSrc(src, nixpkgs, version), + updateDeps(deps, owner, repo, version, architectures), +]; +await Promise.all(tasks); +log("Updating deno complete"); +log("Commiting"); +await commit(repo, existingVersion, trimVersion, [src, deps]); +log("Done"); |