backfill 6.4.9 → 6.4.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -24,7 +24,7 @@ _export(exports, {
24
24
  return main;
25
25
  }
26
26
  });
27
- const _backfillutilsdotenv = require("backfill-utils-dotenv");
27
+ const _loadDotenv = require("./loadDotenv.js");
28
28
  const _backfilllogger = require("backfill-logger");
29
29
  const _backfillconfig = require("backfill-config");
30
30
  const _backfillcache = require("backfill-cache");
@@ -38,7 +38,7 @@ function _interop_require_default(obj) {
38
38
  };
39
39
  }
40
40
  // Load environment variables
41
- (0, _backfillutilsdotenv.loadDotenv)();
41
+ (0, _loadDotenv.loadDotenv)();
42
42
  async function backfill(config, buildCommand, hashSalt, logger) {
43
43
  const { cacheStorageConfig, name, mode, logFolder, packageRoot, producePerformanceLogs, validateOutput } = config;
44
44
  logger.setName(name);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { loadDotenv } from \"backfill-utils-dotenv\";\nimport { type Logger, makeLogger } from \"backfill-logger\";\nimport { createConfig, type Config } from \"backfill-config\";\nimport { isCustomProvider } from \"backfill-cache\";\nimport yargs from \"yargs\";\nimport {\n getRawBuildCommand,\n createBuildCommand,\n type BuildCommand,\n} from \"./commandRunner.js\";\nimport { initializeWatcher, closeWatcher } from \"./audit.js\";\nimport {\n put as put_api,\n fetch as fetch_api,\n computeHash,\n computeHashOfOutput,\n} from \"./api.js\";\n\nexport {\n createDefaultConfig,\n type Config,\n type ICacheStorage,\n} from \"backfill-config\";\n\n// Load environment variables\nloadDotenv();\n\nexport async function backfill(\n config: Config,\n buildCommand: BuildCommand,\n hashSalt: string,\n logger: Logger\n): Promise<void> {\n const {\n cacheStorageConfig,\n name,\n mode,\n logFolder,\n packageRoot,\n producePerformanceLogs,\n validateOutput,\n } = config;\n\n logger.setName(name);\n logger.setMode(mode, mode === \"READ_WRITE\" ? \"info\" : \"verbose\");\n logger.setCacheProvider(\n isCustomProvider(cacheStorageConfig)\n ? cacheStorageConfig.name || \"custom-storage-provider\"\n : cacheStorageConfig.provider\n );\n\n const createPackageHash = async () =>\n await computeHash(packageRoot, logger, hashSalt);\n const fetch = async (hash: string) =>\n await fetch_api(packageRoot, hash, logger, config);\n const run = async () => {\n try {\n await buildCommand();\n } catch (err) {\n throw new Error(`Command failed with the following error:\\n\\n${err}`);\n }\n };\n const put = async (hash: string) => {\n try {\n await put_api(packageRoot, hash, logger, config);\n } catch (err) {\n logger.error(\n `Failed to persist the cache with the following error:\\n\\n${err}`\n );\n }\n };\n\n switch (mode) {\n case \"READ_WRITE\": {\n const hash = await createPackageHash();\n if (!(await fetch(hash))) {\n await run();\n await put(hash);\n }\n\n break;\n }\n case \"READ_ONLY\": {\n const hash = await createPackageHash();\n if (!(await fetch(hash))) {\n await run();\n }\n\n break;\n }\n case \"WRITE_ONLY\": {\n await run();\n\n const hash = await createPackageHash();\n await put(hash);\n\n break;\n }\n case \"PASS\": {\n await run();\n break;\n }\n }\n\n if (validateOutput) {\n const hashOfOutput = await computeHashOfOutput(packageRoot, logger);\n logger.setHashOfOutput(hashOfOutput);\n }\n\n if (producePerformanceLogs) {\n await logger.toFile(logFolder);\n }\n}\n\nexport async function main(): Promise<void> {\n let logger = makeLogger(\"info\");\n const cwd = process.cwd();\n\n try {\n const config = createConfig(logger, cwd);\n const {\n clearOutput,\n internalCacheFolder,\n logFolder,\n logLevel,\n outputGlob,\n packageRoot,\n } = config;\n\n if (logLevel) {\n logger = makeLogger(logLevel);\n }\n\n const helpString = \"Backfills unchanged packages.\";\n\n const argv = yargs\n .strict()\n .usage(helpString)\n .alias(\"h\", \"help\")\n .version(false)\n .option(\"audit\", {\n description: \"Compare files changed with those cached\",\n type: \"boolean\",\n }).argv;\n\n const buildCommand = createBuildCommand(\n argv[\"_\"],\n clearOutput,\n outputGlob,\n logger\n );\n\n if (argv[\"audit\"]) {\n initializeWatcher(\n packageRoot,\n internalCacheFolder,\n logFolder,\n outputGlob,\n logger\n );\n }\n\n await backfill(config, buildCommand, getRawBuildCommand(), logger);\n\n if (argv[\"audit\"]) {\n await closeWatcher(logger);\n }\n } catch (err) {\n logger.error(err as any);\n process.exit(1);\n }\n}\n"],"names":["backfill","createDefaultConfig","main","loadDotenv","config","buildCommand","hashSalt","logger","cacheStorageConfig","name","mode","logFolder","packageRoot","producePerformanceLogs","validateOutput","setName","setMode","setCacheProvider","isCustomProvider","provider","createPackageHash","computeHash","fetch","hash","fetch_api","run","err","Error","put","put_api","error","hashOfOutput","computeHashOfOutput","setHashOfOutput","toFile","makeLogger","cwd","process","createConfig","clearOutput","internalCacheFolder","logLevel","outputGlob","helpString","argv","yargs","strict","usage","alias","version","option","description","type","createBuildCommand","initializeWatcher","getRawBuildCommand","closeWatcher","exit"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { loadDotenv } from \"./loadDotenv.js\";\nimport { type Logger, makeLogger } from \"backfill-logger\";\nimport { createConfig, type Config } from \"backfill-config\";\nimport { isCustomProvider } from \"backfill-cache\";\nimport yargs from \"yargs\";\nimport {\n getRawBuildCommand,\n createBuildCommand,\n type BuildCommand,\n} from \"./commandRunner.js\";\nimport { initializeWatcher, closeWatcher } from \"./audit.js\";\nimport {\n put as put_api,\n fetch as fetch_api,\n computeHash,\n computeHashOfOutput,\n} from \"./api.js\";\n\nexport {\n createDefaultConfig,\n type Config,\n type ICacheStorage,\n} from \"backfill-config\";\n\n// Load environment variables\nloadDotenv();\n\nexport async function backfill(\n config: Config,\n buildCommand: BuildCommand,\n hashSalt: string,\n logger: Logger\n): Promise<void> {\n const {\n cacheStorageConfig,\n name,\n mode,\n logFolder,\n packageRoot,\n producePerformanceLogs,\n validateOutput,\n } = config;\n\n logger.setName(name);\n logger.setMode(mode, mode === \"READ_WRITE\" ? \"info\" : \"verbose\");\n logger.setCacheProvider(\n isCustomProvider(cacheStorageConfig)\n ? cacheStorageConfig.name || \"custom-storage-provider\"\n : cacheStorageConfig.provider\n );\n\n const createPackageHash = async () =>\n await computeHash(packageRoot, logger, hashSalt);\n const fetch = async (hash: string) =>\n await fetch_api(packageRoot, hash, logger, config);\n const run = async () => {\n try {\n await buildCommand();\n } catch (err) {\n throw new Error(`Command failed with the following error:\\n\\n${err}`);\n }\n };\n const put = async (hash: string) => {\n try {\n await put_api(packageRoot, hash, logger, config);\n } catch (err) {\n logger.error(\n `Failed to persist the cache with the following error:\\n\\n${err}`\n );\n }\n };\n\n switch (mode) {\n case \"READ_WRITE\": {\n const hash = await createPackageHash();\n if (!(await fetch(hash))) {\n await run();\n await put(hash);\n }\n\n break;\n }\n case \"READ_ONLY\": {\n const hash = await createPackageHash();\n if (!(await fetch(hash))) {\n await run();\n }\n\n break;\n }\n case \"WRITE_ONLY\": {\n await run();\n\n const hash = await createPackageHash();\n await put(hash);\n\n break;\n }\n case \"PASS\": {\n await run();\n break;\n }\n }\n\n if (validateOutput) {\n const hashOfOutput = await computeHashOfOutput(packageRoot, logger);\n logger.setHashOfOutput(hashOfOutput);\n }\n\n if (producePerformanceLogs) {\n await logger.toFile(logFolder);\n }\n}\n\nexport async function main(): Promise<void> {\n let logger = makeLogger(\"info\");\n const cwd = process.cwd();\n\n try {\n const config = createConfig(logger, cwd);\n const {\n clearOutput,\n internalCacheFolder,\n logFolder,\n logLevel,\n outputGlob,\n packageRoot,\n } = config;\n\n if (logLevel) {\n logger = makeLogger(logLevel);\n }\n\n const helpString = \"Backfills unchanged packages.\";\n\n const argv = yargs\n .strict()\n .usage(helpString)\n .alias(\"h\", \"help\")\n .version(false)\n .option(\"audit\", {\n description: \"Compare files changed with those cached\",\n type: \"boolean\",\n }).argv;\n\n const buildCommand = createBuildCommand(\n argv[\"_\"],\n clearOutput,\n outputGlob,\n logger\n );\n\n if (argv[\"audit\"]) {\n initializeWatcher(\n packageRoot,\n internalCacheFolder,\n logFolder,\n outputGlob,\n logger\n );\n }\n\n await backfill(config, buildCommand, getRawBuildCommand(), logger);\n\n if (argv[\"audit\"]) {\n await closeWatcher(logger);\n }\n } catch (err) {\n logger.error(err as any);\n process.exit(1);\n }\n}\n"],"names":["backfill","createDefaultConfig","main","loadDotenv","config","buildCommand","hashSalt","logger","cacheStorageConfig","name","mode","logFolder","packageRoot","producePerformanceLogs","validateOutput","setName","setMode","setCacheProvider","isCustomProvider","provider","createPackageHash","computeHash","fetch","hash","fetch_api","run","err","Error","put","put_api","error","hashOfOutput","computeHashOfOutput","setHashOfOutput","toFile","makeLogger","cwd","process","createConfig","clearOutput","internalCacheFolder","logLevel","outputGlob","helpString","argv","yargs","strict","usage","alias","version","option","description","type","createBuildCommand","initializeWatcher","getRawBuildCommand","closeWatcher","exit"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function loadDotenv(): void;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "loadDotenv", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return loadDotenv;
9
+ }
10
+ });
11
+ const _dotenv = require("dotenv");
12
+ const _findup = /*#__PURE__*/ _interop_require_default(require("find-up"));
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ function loadDotenv() {
19
+ if (process.env.NODE_ENV === "test") {
20
+ return;
21
+ }
22
+ const path = _findup.default.sync(".env");
23
+ if (path) {
24
+ (0, _dotenv.config)({
25
+ path
26
+ });
27
+ }
28
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/loadDotenv.ts"],"sourcesContent":["import { config } from \"dotenv\";\nimport findUp from \"find-up\";\n\nexport function loadDotenv(): void {\n if (process.env.NODE_ENV === \"test\") {\n return;\n }\n\n const path = findUp.sync(\".env\");\n\n if (path) {\n config({ path });\n }\n}\n"],"names":["loadDotenv","process","env","NODE_ENV","path","findUp","sync","config"],"mappings":";;;;+BAGgBA;;;eAAAA;;;wBAHO;+DACJ;;;;;;AAEZ,SAASA;IACd,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,QAAQ;QACnC;IACF;IAEA,MAAMC,OAAOC,eAAM,CAACC,IAAI,CAAC;IAEzB,IAAIF,MAAM;QACRG,IAAAA,cAAM,EAAC;YAAEH;QAAK;IAChB;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "backfill",
3
- "version": "6.4.9",
3
+ "version": "6.4.10",
4
4
  "description": "Backfill CLI",
5
5
  "license": "MIT",
6
6
  "author": "Benjamin Weggersen <bewegger@microsoft.com>",
@@ -21,12 +21,12 @@
21
21
  },
22
22
  "dependencies": {
23
23
  "anymatch": "^3.1.3",
24
- "backfill-cache": "^5.12.4",
25
- "backfill-config": "^6.7.3",
26
- "backfill-hasher": "^6.7.4",
24
+ "backfill-cache": "^5.12.5",
25
+ "backfill-config": "^6.7.4",
26
+ "backfill-hasher": "^6.7.5",
27
27
  "backfill-logger": "^5.4.2",
28
- "backfill-utils-dotenv": "^5.3.3",
29
28
  "chokidar": "^3.6.0",
29
+ "dotenv": "^8.6.0",
30
30
  "execa": "^5.1.1",
31
31
  "find-up": "^5.0.0",
32
32
  "fs-extra": "^8.1.0",