npm-pkgbuild 20.2.6 → 20.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
@@ -98,47 +98,47 @@ See [mf-hosting](https://www.npmjs.com/package/mf-hosting) or [mf-hosting-fronte
98
98
  * [Properties](#properties)
99
99
  * [extractFromPackage](#extractfrompackage)
100
100
  * [Parameters](#parameters-1)
101
- * [BUILDAH](#buildah)
102
- * [ContentProvider](#contentprovider)
101
+ * [NPMPackContentProvider](#npmpackcontentprovider)
103
102
  * [Parameters](#parameters-2)
104
103
  * [Properties](#properties-1)
105
- * [asyncIterator](#asynciterator)
106
- * [FileContentProvider](#filecontentprovider)
107
- * [Parameters](#parameters-3)
108
- * [asyncIterator](#asynciterator-1)
109
104
  * [name](#name)
110
105
  * [NodeModulesContentProvider](#nodemodulescontentprovider)
111
- * [Parameters](#parameters-4)
106
+ * [Parameters](#parameters-3)
112
107
  * [Properties](#properties-2)
113
- * [asyncIterator](#asynciterator-2)
108
+ * [asyncIterator](#asynciterator)
114
109
  * [name](#name-1)
115
- * [NPMPackContentProvider](#npmpackcontentprovider)
116
- * [Parameters](#parameters-5)
117
- * [Properties](#properties-3)
110
+ * [FileContentProvider](#filecontentprovider)
111
+ * [Parameters](#parameters-4)
112
+ * [asyncIterator](#asynciterator-1)
118
113
  * [name](#name-2)
119
114
  * [NFTContentProvider](#nftcontentprovider)
115
+ * [Parameters](#parameters-5)
116
+ * [asyncIterator](#asynciterator-2)
117
+ * [name](#name-3)
118
+ * [ContentProvider](#contentprovider)
120
119
  * [Parameters](#parameters-6)
120
+ * [Properties](#properties-3)
121
121
  * [asyncIterator](#asynciterator-3)
122
- * [name](#name-3)
123
122
  * [DEBIAN](#debian)
124
123
  * [hookMapping](#hookmapping)
125
124
  * [attributes](#attributes)
126
125
  * [prepare](#prepare)
127
126
  * [Parameters](#parameters-7)
127
+ * [pkgKeyValuePairOptions](#pkgkeyvaluepairoptions)
128
+ * [attributes](#attributes-1)
128
129
  * [quoteFile](#quotefile)
129
130
  * [Parameters](#parameters-8)
130
131
  * [RPM](#rpm)
131
132
  * [hookMapping](#hookmapping-1)
132
- * [attributes](#attributes-1)
133
+ * [attributes](#attributes-2)
133
134
  * [prepare](#prepare-1)
134
135
  * [Parameters](#parameters-9)
135
- * [pkgKeyValuePairOptions](#pkgkeyvaluepairoptions)
136
- * [attributes](#attributes-2)
137
136
  * [OCI](#oci)
138
137
  * [DOCKER](#docker)
139
138
  * [attributes](#attributes-3)
140
139
  * [prepare](#prepare-2)
141
140
  * [Parameters](#parameters-10)
141
+ * [BUILDAH](#buildah)
142
142
  * [Packager](#packager)
143
143
  * [Parameters](#parameters-11)
144
144
  * [packageName](#packagename)
@@ -254,48 +254,22 @@ Extract package definition from package.json.
254
254
 
255
255
  Returns **AsyncIterable<[PackageDefinition](#packagedefinition)>**&#x20;
256
256
 
257
- ## BUILDAH
258
-
259
- **Extends DOCKER**
260
-
261
- Use buildah @see <https://buildah.io>
257
+ ## NPMPackContentProvider
262
258
 
263
- ## ContentProvider
259
+ **Extends ContentProvider**
264
260
 
265
- Source of package content.
261
+ Content from npm pack.
266
262
 
267
263
  ### Parameters
268
264
 
269
265
  * `definitions` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
270
- * `entryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**&#x20;
271
- * `directoryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**&#x20;
266
+ * `entryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** to be set for each entry
267
+ * `directoryProperties` &#x20;
272
268
 
273
269
  ### Properties
274
270
 
275
271
  * `dir` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
276
272
 
277
- ### asyncIterator
278
-
279
- List all entries.
280
-
281
- Returns **AsyncIterable<(ContentEntry | CollectionEntry)>** all entries
282
-
283
- ## FileContentProvider
284
-
285
- **Extends ContentProvider**
286
-
287
- Content provided form the file system.
288
-
289
- ### Parameters
290
-
291
- * `definitions` **([Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object) | [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String))**&#x20;
292
- * `entryProperties` &#x20;
293
- * `directoryProperties` &#x20;
294
-
295
- ### asyncIterator
296
-
297
- Returns **AsyncIterable<(ContentEntry | CollectionEntry)>** all entries
298
-
299
273
  ### name
300
274
 
301
275
  Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
@@ -327,21 +301,21 @@ Returns **AsyncIterable<(ContentEntry | CollectionEntry)>** all entries
327
301
 
328
302
  Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
329
303
 
330
- ## NPMPackContentProvider
304
+ ## FileContentProvider
331
305
 
332
306
  **Extends ContentProvider**
333
307
 
334
- Content from npm pack.
308
+ Content provided form the file system.
335
309
 
336
310
  ### Parameters
337
311
 
338
- * `definitions` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
339
- * `entryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** to be set for each entry
312
+ * `definitions` **([Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object) | [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String))**&#x20;
313
+ * `entryProperties` &#x20;
340
314
  * `directoryProperties` &#x20;
341
315
 
342
- ### Properties
316
+ ### asyncIterator
343
317
 
344
- * `dir` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
318
+ Returns **AsyncIterable<(ContentEntry | CollectionEntry)>** all entries
345
319
 
346
320
  ### name
347
321
 
@@ -367,6 +341,26 @@ Returns **AsyncIterable\<ContentEntry>** all entries
367
341
 
368
342
  Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
369
343
 
344
+ ## ContentProvider
345
+
346
+ Source of package content.
347
+
348
+ ### Parameters
349
+
350
+ * `definitions` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
351
+ * `entryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**&#x20;
352
+ * `directoryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**&#x20;
353
+
354
+ ### Properties
355
+
356
+ * `dir` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
357
+
358
+ ### asyncIterator
359
+
360
+ List all entries.
361
+
362
+ Returns **AsyncIterable<(ContentEntry | CollectionEntry)>** all entries
363
+
370
364
  ## DEBIAN
371
365
 
372
366
  **Extends Packager**
@@ -393,6 +387,15 @@ Map install hook named from default (arch) to deb.
393
387
 
394
388
  Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)>**&#x20;
395
389
 
390
+ ## pkgKeyValuePairOptions
391
+
392
+ Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)
393
+
394
+ ## attributes
395
+
396
+ well known package properties
397
+ <https://www.archlinux.org/pacman/PKGBUILD.5.html>
398
+
396
399
  ## quoteFile
397
400
 
398
401
  ### Parameters
@@ -426,15 +429,6 @@ Check for rpmbuild presence.
426
429
 
427
430
  Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)>** true when rpmbuild executable is present
428
431
 
429
- ## pkgKeyValuePairOptions
430
-
431
- Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)
432
-
433
- ## attributes
434
-
435
- well known package properties
436
- <https://www.archlinux.org/pacman/PKGBUILD.5.html>
437
-
438
432
  ## OCI
439
433
 
440
434
  **Extends Packager**
@@ -464,6 +458,12 @@ Check for docker presence.
464
458
 
465
459
  Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)>** true when docker executable is present
466
460
 
461
+ ## BUILDAH
462
+
463
+ **Extends DOCKER**
464
+
465
+ Use buildah @see <https://buildah.io>
466
+
467
467
  ## Packager
468
468
 
469
469
  ### Parameters
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-pkgbuild",
3
- "version": "20.2.6",
3
+ "version": "20.4.0",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": false
@@ -52,7 +52,7 @@
52
52
  "tsc:types": "tsc -d --allowJs --declarationDir dist --emitDeclarationOnly ./src/extract-from-package.mjs"
53
53
  },
54
54
  "dependencies": {
55
- "@npmcli/arborist": "^9.1.10",
55
+ "@npmcli/arborist": "^9.2.0",
56
56
  "@vercel/nft": "^1.3.0",
57
57
  "aggregate-async-iterator": "^1.2.3",
58
58
  "commander": "^14.0.3",
@@ -61,13 +61,12 @@
61
61
  "content-entry-filesystem": "^9.0.14",
62
62
  "content-entry-transform": "^1.6.3",
63
63
  "execa": "^9.6.0",
64
- "expression-expander": "^7.2.8",
65
64
  "ini": "^6.0.0",
66
65
  "iterable-string-interceptor": "^3.0.6",
67
66
  "key-value-transformer": "^3.3.1",
68
67
  "npm-package-walker": "^8.0.11",
69
68
  "npm-packlist": "^10.0.3",
70
- "pacc": "^8.4.2",
69
+ "pacc": "^8.7.0",
71
70
  "package-directory": "^8.2.0",
72
71
  "pacote": "^21.1.0",
73
72
  "tar-stream": "^3.1.7",
@@ -83,8 +82,8 @@
83
82
  "typescript": "^5.9.3"
84
83
  },
85
84
  "engines": {
86
- "node": ">=24.11.0",
87
- "bun": ">=1.3.0"
85
+ "node": ">=24.13.0",
86
+ "bun": ">=1.3.8"
88
87
  },
89
88
  "repository": {
90
89
  "type": "git",
@@ -1,7 +1,7 @@
1
1
  import { join, resolve } from "node:path";
2
2
  import { packageDirectory } from "package-directory";
3
3
  import { packageWalker } from "npm-package-walker";
4
- import { createContext } from "expression-expander";
4
+ import { expand } from "pacc";
5
5
  import { satisfies } from "compare-versions";
6
6
  import { asArray, mergeDependencies } from "./util.mjs";
7
7
  import { NPMPackContentProvider } from "./content/npm-pack-content-provider.mjs";
@@ -225,7 +225,13 @@ export async function* extractFromPackage(options = {}, env = {}) {
225
225
  }
226
226
  }
227
227
 
228
- for (const k of ["output", "content", "dependencies", "replaces", "conflicts"]) {
228
+ for (const k of [
229
+ "output",
230
+ "content",
231
+ "dependencies",
232
+ "replaces",
233
+ "conflicts"
234
+ ]) {
229
235
  if (pkgbuild[k]) {
230
236
  fragment[k] = pkgbuild[k];
231
237
  delete pkgbuild[k];
@@ -378,7 +384,6 @@ export async function* extractFromPackage(options = {}, env = {}) {
378
384
 
379
385
  function* forEachOutput(result) {
380
386
  if (Object.entries(result.output).length === 0) {
381
- result.context = createContext({ properties: result.properties });
382
387
  result.sources = [];
383
388
  yield result;
384
389
  }
@@ -409,19 +414,19 @@ export async function* extractFromPackage(options = {}, env = {}) {
409
414
  conflicts: mergeDependencies(result.conflicts, output.conflicts)
410
415
  };
411
416
 
412
- const context = createContext({ properties });
417
+ const context = { root: properties };
418
+
413
419
  const sources = [];
414
- context.expand(content).reduce((a, { content, dir }) => {
420
+ expand(content, context).reduce((a, { content, dir }) => {
415
421
  a.push(...content2Sources(content, dir));
416
422
  return a;
417
423
  }, sources);
418
424
 
419
425
  yield {
420
- context,
421
426
  variant: { ...result.variant, output: name },
422
427
  output: { [name]: output },
423
428
  sources,
424
- properties: context.expand(properties)
429
+ properties: expand(properties, context)
425
430
  };
426
431
  }
427
432
  }
@@ -4,6 +4,7 @@ import { program, Option } from "commander";
4
4
  import { execa } from "execa";
5
5
  import { createExpressionTransformer } from "content-entry-transform";
6
6
  import { UTIController } from "uti";
7
+ import { expand } from "pacc";
7
8
  import additionalUTIs from "./utis.mjs";
8
9
  import {
9
10
  FileContentProvider,
@@ -61,7 +62,6 @@ program
61
62
  sources,
62
63
  output,
63
64
  variant,
64
- context
65
65
  } of extractFromPackage(options, process.env)) {
66
66
  for (const inputFactory of allInputs.filter(
67
67
  inputFactory => options[inputFactory.name] === true
@@ -107,7 +107,9 @@ program
107
107
  })
108
108
  );
109
109
 
110
- const o = new outputFactory(context.expand(properties));
110
+ const context = { root: properties };
111
+
112
+ const o = new outputFactory(expand(properties, context));
111
113
  const transformer = [
112
114
  { name: "skip-bare-modules",
113
115
  match: entry => entry.isBlob && uc.fileNameConformsTo(entry.name, "public.bare-dynamic-link-library"),
@@ -162,7 +164,7 @@ program
162
164
  transformer,
163
165
  publishingDetails,
164
166
  options,
165
- context.expand
167
+ (object) => expand(object, context)
166
168
  );
167
169
 
168
170
  if (!options.dry) {
@@ -1,7 +1,11 @@
1
1
  import { join } from "node:path";
2
2
  import { readFile } from "node:fs/promises";
3
3
  import { execa } from "execa";
4
- import { integer_attribute_writable, yesno_attribute_writable, string_attribute_writable } from "pacc";
4
+ import {
5
+ integer_attribute_writable,
6
+ yesno_attribute_writable,
7
+ string_attribute_writable
8
+ } from "pacc";
5
9
  import { ContentEntry, IteratorContentEntry } from "content-entry";
6
10
  import {
7
11
  transform,
@@ -18,12 +22,13 @@ import {
18
22
  } from "./packager.mjs";
19
23
  import { copyEntries, fieldProvider } from "../util.mjs";
20
24
 
21
- const debian_dependency_attribute_collection_writable =
22
- {
25
+ const debian_dependency_attribute_collection_writable = {
23
26
  ...dependency_attribute_collection_writable,
24
27
  separator: ","
25
28
  };
26
29
 
30
+ const CONTROL_NAME = "DEBIAN/control";
31
+
27
32
  /**
28
33
  * Create .deb packages
29
34
  */
@@ -50,7 +55,11 @@ export class DEBIAN extends Packager {
50
55
  set: v => v.toLowerCase()
51
56
  },
52
57
  Version: pkgbuild_version_attribute,
53
- Maintainer: { ...string_attribute_writable, alias: "maintainer", mandatory: true },
58
+ Maintainer: {
59
+ ...string_attribute_writable,
60
+ alias: "maintainer",
61
+ mandatory: true
62
+ },
54
63
  Description: pkgbuild_description_attribute,
55
64
  Section: { ...string_attribute_writable, alias: "groups" },
56
65
  Priority: string_attribute_writable,
@@ -129,9 +138,11 @@ export class DEBIAN extends Packager {
129
138
  async create(sources, transformer, publishingDetails, options, expander) {
130
139
  const { properties, staging, destination } = await this.prepare(options);
131
140
 
141
+ const hooks = new Set(Object.values(this.hookMapping));
142
+
132
143
  transformer.push(
133
144
  createPropertiesTransformer(
134
- entry => (entry.name.match(/DEBIAN\/.*(inst|rm)/) ? true : false),
145
+ entry => hooks.has(entry.name),
135
146
  { mode: { value: 0o775 } },
136
147
  "mode"
137
148
  )
@@ -143,17 +154,16 @@ export class DEBIAN extends Packager {
143
154
  }
144
155
 
145
156
  const fp = fieldProvider(properties, this.attributes);
146
- const debianControlName = "DEBIAN/control";
147
157
 
148
158
  transformer.push({
149
- match: entry => entry.name === debianControlName,
159
+ match: entry => entry.name === CONTROL_NAME,
150
160
  transform: async entry =>
151
161
  new IteratorContentEntry(
152
162
  entry.name,
153
163
  undefined,
154
164
  keyValueTransformer(Uint8ArraysToLines(await entry.readStream), fp)
155
165
  ),
156
- createEntryWhenMissing: () => new ContentEntry(debianControlName)
166
+ createEntryWhenMissing: () => new ContentEntry(CONTROL_NAME)
157
167
  });
158
168
 
159
169
  for await (const file of copyEntries(
@@ -168,7 +178,7 @@ export class DEBIAN extends Packager {
168
178
  }
169
179
 
170
180
  if (options.verbose) {
171
- console.log(await readFile(join(staging, debianControlName), "utf8"));
181
+ console.log(await readFile(join(staging, CONTROL_NAME), "utf8"));
172
182
  }
173
183
 
174
184
  if (!options.dry) {
@@ -3,6 +3,8 @@ import { tmpdir } from "node:os";
3
3
  import { mkdtemp, mkdir } from "node:fs/promises";
4
4
  import { createReadStream } from "node:fs";
5
5
  import {
6
+ expand,
7
+ expandContextDoubbleCurly,
6
8
  string_attribute,
7
9
  description_attribute,
8
10
  version_attribute_writable
@@ -82,9 +84,20 @@ export class Packager {
82
84
  return {};
83
85
  }
84
86
 
87
+ /**
88
+ * Generate hook content entries
89
+ * @return {AsyncIterable<ContentEntry>}
90
+ */
85
91
  async *hookContent() {
86
92
  const properties = this.properties;
87
93
 
94
+ const context = {
95
+ ...expandContextDoubbleCurly,
96
+ root: properties
97
+ };
98
+
99
+ const entryProps = { mode: 0o775 };
100
+
88
101
  switch (typeof properties.hooks) {
89
102
  case "string":
90
103
  for await (const f of extractFunctions(
@@ -94,12 +107,8 @@ export class Packager {
94
107
  if (name) {
95
108
  yield new StringContentEntry(
96
109
  name,
97
- undefined,
98
- f.body.replaceAll(
99
- /\{\{(\w+)\}\}/gm,
100
- (match, key, offset, string) =>
101
- properties[key] || "{{" + key + "}}"
102
- )
110
+ entryProps,
111
+ expand(f.body, context)
103
112
  );
104
113
  }
105
114
  }
@@ -109,19 +118,15 @@ export class Packager {
109
118
  for (const [name, content] of Object.entries(properties.hooks)) {
110
119
  yield new StringContentEntry(
111
120
  name,
112
- undefined,
113
- content.replaceAll(
114
- /\{\{(\w+)\}\}/gm,
115
- (match, key, offset, string) =>
116
- properties[key] || "{{" + key + "}}"
117
- )
121
+ entryProps,
122
+ expand(content, context)
118
123
  );
119
124
  }
120
125
  }
121
126
  }
122
127
 
123
128
  /**
124
- * forms an expression string form name and expression.
129
+ * Forms an expression string form name and expression.
125
130
  * If tere is no valid exression name only is delivered.
126
131
  * @param {string} name
127
132
  * @param {string|boolean|undefined} expression
@@ -290,10 +295,9 @@ export const dependency_type = {
290
295
  return value;
291
296
  }
292
297
 
293
- return Object.entries(value)
294
- .map(([name, expression]) =>
295
- typeof expression === "string" ? `${name}${expression}` : name
296
- );
298
+ return Object.entries(value).map(([name, expression]) =>
299
+ typeof expression === "string" ? `${name}${expression}` : name
300
+ );
297
301
  }
298
302
  };
299
303
 
@@ -20,6 +20,7 @@ export class ARCH extends Packager {
20
20
  writable: boolean;
21
21
  mandatory: boolean;
22
22
  collection: boolean;
23
+ constructor?: Function;
23
24
  private?: boolean;
24
25
  credential?: boolean;
25
26
  persistent?: boolean;
@@ -42,6 +43,7 @@ export class ARCH extends Packager {
42
43
  writable: boolean;
43
44
  mandatory: boolean;
44
45
  collection: boolean;
46
+ constructor?: Function;
45
47
  private?: boolean;
46
48
  credential?: boolean;
47
49
  persistent?: boolean;
@@ -65,6 +67,7 @@ export class ARCH extends Packager {
65
67
  type: object;
66
68
  isKey: boolean;
67
69
  writable: boolean;
70
+ constructor?: Function;
68
71
  private?: boolean;
69
72
  credential?: boolean;
70
73
  persistent?: boolean;
@@ -88,6 +91,7 @@ export class ARCH extends Packager {
88
91
  isKey: boolean;
89
92
  writable: boolean;
90
93
  collection: boolean;
94
+ constructor?: Function;
91
95
  private?: boolean;
92
96
  credential?: boolean;
93
97
  persistent?: boolean;
@@ -110,6 +114,7 @@ export class ARCH extends Packager {
110
114
  isKey: boolean;
111
115
  writable: boolean;
112
116
  collection: boolean;
117
+ constructor?: Function;
113
118
  private?: boolean;
114
119
  credential?: boolean;
115
120
  persistent?: boolean;
@@ -131,6 +136,7 @@ export class ARCH extends Packager {
131
136
  writable: boolean;
132
137
  mandatory: boolean;
133
138
  collection: boolean;
139
+ constructor?: Function;
134
140
  private?: boolean;
135
141
  credential?: boolean;
136
142
  persistent?: boolean;
@@ -152,6 +158,7 @@ export class ARCH extends Packager {
152
158
  isKey: boolean;
153
159
  writable: boolean;
154
160
  collection: boolean;
161
+ constructor?: Function;
155
162
  private?: boolean;
156
163
  credential?: boolean;
157
164
  persistent?: boolean;
@@ -174,6 +181,7 @@ export class ARCH extends Packager {
174
181
  writable: boolean;
175
182
  mandatory: boolean;
176
183
  collection: boolean;
184
+ constructor?: Function;
177
185
  private?: boolean;
178
186
  credential?: boolean;
179
187
  persistent?: boolean;
@@ -195,6 +203,7 @@ export class ARCH extends Packager {
195
203
  isKey: boolean;
196
204
  writable: boolean;
197
205
  collection: boolean;
206
+ constructor?: Function;
198
207
  private?: boolean;
199
208
  credential?: boolean;
200
209
  persistent?: boolean;
@@ -229,6 +238,7 @@ export class ARCH extends Packager {
229
238
  isKey: boolean;
230
239
  writable: boolean;
231
240
  collection: boolean;
241
+ constructor?: Function;
232
242
  private?: boolean;
233
243
  credential?: boolean;
234
244
  persistent?: boolean;
@@ -256,6 +266,7 @@ export class ARCH extends Packager {
256
266
  pattern: RegExp;
257
267
  isKey: boolean;
258
268
  mandatory: boolean;
269
+ constructor?: Function;
259
270
  private?: boolean;
260
271
  credential?: boolean;
261
272
  persistent?: boolean;
@@ -283,6 +294,7 @@ export class ARCH extends Packager {
283
294
  pattern: RegExp;
284
295
  isKey: boolean;
285
296
  mandatory: boolean;
297
+ constructor?: Function;
286
298
  private?: boolean;
287
299
  credential?: boolean;
288
300
  persistent?: boolean;
@@ -310,6 +322,7 @@ export class ARCH extends Packager {
310
322
  pattern: RegExp;
311
323
  isKey: boolean;
312
324
  mandatory: boolean;
325
+ constructor?: Function;
313
326
  private?: boolean;
314
327
  credential?: boolean;
315
328
  persistent?: boolean;
@@ -337,6 +350,7 @@ export class ARCH extends Packager {
337
350
  pattern: RegExp;
338
351
  isKey: boolean;
339
352
  mandatory: boolean;
353
+ constructor?: Function;
340
354
  private?: boolean;
341
355
  credential?: boolean;
342
356
  persistent?: boolean;
@@ -364,6 +378,7 @@ export class ARCH extends Packager {
364
378
  pattern: RegExp;
365
379
  isKey: boolean;
366
380
  mandatory: boolean;
381
+ constructor?: Function;
367
382
  private?: boolean;
368
383
  credential?: boolean;
369
384
  persistent?: boolean;
@@ -391,6 +406,7 @@ export class ARCH extends Packager {
391
406
  pattern: RegExp;
392
407
  isKey: boolean;
393
408
  mandatory: boolean;
409
+ constructor?: Function;
394
410
  private?: boolean;
395
411
  credential?: boolean;
396
412
  persistent?: boolean;
@@ -418,6 +434,7 @@ export class ARCH extends Packager {
418
434
  pattern: RegExp;
419
435
  isKey: boolean;
420
436
  mandatory: boolean;
437
+ constructor?: Function;
421
438
  private?: boolean;
422
439
  credential?: boolean;
423
440
  persistent?: boolean;
@@ -18,6 +18,7 @@ export class DEBIAN extends Packager {
18
18
  isKey: boolean;
19
19
  writable: boolean;
20
20
  collection: boolean;
21
+ constructor?: Function;
21
22
  private?: boolean;
22
23
  credential?: boolean;
23
24
  persistent?: boolean;
@@ -40,6 +41,7 @@ export class DEBIAN extends Packager {
40
41
  isKey: boolean;
41
42
  writable: boolean;
42
43
  collection: boolean;
44
+ constructor?: Function;
43
45
  private?: boolean;
44
46
  credential?: boolean;
45
47
  persistent?: boolean;
@@ -61,6 +63,7 @@ export class DEBIAN extends Packager {
61
63
  isKey: boolean;
62
64
  writable: boolean;
63
65
  collection: boolean;
66
+ constructor?: Function;
64
67
  private?: boolean;
65
68
  credential?: boolean;
66
69
  persistent?: boolean;
@@ -83,6 +86,7 @@ export class DEBIAN extends Packager {
83
86
  isKey: boolean;
84
87
  writable: boolean;
85
88
  collection: boolean;
89
+ constructor?: Function;
86
90
  private?: boolean;
87
91
  credential?: boolean;
88
92
  persistent?: boolean;
@@ -105,6 +109,7 @@ export class DEBIAN extends Packager {
105
109
  writable: boolean;
106
110
  mandatory: boolean;
107
111
  collection: boolean;
112
+ constructor?: Function;
108
113
  private?: boolean;
109
114
  credential?: boolean;
110
115
  persistent?: boolean;
@@ -134,6 +139,7 @@ export class DEBIAN extends Packager {
134
139
  isKey: boolean;
135
140
  writable: boolean;
136
141
  collection: boolean;
142
+ constructor?: Function;
137
143
  private?: boolean;
138
144
  credential?: boolean;
139
145
  persistent?: boolean;
@@ -155,6 +161,7 @@ export class DEBIAN extends Packager {
155
161
  writable: boolean;
156
162
  mandatory: boolean;
157
163
  collection: boolean;
164
+ constructor?: Function;
158
165
  private?: boolean;
159
166
  credential?: boolean;
160
167
  persistent?: boolean;
@@ -177,6 +184,7 @@ export class DEBIAN extends Packager {
177
184
  writable: boolean;
178
185
  mandatory: boolean;
179
186
  collection: boolean;
187
+ constructor?: Function;
180
188
  private?: boolean;
181
189
  credential?: boolean;
182
190
  persistent?: boolean;
@@ -204,6 +212,7 @@ export class DEBIAN extends Packager {
204
212
  pattern: RegExp;
205
213
  isKey: boolean;
206
214
  mandatory: boolean;
215
+ constructor?: Function;
207
216
  private?: boolean;
208
217
  credential?: boolean;
209
218
  persistent?: boolean;
@@ -231,6 +240,7 @@ export class DEBIAN extends Packager {
231
240
  pattern: RegExp;
232
241
  isKey: boolean;
233
242
  mandatory: boolean;
243
+ constructor?: Function;
234
244
  private?: boolean;
235
245
  credential?: boolean;
236
246
  persistent?: boolean;
@@ -258,6 +268,7 @@ export class DEBIAN extends Packager {
258
268
  pattern: RegExp;
259
269
  isKey: boolean;
260
270
  mandatory: boolean;
271
+ constructor?: Function;
261
272
  private?: boolean;
262
273
  credential?: boolean;
263
274
  persistent?: boolean;
@@ -285,6 +296,7 @@ export class DEBIAN extends Packager {
285
296
  pattern: RegExp;
286
297
  isKey: boolean;
287
298
  mandatory: boolean;
299
+ constructor?: Function;
288
300
  private?: boolean;
289
301
  credential?: boolean;
290
302
  persistent?: boolean;
@@ -312,6 +324,7 @@ export class DEBIAN extends Packager {
312
324
  pattern: RegExp;
313
325
  isKey: boolean;
314
326
  mandatory: boolean;
327
+ constructor?: Function;
315
328
  private?: boolean;
316
329
  credential?: boolean;
317
330
  persistent?: boolean;
@@ -339,6 +352,7 @@ export class DEBIAN extends Packager {
339
352
  pattern: RegExp;
340
353
  isKey: boolean;
341
354
  mandatory: boolean;
355
+ constructor?: Function;
342
356
  private?: boolean;
343
357
  credential?: boolean;
344
358
  persistent?: boolean;
@@ -366,6 +380,7 @@ export class DEBIAN extends Packager {
366
380
  pattern: RegExp;
367
381
  isKey: boolean;
368
382
  mandatory: boolean;
383
+ constructor?: Function;
369
384
  private?: boolean;
370
385
  credential?: boolean;
371
386
  persistent?: boolean;
@@ -393,6 +408,7 @@ export class DEBIAN extends Packager {
393
408
  pattern: RegExp;
394
409
  isKey: boolean;
395
410
  mandatory: boolean;
411
+ constructor?: Function;
396
412
  private?: boolean;
397
413
  credential?: boolean;
398
414
  persistent?: boolean;
@@ -420,6 +436,7 @@ export class DEBIAN extends Packager {
420
436
  pattern: RegExp;
421
437
  isKey: boolean;
422
438
  mandatory: boolean;
439
+ constructor?: Function;
423
440
  private?: boolean;
424
441
  credential?: boolean;
425
442
  persistent?: boolean;
@@ -447,6 +464,7 @@ export class DEBIAN extends Packager {
447
464
  pattern: RegExp;
448
465
  isKey: boolean;
449
466
  mandatory: boolean;
467
+ constructor?: Function;
450
468
  private?: boolean;
451
469
  credential?: boolean;
452
470
  persistent?: boolean;
@@ -469,6 +487,7 @@ export class DEBIAN extends Packager {
469
487
  writable: boolean;
470
488
  mandatory: boolean;
471
489
  collection: boolean;
490
+ constructor?: Function;
472
491
  private?: boolean;
473
492
  credential?: boolean;
474
493
  persistent?: boolean;
@@ -16,6 +16,7 @@ export class DOCKER extends Packager {
16
16
  isKey: boolean;
17
17
  writable: boolean;
18
18
  collection: boolean;
19
+ constructor?: Function;
19
20
  private?: boolean;
20
21
  credential?: boolean;
21
22
  persistent?: boolean;
@@ -38,6 +39,7 @@ export class DOCKER extends Packager {
38
39
  isKey: boolean;
39
40
  writable: boolean;
40
41
  collection: boolean;
42
+ constructor?: Function;
41
43
  private?: boolean;
42
44
  credential?: boolean;
43
45
  persistent?: boolean;
@@ -59,6 +61,7 @@ export class DOCKER extends Packager {
59
61
  isKey: boolean;
60
62
  writable: boolean;
61
63
  collection: boolean;
64
+ constructor?: Function;
62
65
  private?: boolean;
63
66
  credential?: boolean;
64
67
  persistent?: boolean;
@@ -81,6 +84,7 @@ export class DOCKER extends Packager {
81
84
  writable: boolean;
82
85
  mandatory: boolean;
83
86
  collection: boolean;
87
+ constructor?: Function;
84
88
  private?: boolean;
85
89
  credential?: boolean;
86
90
  persistent?: boolean;
@@ -103,6 +107,7 @@ export class DOCKER extends Packager {
103
107
  isKey: boolean;
104
108
  writable: boolean;
105
109
  collection: boolean;
110
+ constructor?: Function;
106
111
  private?: boolean;
107
112
  credential?: boolean;
108
113
  persistent?: boolean;
@@ -39,9 +39,13 @@ export class Packager {
39
39
  */
40
40
  packageName(name: string): string;
41
41
  get hookMapping(): {};
42
- hookContent(): AsyncGenerator<StringContentEntry, void, unknown>;
43
42
  /**
44
- * forms an expression string form name and expression.
43
+ * Generate hook content entries
44
+ * @return {AsyncIterable<ContentEntry>}
45
+ */
46
+ hookContent(): AsyncIterable<ContentEntry>;
47
+ /**
48
+ * Forms an expression string form name and expression.
45
49
  * If tere is no valid exression name only is delivered.
46
50
  * @param {string} name
47
51
  * @param {string|boolean|undefined} expression
@@ -95,6 +99,7 @@ export const pkgbuild_name_attribute: {
95
99
  isKey: boolean;
96
100
  writable: boolean;
97
101
  collection: boolean;
102
+ constructor?: Function;
98
103
  private?: boolean;
99
104
  credential?: boolean;
100
105
  persistent?: boolean;
@@ -127,6 +132,7 @@ export const dependency_attribute_collection_writable: {
127
132
  pattern: RegExp;
128
133
  isKey: boolean;
129
134
  mandatory: boolean;
135
+ constructor?: Function;
130
136
  private?: boolean;
131
137
  credential?: boolean;
132
138
  persistent?: boolean;
@@ -150,6 +156,7 @@ export const pkgbuild_version_attribute: {
150
156
  isKey: boolean;
151
157
  writable: boolean;
152
158
  collection: boolean;
159
+ constructor?: Function;
153
160
  private?: boolean;
154
161
  credential?: boolean;
155
162
  persistent?: boolean;
@@ -171,6 +178,7 @@ export const pkgbuild_description_attribute: {
171
178
  isKey: boolean;
172
179
  writable: boolean;
173
180
  collection: boolean;
181
+ constructor?: Function;
174
182
  private?: boolean;
175
183
  credential?: boolean;
176
184
  persistent?: boolean;
@@ -196,4 +204,3 @@ export type Field = {
196
204
  default: any;
197
205
  mandatory: boolean;
198
206
  };
199
- import { StringContentEntry } from "content-entry";
@@ -16,6 +16,7 @@ export class RPM extends Packager {
16
16
  isKey: boolean;
17
17
  writable: boolean;
18
18
  collection: boolean;
19
+ constructor?: Function;
19
20
  private?: boolean;
20
21
  credential?: boolean;
21
22
  persistent?: boolean;
@@ -38,6 +39,7 @@ export class RPM extends Packager {
38
39
  isKey: boolean;
39
40
  writable: boolean;
40
41
  collection: boolean;
42
+ constructor?: Function;
41
43
  private?: boolean;
42
44
  credential?: boolean;
43
45
  persistent?: boolean;
@@ -60,6 +62,7 @@ export class RPM extends Packager {
60
62
  isKey: boolean;
61
63
  writable: boolean;
62
64
  collection: boolean;
65
+ constructor?: Function;
63
66
  private?: boolean;
64
67
  credential?: boolean;
65
68
  persistent?: boolean;
@@ -83,6 +86,7 @@ export class RPM extends Packager {
83
86
  isKey: boolean;
84
87
  writable: boolean;
85
88
  collection: boolean;
89
+ constructor?: Function;
86
90
  private?: boolean;
87
91
  credential?: boolean;
88
92
  persistent?: boolean;
@@ -105,6 +109,7 @@ export class RPM extends Packager {
105
109
  isKey: boolean;
106
110
  writable: boolean;
107
111
  collection: boolean;
112
+ constructor?: Function;
108
113
  private?: boolean;
109
114
  credential?: boolean;
110
115
  persistent?: boolean;
@@ -126,6 +131,7 @@ export class RPM extends Packager {
126
131
  writable: boolean;
127
132
  mandatory: boolean;
128
133
  collection: boolean;
134
+ constructor?: Function;
129
135
  private?: boolean;
130
136
  credential?: boolean;
131
137
  persistent?: boolean;
@@ -148,6 +154,7 @@ export class RPM extends Packager {
148
154
  writable: boolean;
149
155
  mandatory: boolean;
150
156
  collection: boolean;
157
+ constructor?: Function;
151
158
  private?: boolean;
152
159
  credential?: boolean;
153
160
  persistent?: boolean;
@@ -170,6 +177,7 @@ export class RPM extends Packager {
170
177
  writable: boolean;
171
178
  mandatory: boolean;
172
179
  collection: boolean;
180
+ constructor?: Function;
173
181
  private?: boolean;
174
182
  credential?: boolean;
175
183
  persistent?: boolean;
@@ -192,6 +200,7 @@ export class RPM extends Packager {
192
200
  writable: boolean;
193
201
  mandatory: boolean;
194
202
  collection: boolean;
203
+ constructor?: Function;
195
204
  private?: boolean;
196
205
  credential?: boolean;
197
206
  persistent?: boolean;
@@ -215,6 +224,7 @@ export class RPM extends Packager {
215
224
  isKey: boolean;
216
225
  writable: boolean;
217
226
  collection: boolean;
227
+ constructor?: Function;
218
228
  private?: boolean;
219
229
  credential?: boolean;
220
230
  persistent?: boolean;
@@ -236,6 +246,7 @@ export class RPM extends Packager {
236
246
  writable: boolean;
237
247
  mandatory: boolean;
238
248
  collection: boolean;
249
+ constructor?: Function;
239
250
  private?: boolean;
240
251
  credential?: boolean;
241
252
  persistent?: boolean;