{ "name": "balena-supervisor", "description": "This is balena's Supervisor, a program that runs on IoT devices and has the task of running user Apps (which are Docker containers), and updating them as the balena API informs it to.", "version": "16.12.2", "license": "Apache-2.0", "repository": { "type": "git", "url": "https://github.com/balena-os/balena-supervisor.git" }, "scripts": { "start": "./entry.sh", "build": "npm run clean && npm run release && webpack", "lint": "balena-lint -e ts -e js src/ test/ typings/ build-utils/", "test:build": "tsc --noEmit && tsc --noEmit --project tsconfig.js.json", "test:unit": "mocha --config test/unit/.mocharc.js", "test:integration": "find test/integration -name *.spec.ts | xargs -n 1 -I {} sh -c 'mocha --config test/integration/.mocharc.js {} || exit 255'", "test:integration:single": "find test/integration -name *.spec.ts | xargs mocha --config test/integration/.mocharc.js", "test:legacy": "mocha --config test/legacy/.mocharc.js", "test:node": "npm run test:unit && npm run test:integration && npm run test:legacy", "test:env": "ARCH=$(./build-utils/detect-arch.sh) docker compose -f docker-compose.test.yml -f docker-compose.dev.yml run --build --rm sut sh; npm run compose:down", "test:compose": "(ARCH=$(./build-utils/detect-arch.sh) docker compose -f docker-compose.yml -f docker-compose.test.yml run --build --rm sut || docker compose logs); npm run compose:down", "test": "npm run lint && npm run test:build && npm run test:unit", "compose:down": "docker compose -f docker-compose.yml -f docker-compose.test.yml down --volumes", "prettify": "balena-lint -e ts -e js --fix src/ test/ typings/ build-utils/", "release": "tsc --project tsconfig.release.json && mv build/src/* build", "sync": "ts-node --files sync/sync.ts", "clean": "rimraf build", "install-native-deps": "./build-utils/install-dbus.sh", "flowzone-preinstall": "npm run install-native-deps", "prepare": "node -e \"try { (await import('husky')).default() } catch (e) { if (e.code !== 'ERR_MODULE_NOT_FOUND') throw e }\" --input-type module" }, "private": true, "dependencies": { "@balena/systemd": "^0.5.0", "sqlite3": "^5.1.6" }, "engines": { "node": ">=20 <23", "npm": ">=10" }, "devDependencies": { "@balena/compose": "^6.0.0", "@balena/contrato": "^0.12.0", "@balena/es-version": "^1.0.3", "@balena/lint": "^8.0.2", "@balena/sbvr-types": "^9.1.0", "@types/bluebird": "^3.5.42", "@types/chai": "^4.3.20", "@types/chai-as-promised": "^8.0.1", "@types/chai-like": "^1.1.3", "@types/chai-things": "0.0.38", "@types/common-tags": "^1.8.4", "@types/dockerode": "^3.3.28", "@types/express": "^4.17.21", "@types/json-mask": "^2.0.3", "@types/JSONStream": "npm:@types/jsonstream@^0.8.33", "@types/lodash": "^4.17.0", "@types/memoizee": "^0.4.11", "@types/mocha": "^10.0.6", "@types/morgan": "^1.9.9", "@types/node": "^22.10.6", "@types/request": "^2.48.12", "@types/rewire": "^2.5.30", "@types/rwlock": "^5.0.6", "@types/semver": "^7.5.8", "@types/shell-quote": "^1.7.5", "@types/sinon": "^17.0.3", "@types/sinon-chai": "^3.2.12", "@types/supertest": "^6.0.2", "@types/tar-stream": "^3.1.3", "@types/webpack": "^5.28.5", "@types/yargs": "^17.0.32", "balena-auth": "^6.0.1", "balena-register-device": "^9.0.4", "balena-request": "^14.0.1", "blinking": "^1.0.1", "bluebird": "^3.7.2", "chai": "^4.5.0", "chai-as-promised": "^8.0.1", "chai-like": "^1.1.3", "chai-things": "^0.2.0", "chokidar": "^4.0.3", "common-tags": "^1.8.0", "copy-webpack-plugin": "^12.0.0", "deep-object-diff": "1.1.0", "docker-delta": "^4.1.0", "docker-progress": "^5.2.3", "dockerode": "^4.0.2", "duration-js": "^4.0.0", "express": "^4.21.2", "fork-ts-checker-webpack-plugin": "^9.0.2", "fp-ts": "^2.16.5", "got": "14.4.1", "husky": "^9.1.7", "io-ts": "2.2.20", "io-ts-reporters": "^2.0.1", "json-mask": "^2.0.0", "JSONStream": "^1.3.5", "knex": "^3.1.0", "lint-staged": "^15.4.3", "livepush": "^3.5.1", "lodash": "^4.17.21", "mdns-resolver": "1.1.0", "memoizee": "^0.4.14", "mocha": "^10.4.0", "mocha-pod": "^2.0.10", "morgan": "^1.10.0", "network-checker": "^1.0.2", "nock": "^13.5.6", "node-loader": "^2.1.0", "nodemon": "^3.1.9", "pinejs-client-core": "^7.2.0", "pinejs-client-request": "^8.0.1", "pretty-ms": "^7.0.1", "request": "^2.88.2", "resumable-request": "^2.0.1", "rewire": "^7.0.0", "rimraf": "^5.0.10", "rwlock": "^5.0.0", "semver": "7.6.3", "shell-quote": "^1.8.2", "sinon": "^18.0.0", "sinon-chai": "^3.7.0", "strict-event-emitter-types": "^2.0.0", "supertest": "^7.0.0", "systeminformation": "^5.25.11", "tar-stream": "^3.1.7", "terser-webpack-plugin": "^5.3.11", "ts-loader": "^9.5.2", "ts-node": "^10.0.0", "tsconfig-paths": "^4.2.0", "typed-error": "^3.2.1", "typescript": "^5.7.3", "webpack": "^5.97.1", "webpack-cli": "^5.1.4", "winston": "^3.17.0", "yargs": "^17.7.2" }, "versionist": { "publishedAt": "2025-02-11T01:04:23.262Z" } }