mirror of
https://github.com/Swizec/thaw-carrots.git
synced 2024-09-29 10:45:37 +00:00
Take target temperature and pretty print
This commit is contained in:
parent
1789987e7d
commit
8b70bad42e
14
index.js
14
index.js
|
@ -1,5 +1,7 @@
|
||||||
const si = require("systeminformation");
|
const si = require("systeminformation");
|
||||||
const mri = require("mri");
|
const mri = require("mri");
|
||||||
|
const sll = require("single-line-log").stdout;
|
||||||
|
const kleur = require("kleur");
|
||||||
|
|
||||||
function collatz_step(n) {
|
function collatz_step(n) {
|
||||||
return n % 2 ? n / 2 : 3 * n + 1;
|
return n % 2 ? n / 2 : 3 * n + 1;
|
||||||
|
@ -16,17 +18,17 @@ function collatz(n) {
|
||||||
|
|
||||||
async function readTemp() {
|
async function readTemp() {
|
||||||
const temp = await si.cpuTemperature();
|
const temp = await si.cpuTemperature();
|
||||||
return temp.main;
|
return { main: temp.main, cores: temp.cores };
|
||||||
}
|
}
|
||||||
|
|
||||||
async function thawMyCarrots(targetTemp) {
|
async function thawMyCarrots(targetTemp) {
|
||||||
let temp = await readTemp();
|
let temp = await readTemp();
|
||||||
|
|
||||||
console.log(`Warming from ${temp} to ${targetTemp}`);
|
for (let n = 1; temp.main < targetTemp; n += 1) {
|
||||||
|
collatz(n);
|
||||||
for (let n = 1; temp < targetTemp; temp = await readTemp(), n += 1) {
|
// console.log(`Collatz takes ${collatz(n)} steps for n=${n}`);
|
||||||
console.log("Current temp", temp);
|
temp = await readTemp();
|
||||||
console.log(`Collatz takes ${collatz(n)} steps for n=${n}`);
|
sll("Current temp", kleur.bold.red(temp.main.toFixed(2)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
54
package-lock.json
generated
54
package-lock.json
generated
|
@ -4,16 +4,70 @@
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
|
||||||
|
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
|
||||||
|
},
|
||||||
|
"code-point-at": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
|
||||||
|
"requires": {
|
||||||
|
"number-is-nan": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"kleur": {
|
||||||
|
"version": "2.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/kleur/-/kleur-2.0.2.tgz",
|
||||||
|
"integrity": "sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ=="
|
||||||
|
},
|
||||||
"mri": {
|
"mri": {
|
||||||
"version": "1.1.1",
|
"version": "1.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/mri/-/mri-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/mri/-/mri-1.1.1.tgz",
|
||||||
"integrity": "sha1-haom09ru7t+A3FmEr5XMXKXK2fE="
|
"integrity": "sha1-haom09ru7t+A3FmEr5XMXKXK2fE="
|
||||||
},
|
},
|
||||||
|
"number-is-nan": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
|
||||||
|
"integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0="
|
||||||
|
},
|
||||||
"osx-temperature-sensor": {
|
"osx-temperature-sensor": {
|
||||||
"version": "1.0.3",
|
"version": "1.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/osx-temperature-sensor/-/osx-temperature-sensor-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/osx-temperature-sensor/-/osx-temperature-sensor-1.0.3.tgz",
|
||||||
"integrity": "sha512-iqgD538Qp6F/RzV+kDeDsoNlSZIFShuS92DE4Zw9VwronG5qWsQIrDzvd777Bv1/+quF0ItR5ooelonENN5AgQ=="
|
"integrity": "sha512-iqgD538Qp6F/RzV+kDeDsoNlSZIFShuS92DE4Zw9VwronG5qWsQIrDzvd777Bv1/+quF0ItR5ooelonENN5AgQ=="
|
||||||
},
|
},
|
||||||
|
"single-line-log": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/single-line-log/-/single-line-log-1.1.2.tgz",
|
||||||
|
"integrity": "sha1-wvg/Jzo+GhbtsJlWYdoO1e8DM2Q=",
|
||||||
|
"requires": {
|
||||||
|
"string-width": "^1.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
|
||||||
|
"requires": {
|
||||||
|
"code-point-at": "^1.0.0",
|
||||||
|
"is-fullwidth-code-point": "^1.0.0",
|
||||||
|
"strip-ansi": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "3.0.1",
|
||||||
|
"resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||||
|
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systeminformation": {
|
"systeminformation": {
|
||||||
"version": "3.45.7",
|
"version": "3.45.7",
|
||||||
"resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-3.45.7.tgz",
|
"resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-3.45.7.tgz",
|
||||||
|
|
|
@ -23,8 +23,10 @@
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/Swizec/thaw-carrots#readme",
|
"homepage": "https://github.com/Swizec/thaw-carrots#readme",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"kleur": "^2.0.2",
|
||||||
"mri": "^1.1.1",
|
"mri": "^1.1.1",
|
||||||
"osx-temperature-sensor": "^1.0.3",
|
"osx-temperature-sensor": "^1.0.3",
|
||||||
|
"single-line-log": "^1.1.2",
|
||||||
"systeminformation": "^3.45.7"
|
"systeminformation": "^3.45.7"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue