backfill 6.3.1 → 6.4.0

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/README.md CHANGED
@@ -2,25 +2,21 @@
2
2
 
3
3
  A JavaScript caching library for reducing build time.
4
4
 
5
+ > ⚠️ As of 2025, `backfill` is primarily used as the caching layer for
6
+ > [`lage`](https://www.npmjs.com/package/lage). Most information about
7
+ > [options](#options) and [remote cache setup](#set-up-remote-cache) also
8
+ > applies to `lage`'s `cacheOptions` configuration.
9
+
5
10
  - **🔌 Easy to install**: Simply wrap your build commands inside
6
11
  `backfill -- [command]`
7
12
  - **☁️ Remote cache**: Store your cache on Azure Blob or as an npm package
8
13
  - **⚙️ Fully configurable**: Smart defaults with cross-package and per-package
9
14
  configuration and environment variable overrides
10
15
 
11
- _backfill is under active development and should probably not be used in
12
- production, yet. We will initially focus on stability improvements. We will look
13
- into various optimization strategies, adding more customization, and introducing
14
- an API for only running scripts in packages that have changed and skipping
15
- others altogether._
16
-
17
- _Current prerequisites:_
16
+ _Prerequisites:_
18
17
 
19
18
  - git
20
- - yarn.lock and yarn workspaces (for optimized hashing)
21
-
22
- These prerequisites can easily be loosened to make backfill work with npm, Rush,
23
- and Lerna.
19
+ - package manager with lock file (for optimized hashing)
24
20
 
25
21
  ## Why
26
22
 
@@ -37,14 +33,6 @@ Backfill is based on two concepts:
37
33
  cache. Otherwise, it will run the build command and persist the output to the
38
34
  cache.
39
35
 
40
- ## Install
41
-
42
- Install backfill using yarn:
43
-
44
- ```
45
- $ yarn add --dev backfill
46
- ```
47
-
48
36
  ## Usage - CLI
49
37
 
50
38
  ```
@@ -72,67 +60,119 @@ to all file changes in your repo (it assumes you're in a git repo) while running
72
60
  the build command and then report on any files that got changed outside of the
73
61
  cache folder.
74
62
 
75
- ### Configuration
63
+ ## Configuration
76
64
 
77
- Backfill will look for `backfill.config.js` in the package it was called from
78
- and among parent folders recursively and then combine those configs together.
65
+ Backfill will look for `backfill.config.js` (CJS only) in the package it was
66
+ called from and parent folders, then combine those configs together.
79
67
 
80
68
  To configure backfill, simply export a config object with the properties you
81
- wish to override:
69
+ wish to override. All properties in are optional in the config file.
82
70
 
83
71
  ```js
84
- module.exports = {
72
+ /** @type {Partial<import("backfill").Config>} */
73
+ const config = {
85
74
  cacheStorageConfig: {
86
75
  provider: "azure-blob",
87
76
  options: { ... }
88
- }
77
+ },
78
+ outputGlob: ["lib/**/*", "dist/bundles/**/*"]
89
79
  };
80
+ module.exports = config;
90
81
  ```
91
82
 
92
- The default configuration object is:
83
+ ### Options
93
84
 
94
- ```js
95
- {
96
- cacheStorageConfig: { provider: "local" },
97
- clearOutputFolder: false,
98
- internalCacheFolder: "node_modules/.cache/backfill",
99
- logFolder: "node_modules/.cache/backfill",
100
- logLevel: "info",
101
- mode: "READ_WRITE",
102
- name: "[name-of-package]",
103
- outputGlob: ["lib/**"],
104
- packageRoot: "path/to/package",
105
- producePerformanceLogs: false,
106
- validateOutput: false
107
- }
108
- ```
85
+ Notable options:
109
86
 
110
- The `outputGlob` is a list of globs describing the files you want to cache.
111
- `outputGlob` should be expressed as a relative path from the root of each
112
- package. If you want to cache `package-a/lib`, for instance, you'd write
113
- `outputGlob: ["lib/**"]`. If you also want to cache the `pacakge-a/dist/bundles`
114
- folder, you'd write `outputGlob: ["lib/**", "dist/bundles/**"]`.
87
+ - `outputGlob` (`string[]`): A list of glob patterns for the built/generated
88
+ files that should be hashed and cached, relative to the root of each package.
89
+ For example, if you want to cache `package-a/lib` and
90
+ `package-a/dist/bundles`, you'd write
91
+ `"outputGlob: ["lib/**/*", "dist/bundles/**/*"]`.
92
+ - `cacheStorageConfig`: See [set up remote cache](#set-up-remote-cache) below.
115
93
 
116
- The configuration type is:
94
+ All options:
117
95
 
118
96
  ```ts
119
97
  export type Config = {
98
+ /**
99
+ * Glob patterns for the built/generated files that should be hashed and
100
+ * cached, relative to the root of each package. (see example above)
101
+ *
102
+ * Defaults to `["lib/**"]`.
103
+ */
104
+ outputGlob: string[];
105
+
106
+ /**
107
+ * Cache storage provider name and potentially configuration.
108
+ * See below for details.
109
+ * @default { provider: "local" }
110
+ */
120
111
  cacheStorageConfig: CacheStorageConfig;
121
- clearOutputFolder: boolean;
112
+
113
+ /**
114
+ * Whether to delete the `outputGlob` files on completion.
115
+ * @default false
116
+ */
117
+ clearOutput: boolean;
118
+
119
+ /**
120
+ * Absolute path to local cache folder.
121
+ * @default "[packageRoot]/node_modules/.cache/backfill"
122
+ */
122
123
  internalCacheFolder: string;
124
+
125
+ /**
126
+ * Absolute path to local log folder.
127
+ * @default "[packageRoot]/node_modules/.cache/backfill"
128
+ */
123
129
  logFolder: string;
124
- logLevel: LogLevels;
125
- mode: "READ_ONLY" | "WRITE_ONLY" | "READ_WRITE" | "PASS";
130
+
131
+ /**
132
+ * Log level.
133
+ * @default "info"
134
+ */
135
+ logLevel: "silly" | "verbose" | "info" | "warn" | "error" | "mute";
136
+
137
+ /**
138
+ * Name of the package, used for logging and performance reports.
139
+ * Defaults to name from `package.json`.
140
+ */
126
141
  name: string;
127
- outputGlob: string[];
142
+
143
+ /**
144
+ * Cache operation mode.
145
+ * @default "READ_WRITE"
146
+ */
147
+ mode: "READ_ONLY" | "WRITE_ONLY" | "READ_WRITE" | "PASS";
148
+
149
+ /**
150
+ * Package root path.
151
+ * Defaults to searching for `package.json` in the current working directory.
152
+ */
128
153
  packageRoot: string;
129
- performanceReportName?: string;
154
+
155
+ /**
156
+ * If true, write performance logs to `logFolder`.
157
+ * @default false
158
+ */
130
159
  producePerformanceLogs: boolean;
160
+
161
+ /**
162
+ * If true, write the hash of the output files to the performance report.
163
+ * @default false
164
+ */
131
165
  validateOutput: boolean;
166
+
167
+ /**
168
+ * Compute hashes to only cache changed files.
169
+ * @default false
170
+ */
171
+ incrementalCaching: boolean;
132
172
  };
133
173
  ```
134
174
 
135
- #### Environment variable
175
+ ### Environment variables
136
176
 
137
177
  You can override configuration with environment variables. Backfill will also
138
178
  look for a `.env`-file in the root of your repository, and load those into the
@@ -141,16 +181,28 @@ to your remote cache, or if you want to commit a read-only cache access key in
141
181
  the repo and override with a write and read access key in the PR build, for
142
182
  instance.
143
183
 
144
- See `getEnvConfig()` in
145
- [`./packages/config/src/envConfig.ts`](https://github.com/microsoft/backfill/blob/master/packages/config/src/envConfig.ts#L15).
184
+ - `BACKFILL_CACHE_PROVIDER`: Cache provider name
185
+ (`Config.cacheStorageConfig.provider`)
186
+ - `BACKFILL_CACHE_PROVIDER_OPTIONS`: Cache provider options (the rest of
187
+ `Config.cacheStorageConfig`)
188
+ - For other `Config` properties, `BACKFILL_*` snake case version of option, e.g.
189
+ `BACKFILL_LOG_LEVEL` for `Config.logLevel`
146
190
 
147
191
  ## Set up remote cache
148
192
 
149
- ### Microsoft Azure Blob Storage
193
+ Backfill supports multiple cache storage providers:
150
194
 
151
- To cache to a Microsoft Azure Blob Storage you need to provide a connection
195
+ - Local folder (`local`), the default option
196
+ - [Azure blob storage (`azure-blob`)](#azure-blob-storage)
197
+ - [NPM package (`npm`)](#npm-package)
198
+ - [Skip cache locally (`local-skip`)](#skipping-cache-locally)
199
+ - [Custom (`custom`)](#custom-storage-providers)
200
+
201
+ ### Azure Blob Storage
202
+
203
+ To cache to Microsoft Azure Blob Storage, you need to provide a connection
152
204
  string and the container name. If you are configuring via `backfill.config.js`,
153
- you can use the following syntax:
205
+ use the following syntax:
154
206
 
155
207
  ```js
156
208
  module.exports = {
@@ -186,31 +238,22 @@ module.exports = {
186
238
 
187
239
  ```
188
240
 
189
- #### Options
190
-
191
- <dl>
192
- <dt>connectionString</dt>
193
- <dd>retrieve this from the Azure Portal interface</dd>
241
+ #### `azure-blob` options
194
242
 
195
- <dt>container</dt>
196
- <dd>the name of the blob storage container</dd>
243
+ - `connectionString`: retrieve this from the Azure Portal interface
244
+ - `container`: the name of the blob storage container
245
+ - `maxSize` (optional): max size of a single package cache, in the number of
246
+ bytes
247
+ - `credential` (optional): one of the credential types from `@azure/identity`.
197
248
 
198
- <dt>maxSize (<em>optional</em>)</dt>
199
- <dd>
200
- max size of a single package cache, in the number of bytes
201
- </dd>
202
- </dl>
203
-
204
- You can also configure Microsoft Azure Blob Storage using environment variables.
249
+ You can also use environment variables for configuration.
205
250
 
206
251
  ```
207
-
208
252
  BACKFILL_CACHE_PROVIDER="azure-blob"
209
253
  BACKFILL_CACHE_PROVIDER_OPTIONS='{"connectionString":"...","container":"..."}'
210
-
211
254
  ```
212
255
 
213
- ### Npm package
256
+ ### NPM package
214
257
 
215
258
  To cache to an NPM package you need to provide a package name and the registry
216
259
  URL of your package feed. This feed should probably be private. If you are
@@ -274,35 +317,34 @@ storage strategy:
274
317
  BACKFILL_CACHE_PROVIDER="local-skip"
275
318
  ```
276
319
 
277
- ## Custom storage providers
320
+ ### Custom storage providers
278
321
 
279
- It is also possible to give backfill a custom storage provider altogether. This
280
- will give the ultimate flexibility in how to handle cache fetching and putting.
322
+ It is also possible to use a custom storage provider. This allows ultimate
323
+ flexibility in how to handle cache fetching and putting.
281
324
 
282
325
  Configure the custom cache provider this way:
283
326
 
284
327
  ```js
285
- // CustomStorageProvider.ts
286
- class CustomStorageProvider implements ICacheStorage {
287
- constructor(providerOptions: any, logger: Logger, cwd: string) {
328
+ // @ts-check
329
+ // See the types for details of the signatures
330
+ /** @implements {import("backfill").ICacheStorage} */
331
+ class CustomStorageProvider {
332
+ constructor(providerOptions, logger, cwd) {
288
333
  // do what is needed in regards to the options
289
334
  }
290
335
 
291
- async fetch(hash: string) {
336
+ async fetch(hash) {
292
337
  // some fetch logic
293
338
  }
294
339
 
295
- async put(hash: string, filesToCache: string[]) {
340
+ async put(hash, filesToCache) {
296
341
  // some putting logic
297
342
  }
298
343
  }
299
344
 
300
- module.exports.CustomStorageProvider = CustomStorageProvider;
301
-
302
- // backfill configuration
303
- const CustomStorageProvider = require("./custom-storage-provider");
304
-
305
- module.exports = {
345
+ // backfill.config.js
346
+ /** @type {Partial<import("backfill").Config>} */
347
+ const config = {
306
348
  cacheStorageConfig: {
307
349
  provider: (logger, cwd) =>
308
350
  new CustomStorageProvider(
@@ -315,12 +357,13 @@ module.exports = {
315
357
  ),
316
358
  },
317
359
  };
360
+ module.exports = config;
318
361
  ```
319
362
 
320
363
  ## API
321
364
 
322
- Backfill provides an API, this allows for more complex scenarios, and
323
- performance optimizations.
365
+ Backfill provides an API to support more complex scenarios and performance
366
+ optimizations.
324
367
 
325
368
  ```js
326
369
  const backfill = require("backfill/lib/api");
@@ -338,9 +381,8 @@ if (!fetchSuccess) {
338
381
  }
339
382
  ```
340
383
 
341
- ## Performance Logs
384
+ ## Performance logs
342
385
 
343
- You can optionally output performance logs to disk. If turned on, backfill will
344
- output a log file after each run with performance metrics. Each log file is
345
- formatted as a JSON file. You can turn performance logging by setting
346
- `producePerformanceLogs: true` in `backfill.config.js`.
386
+ Backfill provides the option to output a JSON log file after each run with
387
+ performance metrics. Enable this by setting `producePerformanceLogs: true` in
388
+ `backfill.config.js`.
package/lib/api.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  /// <reference types="node" />
2
- import { Writable } from "stream";
3
- import { Config } from "backfill-config";
4
- import { Logger, LogLevel } from "backfill-logger";
2
+ import type { Writable } from "stream";
3
+ import { type Config, type ICacheStorage } from "backfill-config";
4
+ import { type Logger, type LogLevel } from "backfill-logger";
5
+ export type { Config, ICacheStorage };
5
6
  export declare function makeLogger(logLevel: LogLevel, stdout: Writable, stderr: Writable): Logger;
6
7
  export declare function computeHash(cwd: string, logger: Logger, hashSalt?: string, config?: Pick<Config, "packageRoot">): Promise<string>;
7
8
  export declare function computeHashOfOutput(cwd: string, logger: Logger, config?: Pick<Config, "packageRoot">): Promise<string>;
package/lib/api.js CHANGED
@@ -62,4 +62,4 @@ async function put(cwd, hash, logger, config) {
62
62
  await cacheStorage.put(hash, outputGlob);
63
63
  }
64
64
  exports.put = put;
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyQkFBeUI7QUFFekIscURBQXVEO0FBQ3ZELHFEQUt5QjtBQUN6QixxREFBeUM7QUFDekMsbURBQXlEO0FBRXpELFNBQVMsV0FBVyxDQUFDLE1BQWdCLEVBQUUsTUFBZ0I7SUFDckQsT0FBTztRQUNMLElBQUksQ0FBQyxHQUFHLElBQWM7WUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQUcsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxJQUFjO1lBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFHLENBQUMsQ0FBQztRQUNyQyxDQUFDO1FBQ0QsS0FBSyxDQUFDLEdBQUcsSUFBYztZQUNyQixNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBRyxDQUFDLENBQUM7UUFDckMsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUN4QixRQUFrQixFQUNsQixNQUFnQixFQUNoQixNQUFnQjtJQUVoQixPQUFPLElBQUEsNEJBQWtCLEVBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFORCxnQ0FNQztBQUVNLEtBQUssVUFBVSxXQUFXLENBQy9CLEdBQVcsRUFDWCxNQUFjLEVBQ2QsUUFBaUIsRUFDakIsTUFBb0M7SUFFcEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFBLDhCQUFZLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLHdCQUFNLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVuRCxNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7SUFDNUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBZEQsa0NBY0M7QUFFTSxLQUFLLFVBQVUsbUJBQW1CLENBQ3ZDLEdBQVcsRUFDWCxNQUFjLEVBQ2QsTUFBb0M7SUFFcEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFBLDhCQUFZLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLHdCQUFNLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuRCxNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QyxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFaRCxrREFZQztBQUVNLEtBQUssVUFBVSxLQUFLLENBQ3pCLEdBQVcsRUFDWCxJQUFZLEVBQ1osTUFBYyxFQUNkLE1BR0M7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsTUFBTSxHQUFHLElBQUEsOEJBQVksRUFBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FDcEM7SUFDRCxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsR0FDbkUsTUFBTSxDQUFDO0lBQ1QsTUFBTSxZQUFZLEdBQUcsSUFBQSx3Q0FBdUIsRUFDMUMsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixNQUFNLEVBQ04sR0FBRyxFQUNILGtCQUFrQixDQUNuQixDQUFDO0lBQ0YsTUFBTSxLQUFLLEdBQUcsTUFBTSxZQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQXZCRCxzQkF1QkM7QUFFTSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUFXLEVBQ1gsSUFBWSxFQUNaLE1BQWMsRUFDZCxNQU1DO0lBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFBLDhCQUFZLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsTUFBTSxFQUNKLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLGtCQUFrQixHQUNuQixHQUFHLE1BQU0sQ0FBQztJQUNYLE1BQU0sWUFBWSxHQUFHLElBQUEsd0NBQXVCLEVBQzFDLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsTUFBTSxFQUNOLEdBQUcsRUFDSCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNGLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQTdCRCxrQkE2QkMifQ==
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyQkFBeUI7QUFFekIscURBQWdGO0FBQ2hGLHFEQUt5QjtBQUN6QixxREFBeUM7QUFDekMsbURBQXlEO0FBSXpELFNBQVMsV0FBVyxDQUFDLE1BQWdCLEVBQUUsTUFBZ0I7SUFDckQsT0FBTztRQUNMLElBQUksQ0FBQyxHQUFHLElBQWM7WUFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFFBQUcsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxJQUFjO1lBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFHLENBQUMsQ0FBQztRQUNyQyxDQUFDO1FBQ0QsS0FBSyxDQUFDLEdBQUcsSUFBYztZQUNyQixNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBRyxDQUFDLENBQUM7UUFDckMsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IsVUFBVSxDQUN4QixRQUFrQixFQUNsQixNQUFnQixFQUNoQixNQUFnQjtJQUVoQixPQUFPLElBQUEsNEJBQWtCLEVBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFORCxnQ0FNQztBQUVNLEtBQUssVUFBVSxXQUFXLENBQy9CLEdBQVcsRUFDWCxNQUFjLEVBQ2QsUUFBaUIsRUFDakIsTUFBb0M7SUFFcEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFBLDhCQUFZLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLHdCQUFNLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVuRCxNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7SUFDNUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBZEQsa0NBY0M7QUFFTSxLQUFLLFVBQVUsbUJBQW1CLENBQ3ZDLEdBQVcsRUFDWCxNQUFjLEVBQ2QsTUFBb0M7SUFFcEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFBLDhCQUFZLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUMvQixNQUFNLE1BQU0sR0FBRyxJQUFJLHdCQUFNLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuRCxNQUFNLElBQUksR0FBRyxNQUFNLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QyxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFaRCxrREFZQztBQUVNLEtBQUssVUFBVSxLQUFLLENBQ3pCLEdBQVcsRUFDWCxJQUFZLEVBQ1osTUFBYyxFQUNkLE1BR0M7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsTUFBTSxHQUFHLElBQUEsOEJBQVksRUFBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FDcEM7SUFDRCxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsR0FDbkUsTUFBTSxDQUFDO0lBQ1QsTUFBTSxZQUFZLEdBQUcsSUFBQSx3Q0FBdUIsRUFDMUMsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixNQUFNLEVBQ04sR0FBRyxFQUNILGtCQUFrQixDQUNuQixDQUFDO0lBQ0YsTUFBTSxLQUFLLEdBQUcsTUFBTSxZQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQXZCRCxzQkF1QkM7QUFFTSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUFXLEVBQ1gsSUFBWSxFQUNaLE1BQWMsRUFDZCxNQU1DO0lBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFBLDhCQUFZLEVBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsTUFBTSxFQUNKLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsVUFBVSxFQUNWLGtCQUFrQixHQUNuQixHQUFHLE1BQU0sQ0FBQztJQUNYLE1BQU0sWUFBWSxHQUFHLElBQUEsd0NBQXVCLEVBQzFDLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsTUFBTSxFQUNOLEdBQUcsRUFDSCxrQkFBa0IsQ0FDbkIsQ0FBQztJQUNGLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQTdCRCxrQkE2QkMifQ==
package/lib/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { Logger } from "backfill-logger";
2
- import { Config } from "backfill-config";
3
- export { createDefaultConfig } from "backfill-config";
1
+ import { type Logger } from "backfill-logger";
2
+ import { type Config } from "backfill-config";
4
3
  import { BuildCommand } from "./commandRunner";
4
+ export { createDefaultConfig, type Config, type ICacheStorage, } from "backfill-config";
5
5
  export declare function backfill(config: Config, buildCommand: BuildCommand, hashSalt: string, logger: Logger): Promise<void>;
6
6
  export declare function main(): Promise<void>;
7
7
  //# sourceMappingURL=index.d.ts.map
package/lib/index.js CHANGED
@@ -4,16 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.main = exports.backfill = exports.createDefaultConfig = void 0;
7
- const yargs_1 = __importDefault(require("yargs"));
8
7
  const backfill_utils_dotenv_1 = require("backfill-utils-dotenv");
9
8
  const backfill_logger_1 = require("backfill-logger");
10
9
  const backfill_config_1 = require("backfill-config");
11
- var backfill_config_2 = require("backfill-config");
12
- Object.defineProperty(exports, "createDefaultConfig", { enumerable: true, get: function () { return backfill_config_2.createDefaultConfig; } });
13
10
  const backfill_cache_1 = require("backfill-cache");
11
+ const yargs_1 = __importDefault(require("yargs"));
14
12
  const commandRunner_1 = require("./commandRunner");
15
13
  const audit_1 = require("./audit");
16
14
  const api_1 = require("./api");
15
+ var backfill_config_2 = require("backfill-config");
16
+ Object.defineProperty(exports, "createDefaultConfig", { enumerable: true, get: function () { return backfill_config_2.createDefaultConfig; } });
17
17
  // Load environment variables
18
18
  (0, backfill_utils_dotenv_1.loadDotenv)();
19
19
  async function backfill(config, buildCommand, hashSalt, logger) {
@@ -111,4 +111,4 @@ async function main() {
111
111
  }
112
112
  }
113
113
  exports.main = main;
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsa0RBQTBCO0FBRTFCLGlFQUFtRDtBQUNuRCxxREFBcUQ7QUFDckQscURBQXVEO0FBQ3ZELG1EQUFzRDtBQUE3QyxzSEFBQSxtQkFBbUIsT0FBQTtBQUU1QixtREFBa0Q7QUFDbEQsbURBSXlCO0FBQ3pCLG1DQUEwRDtBQUMxRCwrQkFLZTtBQUVmLDZCQUE2QjtBQUM3QixJQUFBLGtDQUFVLEdBQUUsQ0FBQztBQUVOLEtBQUssVUFBVSxRQUFRLENBQzVCLE1BQWMsRUFDZCxZQUEwQixFQUMxQixRQUFnQixFQUNoQixNQUFjO0lBRWQsTUFBTSxFQUNKLGtCQUFrQixFQUNsQixJQUFJLEVBQ0osSUFBSSxFQUNKLFNBQVMsRUFDVCxXQUFXLEVBQ1gsc0JBQXNCLEVBQ3RCLGNBQWMsR0FDZixHQUFHLE1BQU0sQ0FBQztJQUVYLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqRSxNQUFNLENBQUMsZ0JBQWdCLENBQ3JCLElBQUEsaUNBQWdCLEVBQUMsa0JBQWtCLENBQUM7UUFDbEMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLElBQUksSUFBSSx5QkFBeUI7UUFDdEQsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FDaEMsQ0FBQztJQUVGLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FDbkMsTUFBTSxJQUFBLGlCQUFXLEVBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNuRCxNQUFNLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBWSxFQUFFLEVBQUUsQ0FDbkMsTUFBTSxJ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
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaUVBQW1EO0FBQ25ELHFEQUEwRDtBQUMxRCxxREFBNEQ7QUFDNUQsbURBQWtEO0FBQ2xELGtEQUEwQjtBQUMxQixtREFJeUI7QUFDekIsbUNBQTBEO0FBQzFELCtCQUtlO0FBRWYsbURBSXlCO0FBSHZCLHNIQUFBLG1CQUFtQixPQUFBO0FBS3JCLDZCQUE2QjtBQUM3QixJQUFBLGtDQUFVLEdBQUUsQ0FBQztBQUVOLEtBQUssVUFBVSxRQUFRLENBQzVCLE1BQWMsRUFDZCxZQUEwQixFQUMxQixRQUFnQixFQUNoQixNQUFjO0lBRWQsTUFBTSxFQUNKLGtCQUFrQixFQUNsQixJQUFJLEVBQ0osSUFBSSxFQUNKLFNBQVMsRUFDVCxXQUFXLEVBQ1gsc0JBQXNCLEVBQ3RCLGNBQWMsR0FDZixHQUFHLE1BQU0sQ0FBQztJQUVYLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqRSxNQUFNLENBQUMsZ0JBQWdCLENBQ3JCLElBQUEsaUNBQWdCLEVBQUMsa0JBQWtCLENBQUM7UUFDbEMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLElBQUksSUFBSSx5QkFBeUI7UUFDdEQsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FDaEMsQ0FBQztJQUVGLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FDbkMsTUFBTSxJQUFBLGlCQUFXLEVBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNuRCxNQUFNLEtBQUssR0FBRyxLQUFLLEVBQUUsSUFBWSxFQUFFLEVBQUUsQ0FDbkMsTUFBTSxJ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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "backfill",
3
- "version": "6.3.1",
3
+ "version": "6.4.0",
4
4
  "description": "Backfill CLI",
5
5
  "license": "MIT",
6
6
  "author": "Benjamin Weggersen <bewegger@microsoft.com>",
@@ -20,11 +20,11 @@
20
20
  },
21
21
  "dependencies": {
22
22
  "anymatch": "^3.0.3",
23
- "backfill-cache": "^5.10.1",
24
- "backfill-config": "^6.6.1",
25
- "backfill-hasher": "^6.6.1",
26
- "backfill-logger": "^5.3.0",
27
- "backfill-utils-dotenv": "^5.3.0",
23
+ "backfill-cache": "^5.11.0",
24
+ "backfill-config": "^6.7.0",
25
+ "backfill-hasher": "^6.6.2",
26
+ "backfill-logger": "^5.4.0",
27
+ "backfill-utils-dotenv": "^5.3.1",
28
28
  "chokidar": "^3.2.1",
29
29
  "execa": "^5.0.0",
30
30
  "find-up": "^5.0.0",
@@ -34,15 +34,15 @@
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/fs-extra": "^9.0.13",
37
- "@types/jest": "^29.0.0",
37
+ "@types/jest": "^30.0.0",
38
38
  "@types/node": "^14.18.36",
39
39
  "@types/yargs": "^15.0.15",
40
40
  "backfill-utils-test": "*",
41
41
  "backfill-utils-tsconfig": "*",
42
- "jest": "^29.0.0",
42
+ "jest": "^30.0.0",
43
43
  "ts-jest": "^29.0.0",
44
44
  "ts-mockito": "^2.6.1",
45
- "typescript": "~4.5.0"
45
+ "typescript": "~4.7.0"
46
46
  },
47
47
  "engines": {
48
48
  "node": ">=14"