jostraca 0.34.1 → 0.35.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/dist/build/FileHandler.js +33 -10
- package/dist/build/FileHandler.js.map +1 -1
- package/dist/jostraca.d.ts +159 -59
- package/dist/jostraca.js +58 -1
- package/dist/jostraca.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/util/point.d.ts +25 -13
- package/dist/util/point.js +13 -4
- package/dist/util/point.js.map +1 -1
- package/package.json +1 -1
- package/src/build/FileHandler.ts +36 -10
- package/src/jostraca.ts +68 -1
- package/src/types.ts +8 -1
- package/src/util/point.ts +16 -5
|
@@ -81,6 +81,20 @@ function tmppathFor(path) {
|
|
|
81
81
|
// TODO: if EOL != '\n', normalize to '\n' in load,save
|
|
82
82
|
// Log non-fatal wierdness.
|
|
83
83
|
const dlog = (0, basic_1.getdlog)('jostraca', __filename);
|
|
84
|
+
// Compare two content values that may each be a string or a Buffer.
|
|
85
|
+
//
|
|
86
|
+
// `===` on a string and a Buffer is false whatever the bytes are, which is
|
|
87
|
+
// how a byte-identical binary target came to be reported as changed on
|
|
88
|
+
// every run (issue #30). Buffers compare by bytes; strings keep the cheap
|
|
89
|
+
// length check first, which is what the `===` sites here always did.
|
|
90
|
+
function sameContent(a, b) {
|
|
91
|
+
if (Buffer.isBuffer(a) || Buffer.isBuffer(b)) {
|
|
92
|
+
const ab = Buffer.isBuffer(a) ? a : Buffer.from(a, 'utf8');
|
|
93
|
+
const bb = Buffer.isBuffer(b) ? b : Buffer.from(b, 'utf8');
|
|
94
|
+
return ab.equals(bb);
|
|
95
|
+
}
|
|
96
|
+
return a.length === b.length && a === b;
|
|
97
|
+
}
|
|
84
98
|
class FileHandler {
|
|
85
99
|
when;
|
|
86
100
|
fs;
|
|
@@ -275,19 +289,30 @@ class FileHandler {
|
|
|
275
289
|
let unchanged = false;
|
|
276
290
|
if (exists) {
|
|
277
291
|
why.push('exists-0');
|
|
278
|
-
|
|
292
|
+
// Load the existing bytes in the SAME SHAPE as the incoming content.
|
|
293
|
+
// `loadFile` decodes utf8 by default, so a Copy-routed binary file --
|
|
294
|
+
// whose content arrives here as a Buffer -- was compared as
|
|
295
|
+
// `string === Buffer`, which is false whatever the bytes are. A target
|
|
296
|
+
// already holding exactly those bytes was therefore "changed" on every
|
|
297
|
+
// run: `bin.preserve` wrote a `.old` backup of a file about to be
|
|
298
|
+
// rewritten identically, `bin.present` wrote a `.new` sidecar of the
|
|
299
|
+
// same bytes, and the unchanged-file optimisation was defeated for
|
|
300
|
+
// every binary. Issue #30. Go has always used bytes.Equal.
|
|
301
|
+
//
|
|
302
|
+
// Decoding cannot be fixed by converting one side afterwards: utf8
|
|
303
|
+
// decoding is lossy for binary, so the string no longer carries the
|
|
304
|
+
// bytes to compare.
|
|
305
|
+
let currentContent = this.loadFile(path, isTextFile ? undefined : { encoding: null });
|
|
279
306
|
const protect = 0 <= currentContent.indexOf(JOSTRACA_PROTECT);
|
|
280
307
|
meta.protect = protect;
|
|
281
|
-
unchanged = currentContent
|
|
282
|
-
currentContent === newContentSource;
|
|
308
|
+
unchanged = sameContent(currentContent, newContentSource);
|
|
283
309
|
if (existing.preserve) {
|
|
284
310
|
why.push('preserve-0');
|
|
285
311
|
if (protect) {
|
|
286
312
|
why.push('protect-0');
|
|
287
313
|
write = false;
|
|
288
314
|
}
|
|
289
|
-
else if (currentContent
|
|
290
|
-
currentContent !== newContentSource) {
|
|
315
|
+
else if (!sameContent(currentContent, newContentSource)) {
|
|
291
316
|
why.push('content-0');
|
|
292
317
|
let oldpath = annotatedPath(path, 'old');
|
|
293
318
|
this.copyFile(path, oldpath, whence + 'preserve:');
|
|
@@ -306,7 +331,7 @@ class FileHandler {
|
|
|
306
331
|
}
|
|
307
332
|
else if (existing.present) {
|
|
308
333
|
why.push('present-0');
|
|
309
|
-
if (currentContent
|
|
334
|
+
if (!sameContent(currentContent, newContentSource)) {
|
|
310
335
|
why.push('content-1');
|
|
311
336
|
let newpath = annotatedPath(path, 'new');
|
|
312
337
|
this.saveFile(newpath, newContentSource, { flush: true }, whence + 'present:');
|
|
@@ -323,8 +348,7 @@ class FileHandler {
|
|
|
323
348
|
if (existing.diff) {
|
|
324
349
|
why.push('diff-0');
|
|
325
350
|
write = false;
|
|
326
|
-
if (currentContent
|
|
327
|
-
currentContent !== newContentSource) {
|
|
351
|
+
if (!sameContent(currentContent, newContentSource)) {
|
|
328
352
|
why.push('content-2');
|
|
329
353
|
meta.action = 'diff';
|
|
330
354
|
const newContent = 'string' === typeof newContentSource ? newContentSource :
|
|
@@ -357,8 +381,7 @@ class FileHandler {
|
|
|
357
381
|
}
|
|
358
382
|
else if (existing.merge) {
|
|
359
383
|
why.push('merge-0');
|
|
360
|
-
if (currentContent
|
|
361
|
-
currentContent !== newContentSource) {
|
|
384
|
+
if (!sameContent(currentContent, newContentSource)) {
|
|
362
385
|
why.push('content-3');
|
|
363
386
|
if (this.control.duplicate) {
|
|
364
387
|
why.push('duplicate-0');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileHandler.js","sourceRoot":"","sources":["../../src/build/FileHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FileHandler.js","sourceRoot":"","sources":["../../src/build/FileHandler.ts"],"names":[],"mappings":"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"}
|
package/dist/jostraca.d.ts
CHANGED
|
@@ -14,24 +14,24 @@ import { Folder } from './cmp/Folder';
|
|
|
14
14
|
import { Project } from './cmp/Project';
|
|
15
15
|
import { List } from './cmp/List';
|
|
16
16
|
declare const OptionsShape: {
|
|
17
|
-
<V>(root?: V | undefined, ctx?: import("shape").Context):
|
|
18
|
-
folder:
|
|
17
|
+
<V>(root?: V | undefined, ctx?: import("shape").Context): (0 extends 1 & V ? true : false) extends true ? {
|
|
18
|
+
folder: string | undefined;
|
|
19
19
|
name: {
|
|
20
20
|
file: {
|
|
21
|
-
prefix:
|
|
22
|
-
suffix:
|
|
21
|
+
prefix: string | undefined;
|
|
22
|
+
suffix: string | undefined;
|
|
23
23
|
};
|
|
24
24
|
folder: {
|
|
25
|
-
prefix:
|
|
26
|
-
suffix:
|
|
25
|
+
prefix: string | undefined;
|
|
26
|
+
suffix: string | undefined;
|
|
27
27
|
};
|
|
28
|
-
exclude:
|
|
28
|
+
exclude: string | (string | RegExpConstructor)[] | RegExpConstructor | undefined;
|
|
29
29
|
};
|
|
30
30
|
meta: any;
|
|
31
31
|
fs: any;
|
|
32
32
|
now: any;
|
|
33
33
|
log: any;
|
|
34
|
-
debug:
|
|
34
|
+
debug: string | undefined;
|
|
35
35
|
exclude: boolean;
|
|
36
36
|
existing: {
|
|
37
37
|
txt: {};
|
|
@@ -39,37 +39,111 @@ declare const OptionsShape: {
|
|
|
39
39
|
};
|
|
40
40
|
model: any;
|
|
41
41
|
build: boolean;
|
|
42
|
-
mem:
|
|
43
|
-
vol:
|
|
42
|
+
mem: boolean | undefined;
|
|
43
|
+
vol: {} | undefined;
|
|
44
44
|
cmp: {
|
|
45
45
|
Copy: {
|
|
46
46
|
ignore: any[];
|
|
47
47
|
};
|
|
48
48
|
};
|
|
49
49
|
control: {
|
|
50
|
-
dryrun:
|
|
51
|
-
duplicate:
|
|
52
|
-
version:
|
|
50
|
+
dryrun: boolean | undefined;
|
|
51
|
+
duplicate: boolean | undefined;
|
|
52
|
+
version: boolean | undefined;
|
|
53
|
+
};
|
|
54
|
+
} : V extends object ? Omit<V, "build" | "cmp" | "control" | "debug" | "exclude" | "existing" | "folder" | "fs" | "log" | "mem" | "meta" | "model" | "name" | "now" | "vol"> & {
|
|
55
|
+
folder: string | undefined;
|
|
56
|
+
name: {
|
|
57
|
+
file: {
|
|
58
|
+
prefix: string | undefined;
|
|
59
|
+
suffix: string | undefined;
|
|
60
|
+
};
|
|
61
|
+
folder: {
|
|
62
|
+
prefix: string | undefined;
|
|
63
|
+
suffix: string | undefined;
|
|
64
|
+
};
|
|
65
|
+
exclude: string | (string | RegExpConstructor)[] | RegExpConstructor | undefined;
|
|
66
|
+
};
|
|
67
|
+
meta: any;
|
|
68
|
+
fs: any;
|
|
69
|
+
now: any;
|
|
70
|
+
log: any;
|
|
71
|
+
debug: string | undefined;
|
|
72
|
+
exclude: boolean;
|
|
73
|
+
existing: {
|
|
74
|
+
txt: {};
|
|
75
|
+
bin: {};
|
|
76
|
+
};
|
|
77
|
+
model: any;
|
|
78
|
+
build: boolean;
|
|
79
|
+
mem: boolean | undefined;
|
|
80
|
+
vol: {} | undefined;
|
|
81
|
+
cmp: {
|
|
82
|
+
Copy: {
|
|
83
|
+
ignore: any[];
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
control: {
|
|
87
|
+
dryrun: boolean | undefined;
|
|
88
|
+
duplicate: boolean | undefined;
|
|
89
|
+
version: boolean | undefined;
|
|
90
|
+
};
|
|
91
|
+
} : {
|
|
92
|
+
folder: string | undefined;
|
|
93
|
+
name: {
|
|
94
|
+
file: {
|
|
95
|
+
prefix: string | undefined;
|
|
96
|
+
suffix: string | undefined;
|
|
97
|
+
};
|
|
98
|
+
folder: {
|
|
99
|
+
prefix: string | undefined;
|
|
100
|
+
suffix: string | undefined;
|
|
101
|
+
};
|
|
102
|
+
exclude: string | (string | RegExpConstructor)[] | RegExpConstructor | undefined;
|
|
103
|
+
};
|
|
104
|
+
meta: any;
|
|
105
|
+
fs: any;
|
|
106
|
+
now: any;
|
|
107
|
+
log: any;
|
|
108
|
+
debug: string | undefined;
|
|
109
|
+
exclude: boolean;
|
|
110
|
+
existing: {
|
|
111
|
+
txt: {};
|
|
112
|
+
bin: {};
|
|
113
|
+
};
|
|
114
|
+
model: any;
|
|
115
|
+
build: boolean;
|
|
116
|
+
mem: boolean | undefined;
|
|
117
|
+
vol: {} | undefined;
|
|
118
|
+
cmp: {
|
|
119
|
+
Copy: {
|
|
120
|
+
ignore: any[];
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
control: {
|
|
124
|
+
dryrun: boolean | undefined;
|
|
125
|
+
duplicate: boolean | undefined;
|
|
126
|
+
version: boolean | undefined;
|
|
53
127
|
};
|
|
54
128
|
};
|
|
55
129
|
valid: <V>(root?: V | undefined, ctx?: import("shape").Context) => root is V & {
|
|
56
|
-
folder:
|
|
130
|
+
folder: string | undefined;
|
|
57
131
|
name: {
|
|
58
132
|
file: {
|
|
59
|
-
prefix:
|
|
60
|
-
suffix:
|
|
133
|
+
prefix: string | undefined;
|
|
134
|
+
suffix: string | undefined;
|
|
61
135
|
};
|
|
62
136
|
folder: {
|
|
63
|
-
prefix:
|
|
64
|
-
suffix:
|
|
137
|
+
prefix: string | undefined;
|
|
138
|
+
suffix: string | undefined;
|
|
65
139
|
};
|
|
66
|
-
exclude:
|
|
140
|
+
exclude: string | (string | RegExpConstructor)[] | RegExpConstructor | undefined;
|
|
67
141
|
};
|
|
68
142
|
meta: any;
|
|
69
143
|
fs: any;
|
|
70
144
|
now: any;
|
|
71
145
|
log: any;
|
|
72
|
-
debug:
|
|
146
|
+
debug: string | undefined;
|
|
73
147
|
exclude: boolean;
|
|
74
148
|
existing: {
|
|
75
149
|
txt: {};
|
|
@@ -77,17 +151,17 @@ declare const OptionsShape: {
|
|
|
77
151
|
};
|
|
78
152
|
model: any;
|
|
79
153
|
build: boolean;
|
|
80
|
-
mem:
|
|
81
|
-
vol:
|
|
154
|
+
mem: boolean | undefined;
|
|
155
|
+
vol: {} | undefined;
|
|
82
156
|
cmp: {
|
|
83
157
|
Copy: {
|
|
84
158
|
ignore: any[];
|
|
85
159
|
};
|
|
86
160
|
};
|
|
87
161
|
control: {
|
|
88
|
-
dryrun:
|
|
89
|
-
duplicate:
|
|
90
|
-
version:
|
|
162
|
+
dryrun: boolean | undefined;
|
|
163
|
+
duplicate: boolean | undefined;
|
|
164
|
+
version: boolean | undefined;
|
|
91
165
|
};
|
|
92
166
|
};
|
|
93
167
|
match: (root?: any, ctx?: import("shape").Context) => boolean;
|
|
@@ -131,41 +205,41 @@ declare const OptionsShape: {
|
|
|
131
205
|
}[];
|
|
132
206
|
spec: () => any;
|
|
133
207
|
node: () => import("shape").Node<{
|
|
134
|
-
folder: import("shape").Node<StringConstructor>;
|
|
135
|
-
name: {
|
|
208
|
+
readonly folder: import("shape").Node<StringConstructor | undefined>;
|
|
209
|
+
readonly name: {
|
|
136
210
|
file: {
|
|
137
|
-
prefix: import("shape").Node<StringConstructor>;
|
|
138
|
-
suffix: import("shape").Node<StringConstructor>;
|
|
211
|
+
prefix: import("shape").Node<StringConstructor | undefined>;
|
|
212
|
+
suffix: import("shape").Node<StringConstructor | undefined>;
|
|
139
213
|
};
|
|
140
214
|
folder: {
|
|
141
|
-
prefix: import("shape").Node<StringConstructor>;
|
|
142
|
-
suffix: import("shape").Node<StringConstructor>;
|
|
215
|
+
prefix: import("shape").Node<StringConstructor | undefined>;
|
|
216
|
+
suffix: import("shape").Node<StringConstructor | undefined>;
|
|
143
217
|
};
|
|
144
|
-
exclude: import("shape").Node<
|
|
218
|
+
exclude: import("shape").Node<RegExpConstructor | StringConstructor | readonly [import("shape").Node<RegExpConstructor | StringConstructor>] | undefined>;
|
|
145
219
|
};
|
|
146
|
-
meta: any;
|
|
147
|
-
fs: any;
|
|
148
|
-
now: any;
|
|
149
|
-
log: any;
|
|
150
|
-
debug: import("shape").Node<string>;
|
|
151
|
-
exclude:
|
|
152
|
-
existing: {
|
|
220
|
+
readonly meta: any;
|
|
221
|
+
readonly fs: any;
|
|
222
|
+
readonly now: any;
|
|
223
|
+
readonly log: any;
|
|
224
|
+
readonly debug: import("shape").Node<string | undefined>;
|
|
225
|
+
readonly exclude: false;
|
|
226
|
+
readonly existing: {
|
|
153
227
|
txt: {};
|
|
154
228
|
bin: {};
|
|
155
229
|
};
|
|
156
|
-
model: any;
|
|
157
|
-
build:
|
|
158
|
-
mem: import("shape").Node<BooleanConstructor>;
|
|
159
|
-
vol: import("shape").Node<{}>;
|
|
160
|
-
cmp: {
|
|
230
|
+
readonly model: any;
|
|
231
|
+
readonly build: true;
|
|
232
|
+
readonly mem: import("shape").Node<BooleanConstructor | undefined>;
|
|
233
|
+
readonly vol: import("shape").Node<{} | undefined>;
|
|
234
|
+
readonly cmp: {
|
|
161
235
|
Copy: {
|
|
162
236
|
ignore: any[];
|
|
163
237
|
};
|
|
164
238
|
};
|
|
165
|
-
control: {
|
|
166
|
-
dryrun: import("shape").Node<BooleanConstructor>;
|
|
167
|
-
duplicate: import("shape").Node<BooleanConstructor>;
|
|
168
|
-
version: import("shape").Node<BooleanConstructor>;
|
|
239
|
+
readonly control: {
|
|
240
|
+
dryrun: import("shape").Node<BooleanConstructor | undefined>;
|
|
241
|
+
duplicate: import("shape").Node<BooleanConstructor | undefined>;
|
|
242
|
+
version: import("shape").Node<BooleanConstructor | undefined>;
|
|
169
243
|
};
|
|
170
244
|
}>;
|
|
171
245
|
stringify: (...rest: any[]) => string;
|
|
@@ -178,7 +252,33 @@ declare const OptionsShape: {
|
|
|
178
252
|
};
|
|
179
253
|
};
|
|
180
254
|
declare const ExistingShape: {
|
|
181
|
-
<V>(root?: V | undefined, ctx?: import("shape").Context):
|
|
255
|
+
<V>(root?: V | undefined, ctx?: import("shape").Context): (0 extends 1 & V ? true : false) extends true ? {
|
|
256
|
+
txt: {
|
|
257
|
+
write: boolean;
|
|
258
|
+
preserve: boolean;
|
|
259
|
+
present: boolean;
|
|
260
|
+
diff: boolean;
|
|
261
|
+
merge: boolean;
|
|
262
|
+
};
|
|
263
|
+
bin: {
|
|
264
|
+
write: boolean;
|
|
265
|
+
preserve: boolean;
|
|
266
|
+
present: boolean;
|
|
267
|
+
};
|
|
268
|
+
} : V extends object ? Omit<V, "bin" | "txt"> & {
|
|
269
|
+
txt: {
|
|
270
|
+
write: boolean;
|
|
271
|
+
preserve: boolean;
|
|
272
|
+
present: boolean;
|
|
273
|
+
diff: boolean;
|
|
274
|
+
merge: boolean;
|
|
275
|
+
};
|
|
276
|
+
bin: {
|
|
277
|
+
write: boolean;
|
|
278
|
+
preserve: boolean;
|
|
279
|
+
present: boolean;
|
|
280
|
+
};
|
|
281
|
+
} : {
|
|
182
282
|
txt: {
|
|
183
283
|
write: boolean;
|
|
184
284
|
preserve: boolean;
|
|
@@ -247,17 +347,17 @@ declare const ExistingShape: {
|
|
|
247
347
|
}[];
|
|
248
348
|
spec: () => any;
|
|
249
349
|
node: () => import("shape").Node<{
|
|
250
|
-
txt: {
|
|
251
|
-
write:
|
|
252
|
-
preserve:
|
|
253
|
-
present:
|
|
254
|
-
diff:
|
|
255
|
-
merge:
|
|
350
|
+
readonly txt: {
|
|
351
|
+
readonly write: true;
|
|
352
|
+
readonly preserve: false;
|
|
353
|
+
readonly present: false;
|
|
354
|
+
readonly diff: false;
|
|
355
|
+
readonly merge: false;
|
|
256
356
|
};
|
|
257
|
-
bin: {
|
|
258
|
-
write:
|
|
259
|
-
preserve:
|
|
260
|
-
present:
|
|
357
|
+
readonly bin: {
|
|
358
|
+
readonly write: true;
|
|
359
|
+
readonly preserve: false;
|
|
360
|
+
readonly present: false;
|
|
261
361
|
};
|
|
262
362
|
}>;
|
|
263
363
|
stringify: (...rest: any[]) => string;
|
package/dist/jostraca.js
CHANGED
|
@@ -183,6 +183,51 @@ const ExistingShape = (0, shape_1.Shape)({
|
|
|
183
183
|
// No merge of binary files
|
|
184
184
|
}
|
|
185
185
|
}, { name: 'Jostraca Options (`existing` property)' });
|
|
186
|
+
// Copy an options object so shape's injection cannot reach the caller's own
|
|
187
|
+
// objects, and no further than that.
|
|
188
|
+
//
|
|
189
|
+
// The injection is RECURSIVE, so this has to be: `{cmp: {Copy: {}}}` had its
|
|
190
|
+
// `Copy` object handed straight through by a one-level copy, and shape wrote
|
|
191
|
+
// `ignore: []` into the caller's object two levels down. Measuring `existing`
|
|
192
|
+
// and `meta` and concluding one level was enough is how that was missed.
|
|
193
|
+
//
|
|
194
|
+
// What is NOT copied, and why:
|
|
195
|
+
//
|
|
196
|
+
// - `model` at the top level. It is the caller's DATA rather than option
|
|
197
|
+
// structure -- every component reads it through `ctx$.model` -- so
|
|
198
|
+
// cloning it per `generate` would change identity semantics and copy an
|
|
199
|
+
// arbitrarily large object to guard against an injection that does not
|
|
200
|
+
// touch it.
|
|
201
|
+
// - Anything carrying a constructor of its own: Buffer, RegExp, Date, a
|
|
202
|
+
// class instance. Copying their enumerable properties is not copying
|
|
203
|
+
// them, which is the rule `deep` follows for the same reason. A
|
|
204
|
+
// `cmp.Copy.ignore` entry is a RegExp, and must stay the same RegExp.
|
|
205
|
+
//
|
|
206
|
+
// `seen` keeps a shared reference shared and makes a cyclic options object
|
|
207
|
+
// terminate rather than overflow the stack.
|
|
208
|
+
function copyOptions(opts_in) {
|
|
209
|
+
return copyOptionTree(opts_in, new WeakMap(), true);
|
|
210
|
+
}
|
|
211
|
+
function copyOptionTree(val, seen, top) {
|
|
212
|
+
if (null == val || 'object' !== typeof val) {
|
|
213
|
+
return val;
|
|
214
|
+
}
|
|
215
|
+
const isArray = Array.isArray(val);
|
|
216
|
+
if (!isArray && Object !== val.constructor) {
|
|
217
|
+
return val;
|
|
218
|
+
}
|
|
219
|
+
const already = seen.get(val);
|
|
220
|
+
if (undefined !== already) {
|
|
221
|
+
return already;
|
|
222
|
+
}
|
|
223
|
+
const out = isArray ? [] : {};
|
|
224
|
+
seen.set(val, out);
|
|
225
|
+
for (const key of Object.keys(val)) {
|
|
226
|
+
out[key] = (top && 'model' === key) ? val[key] :
|
|
227
|
+
copyOptionTree(val[key], seen, false);
|
|
228
|
+
}
|
|
229
|
+
return out;
|
|
230
|
+
}
|
|
186
231
|
const sysFs = () => Fs;
|
|
187
232
|
// Applied once, beneath both the global and the per-call `control`, so that
|
|
188
233
|
// precedence runs defaults < global < per-call. These are NOT declared as
|
|
@@ -208,7 +253,19 @@ function Jostraca(gopts_in) {
|
|
|
208
253
|
// filesystem at all.
|
|
209
254
|
const gGetFs = gOpts.fs || (gUseMemFs ? get_gMemFs : undefined);
|
|
210
255
|
async function generate(opts_in, root) {
|
|
211
|
-
|
|
256
|
+
// Validate a COPY. `OptionsShape` injects its defaults into the object
|
|
257
|
+
// it is handed and returns that same object, so validating the caller's
|
|
258
|
+
// own options wrote `build`, `cmp`, `control`, `exclude` and `name`
|
|
259
|
+
// into it -- and `bin` into an `existing` they passed in. A caller who
|
|
260
|
+
// reuses one options object across two `generate` calls was not passing
|
|
261
|
+
// what they thought on the second.
|
|
262
|
+
//
|
|
263
|
+
// The injection itself stays: DEPENDENCY_PLAN.md 3.2 and PARITY_PLAN.md
|
|
264
|
+
// 1.3 are explicit that a validator which checks without injecting
|
|
265
|
+
// crashes on `existing` and silently produces a wrong output tree on
|
|
266
|
+
// `control`. Change where it lands, not whether it happens. Go has never
|
|
267
|
+
// had this: its Options is a value struct. See PARITY_PLAN.md 2.3.
|
|
268
|
+
const opts = OptionsShape(copyOptions(opts_in));
|
|
212
269
|
// Parameters to `generate` override any global options.
|
|
213
270
|
const useMemFS = null == opts.mem ? gUseMemFs : !!opts.mem;
|
|
214
271
|
const vol = null == opts.vol ? gVol : (0, basic_1.deep)({}, gVol, opts.vol);
|