var get = require("https").get; var parse = require("url").parse; var base, token, run_number, eldest = true; exports.init = function(url, auth, num) { base = url; token = auth; run_number = num; }; exports.should_stop = function(callback) { read(base + "/actions/runs?per_page=100", function(reply) { if (!reply || !Array.isArray(reply.workflow_runs)) return; var runs = reply.workflow_runs.filter(function(workflow) { return workflow.status != "completed"; }).sort(function(a, b) { return b.run_number - a.run_number; }); var found = false, remaining = 20; (function next() { if (!runs.length) return; var workflow = runs.pop(); if (workflow.event == "schedule" && workflow.run_number == run_number) found = true; read(workflow.jobs_url, function(reply) { if (!reply || !Array.isArray(reply.jobs)) return; if (!reply.jobs.every(function(job) { if (job.status == "completed") return true; remaining--; return found || workflow.event != "schedule"; })) return; if (remaining >= 0) { next(); } else { callback(); } }); })(); }); }; function read(url, callback) { var done = function(reply) { done = function() {}; callback(reply); }; var options = parse(url); options.headers = { "Authorization": "Token " + token, "User-Agent": "UglifyJS", }; get(options, function(response) { var chunks = []; response.setEncoding("utf8"); response.on("data", function(chunk) { chunks.push(chunk); }).on("end", function() { var reply; try { reply = JSON.parse(chunks.join("")) } catch (e) {} done(reply); }).on("error", function() { done(); }); }).on("error", function() { done(); }); } a href='/guix/log/gnu?id=01de17143c4830926af6f00f5233d1ba32d7038d'>gnu/packages/zig.scm
AgeCommit message (Expand)Author
2024-03-10gnu: clang: Move compiler-cpu-architectures to llvm-meta.scm....* gnu/packages/llvm.scm (clang-properties): Extract compiler-cpu-architectures and move ... * gnu/packages/llvm-meta.scm: ... to here. * gnu/packages/zig.scm (zig-0.9, zig-0.10)[properties]: Use clang-compiler-cpu-architectures. * gnu/local.mk (GNU_SYSTEM_MODULES): Register new file. Change-Id: Ie0bedbd6e2927eaa05024685cc66375ea278e4c2 Efraim Flashner