npm-pkgbuild 16.0.1 → 16.1.1

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
@@ -99,45 +99,44 @@ See [mf-hosting](https://www.npmjs.com/package/mf-hosting) or [mf-hosting-fronte
99
99
  * [Properties](#properties)
100
100
  * [extractFromPackage](#extractfrompackage)
101
101
  * [Parameters](#parameters-1)
102
- * [NPMPackContentProvider](#npmpackcontentprovider)
102
+ * [BUILDAH](#buildah)
103
+ * [ContentProvider](#contentprovider)
103
104
  * [Parameters](#parameters-2)
104
105
  * [Properties](#properties-1)
105
- * [name](#name)
106
+ * [asyncIterator](#asynciterator)
106
107
  * [FileContentProvider](#filecontentprovider)
107
108
  * [Parameters](#parameters-3)
108
- * [name](#name-1)
109
- * [NFTContentProvider](#nftcontentprovider)
109
+ * [name](#name)
110
+ * [NodeModulesContentProvider](#nodemodulescontentprovider)
110
111
  * [Parameters](#parameters-4)
111
- * [name](#name-2)
112
- * [ContentProvider](#contentprovider)
113
- * [Parameters](#parameters-5)
114
112
  * [Properties](#properties-2)
115
- * [destinationPrefix](#destinationprefix)
116
- * [asyncIterator](#asynciterator)
113
+ * [name](#name-1)
114
+ * [NPMPackContentProvider](#npmpackcontentprovider)
115
+ * [Parameters](#parameters-5)
116
+ * [Properties](#properties-3)
117
+ * [name](#name-2)
118
+ * [NFTContentProvider](#nftcontentprovider)
119
+ * [Parameters](#parameters-6)
120
+ * [name](#name-3)
117
121
  * [hookMapping](#hookmapping)
118
122
  * [hookMapping](#hookmapping-1)
119
123
  * [DEBIAN](#debian)
120
124
  * [prepare](#prepare)
121
- * [Parameters](#parameters-6)
125
+ * [Parameters](#parameters-7)
122
126
  * [fields](#fields)
123
127
  * [fields](#fields-1)
124
128
  * [fields](#fields-2)
125
129
  * [fields](#fields-3)
126
- * [pkgKeyValuePairOptions](#pkgkeyvaluepairoptions)
127
130
  * [quoteFile](#quotefile)
128
- * [Parameters](#parameters-7)
131
+ * [Parameters](#parameters-8)
129
132
  * [RPM](#rpm)
130
133
  * [prepare](#prepare-1)
131
- * [Parameters](#parameters-8)
134
+ * [Parameters](#parameters-9)
135
+ * [pkgKeyValuePairOptions](#pkgkeyvaluepairoptions)
132
136
  * [OCI](#oci)
133
137
  * [DOCKER](#docker)
134
138
  * [prepare](#prepare-2)
135
- * [Parameters](#parameters-9)
136
- * [BUILDAH](#buildah)
137
- * [NodeModulesContentProvider](#nodemodulescontentprovider)
138
- * [Parameters](#parameters-10)
139
- * [Properties](#properties-3)
140
- * [name](#name-3)
139
+ * [Parameters](#parameters-10)
141
140
  * [Packager](#packager)
142
141
  * [Parameters](#parameters-11)
143
142
  * [packageName](#packagename)
@@ -218,8 +217,9 @@ Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Globa
218
217
  ### Properties
219
218
 
220
219
  * `properties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** values describing the package attributes
220
+
221
+ * `properties.dependencies` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** 
221
222
  * `sources` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[ContentProvider](#contentprovider)>** content providers
222
- * `dependencies` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
223
223
  * `output` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** package type
224
224
  * `variant` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** identifier of the variant
225
225
 
@@ -245,24 +245,31 @@ Extract package definition from package.json.
245
245
 
246
246
  Returns **AsyncIterable<[PackageDefinition](#packagedefinition)>**&#x20;
247
247
 
248
- ## NPMPackContentProvider
248
+ ## BUILDAH
249
249
 
250
- **Extends ContentProvider**
250
+ **Extends DOCKER**
251
251
 
252
- Content from npm pack.
252
+ Use buildah @see <https://buildah.io>
253
+
254
+ ## ContentProvider
255
+
256
+ Source of package content.
253
257
 
254
258
  ### Parameters
255
259
 
256
- * `definitions` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
257
- * `entryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** to be set for each entry
260
+ * `definitions` &#x20;
261
+ * `entryProperties` &#x20;
258
262
 
259
263
  ### Properties
260
264
 
261
265
  * `dir` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
266
+ * `transformer` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<Transformer>**&#x20;
262
267
 
263
- ### name
268
+ ### asyncIterator
264
269
 
265
- Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
270
+ List all entries.
271
+
272
+ Returns **AsyncIterable\<ContentEntry>** all entries
266
273
 
267
274
  ## FileContentProvider
268
275
 
@@ -282,47 +289,62 @@ Content provided form the file system.
282
289
 
283
290
  Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
284
291
 
285
- ## NFTContentProvider
292
+ ## NodeModulesContentProvider
286
293
 
287
294
  **Extends ContentProvider**
288
295
 
289
- Content provided form the file system.
296
+ Content from node\_modules.
297
+ Requires .npmrc or NPM\_TOKEN environment
290
298
 
291
299
  ### Parameters
292
300
 
293
- * `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;
294
-
295
- * `definitions.pattern` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>)**&#x20;
296
- * `definitions.base` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** base directory where to find the files
301
+ * `definitions` &#x20;
297
302
  * `entryProperties` &#x20;
298
303
 
304
+ ### Properties
305
+
306
+ * `withoutDevelpmentDependencies` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
307
+
299
308
  ### name
300
309
 
301
310
  Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
302
311
 
303
- ## ContentProvider
312
+ ## NPMPackContentProvider
304
313
 
305
- Source of package content.
314
+ **Extends ContentProvider**
315
+
316
+ Content from npm pack.
306
317
 
307
318
  ### Parameters
308
319
 
309
- * `definitions` &#x20;
310
- * `entryProperties` &#x20;
320
+ * `definitions` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
321
+ * `entryProperties` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** to be set for each entry
311
322
 
312
323
  ### Properties
313
324
 
314
325
  * `dir` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
315
- * `transformer` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<Transformer>**&#x20;
316
326
 
317
- ### destinationPrefix
327
+ ### name
318
328
 
319
- Returns **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [undefined](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined))**&#x20;
329
+ Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
320
330
 
321
- ### asyncIterator
331
+ ## NFTContentProvider
322
332
 
323
- List all entries.
333
+ **Extends ContentProvider**
324
334
 
325
- Returns **AsyncIterable\<ContentEntry>** all entries
335
+ Content provided form the file system.
336
+
337
+ ### Parameters
338
+
339
+ * `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;
340
+
341
+ * `definitions.pattern` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>)**&#x20;
342
+ * `definitions.base` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** base directory where to find the files
343
+ * `entryProperties` &#x20;
344
+
345
+ ### name
346
+
347
+ Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
326
348
 
327
349
  ## hookMapping
328
350
 
@@ -356,21 +378,17 @@ Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/
356
378
 
357
379
  ## fields
358
380
 
359
- well known package properties
360
- <https://www.archlinux.org/pacman/PKGBUILD.5.html>
381
+ * **See**: <https://rpm-packaging-guide.github.io>
361
382
 
362
383
  ## fields
363
384
 
364
- * **See**: <https://rpm-packaging-guide.github.io>
385
+ well known package properties
386
+ <https://www.archlinux.org/pacman/PKGBUILD.5.html>
365
387
 
366
388
  ## fields
367
389
 
368
390
  * **See**: <https://docs.docker.com/engine/reference/builder/>
369
391
 
370
- ## pkgKeyValuePairOptions
371
-
372
- Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)
373
-
374
392
  ## quoteFile
375
393
 
376
394
  ### Parameters
@@ -396,6 +414,10 @@ Check for rpmbuild presence.
396
414
 
397
415
  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
398
416
 
417
+ ## pkgKeyValuePairOptions
418
+
419
+ Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)
420
+
399
421
  ## OCI
400
422
 
401
423
  **Extends Packager**
@@ -421,33 +443,6 @@ Check for docker presence.
421
443
 
422
444
  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
423
445
 
424
- ## BUILDAH
425
-
426
- **Extends DOCKER**
427
-
428
- Use buildah @see <https://buildah.io>
429
-
430
- ## NodeModulesContentProvider
431
-
432
- **Extends ContentProvider**
433
-
434
- Content from node\_modules.
435
- Requires .npmrc or NPM\_TOKEN environment
436
-
437
- ### Parameters
438
-
439
- * `definitions` &#x20;
440
- * `entryProperties` &#x20;
441
-
442
- ### Properties
443
-
444
- * `withoutDevelpmentDependencies` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
445
- * `destinationPrefix` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** base name out output
446
-
447
- ### name
448
-
449
- Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** name of the content provider
450
-
451
446
  ## Packager
452
447
 
453
448
  ### Parameters
@@ -489,10 +484,9 @@ Execute package generation.
489
484
 
490
485
  * `sources` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
491
486
  * `transformer` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>**&#x20;
492
- * `dependencies` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
493
487
  * `publishingDetails` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[PublishingDetail](#publishingdetail)>**&#x20;
494
488
  * `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
495
- * `expander` **function ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)): [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
489
+ * `expander` **function ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)): [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?**&#x20;
496
490
 
497
491
  Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** identifier of the resulting package
498
492
 
@@ -552,10 +546,9 @@ Execute package generation.
552
546
 
553
547
  * `sources` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
554
548
  * `transformer` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>**&#x20;
555
- * `dependencies` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
556
549
  * `publishingDetails` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[PublishingDetail](#publishingdetail)>**&#x20;
557
550
  * `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**&#x20;
558
- * `expander` **function ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)): [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
551
+ * `expander` **function ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)): [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?**&#x20;
559
552
 
560
553
  Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** identifier of the resulting package
561
554
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "npm-pkgbuild",
3
- "version": "16.0.1",
3
+ "version": "16.1.1",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": false
@@ -73,13 +73,13 @@
73
73
  "uti": "^8.7.1"
74
74
  },
75
75
  "devDependencies": {
76
- "@types/node": "^22.13.4",
76
+ "@types/node": "^22.13.8",
77
77
  "ava": "^6.2.0",
78
78
  "c8": "^10.1.3",
79
79
  "documentation": "^14.0.3",
80
80
  "semantic-release": "^24.2.3",
81
81
  "stream-buffers": "^3.0.3",
82
- "typescript": "^5.7.3"
82
+ "typescript": "^5.8.2"
83
83
  },
84
84
  "engines": {
85
85
  "node": ">=22.13.0",
@@ -109,8 +109,8 @@ function* content2Sources(content, dir) {
109
109
  /**
110
110
  * @typedef {Object} PackageDefinition
111
111
  * @property {Object} properties values describing the package attributes
112
+ * @property {Object} properties.dependencies
112
113
  * @property {ContentProvider[]} sources content providers
113
- * @property {Object} dependencies
114
114
  * @property {Object} output package type
115
115
  * @property {Object} variant identifier of the variant
116
116
  * @property {string} variant.name name of the variant
@@ -261,7 +261,7 @@ export async function* extractFromPackage(options = {}, env = {}) {
261
261
 
262
262
  if (packageContent.contributors) {
263
263
  properties.maintainer = packageContent.contributors.map(
264
- c => c.name + (c.email ? ` <${c.email}>` : '')
264
+ c => c.name + (c.email ? ` <${c.email}>` : "")
265
265
  );
266
266
  }
267
267
 
@@ -360,7 +360,7 @@ export async function* extractFromPackage(options = {}, env = {}) {
360
360
  properties
361
361
  };
362
362
 
363
- function* forEachOutput(result) {
363
+ function* forEachOutput(result) {
364
364
  if (Object.entries(result.output).length === 0) {
365
365
  result.context = createContext({ properties: result.properties });
366
366
  result.sources = [];
@@ -384,7 +384,11 @@ export async function* extractFromPackage(options = {}, env = {}) {
384
384
  const properties = {
385
385
  type: name,
386
386
  ...result.properties,
387
- ...output.properties
387
+ ...output.properties,
388
+ dependencies: mergeDependencies(
389
+ result.dependencies,
390
+ output.dependencies
391
+ )
388
392
  };
389
393
 
390
394
  const context = createContext({ properties });
@@ -399,11 +403,7 @@ export async function* extractFromPackage(options = {}, env = {}) {
399
403
  variant: { ...result.variant, output: name },
400
404
  output: { [name]: output },
401
405
  sources,
402
- dependencies: mergeDependencies(
403
- result.dependencies,
404
- output.dependencies
405
- ),
406
- properties : context.expand(properties)
406
+ properties: context.expand(properties)
407
407
  };
408
408
  }
409
409
  }
@@ -56,7 +56,6 @@ program
56
56
  sources,
57
57
  output,
58
58
  variant,
59
- dependencies,
60
59
  context
61
60
  } of extractFromPackage(options, process.env)) {
62
61
  for (const inputFactory of allInputs.filter(
@@ -139,14 +138,13 @@ program
139
138
  console.log("sources:");
140
139
  console.log(" " + sources.join("\n "));
141
140
  console.log("dependencies:");
142
- console.log(kv(dependencies, " "));
141
+ console.log(kv(properties.dependencies, " "));
143
142
  console.log("publish:", publishingDetails.map(pd=>pd.url));
144
143
  }
145
144
 
146
145
  const artifact = await o.create(
147
146
  sources.map(c => c[Symbol.asyncIterator]()),
148
147
  transformer,
149
- dependencies,
150
148
  publishingDetails,
151
149
  options,
152
150
  context.expand
@@ -116,7 +116,7 @@ export class ARCH extends Packager {
116
116
  return `${p.name}-${p.version}-${p.release}-${p.arch}${this.fileNameExtension}`;
117
117
  }
118
118
 
119
- makeDepends(dependencies) {
119
+ makeDepends(dependencies={}) {
120
120
  return Object.entries(dependencies)
121
121
  .filter(filterOutUnwantedDependencies())
122
122
  .map(
@@ -128,7 +128,6 @@ export class ARCH extends Packager {
128
128
  async create(
129
129
  sources,
130
130
  transformer,
131
- dependencies,
132
131
  publishingDetails,
133
132
  options,
134
133
  expander
@@ -147,7 +146,7 @@ export class ARCH extends Packager {
147
146
  yield `
148
147
  package() {
149
148
  depends=(${self
150
- .makeDepends(dependencies)
149
+ .makeDepends(properties.dependencies)
151
150
  .map(v => quote(v))
152
151
  .join(" ")})
153
152
 
@@ -102,7 +102,6 @@ export class DEBIAN extends Packager {
102
102
  async create(
103
103
  sources,
104
104
  transformer,
105
- dependencies,
106
105
  publishingDetails,
107
106
  options,
108
107
  expander
@@ -117,8 +116,8 @@ export class DEBIAN extends Packager {
117
116
  )
118
117
  );
119
118
 
120
- if (Object.keys(dependencies).length > 0) {
121
- properties.Depends = Object.entries(dependencies)
119
+ if (properties.dependencies && Object.keys(properties.dependencies).length > 0) {
120
+ properties.Depends = Object.entries(properties.dependencies)
122
121
  .filter(filterOutUnwantedDependencies())
123
122
  .map(([name, e]) => `${this.packageName(name)} (${e})`);
124
123
  }
@@ -72,7 +72,6 @@ export class DOCKER extends Packager {
72
72
  async create(
73
73
  sources,
74
74
  transformer,
75
- dependencies,
76
75
  options,
77
76
  publishingDetails,
78
77
  expander
@@ -87,7 +86,7 @@ export class DOCKER extends Packager {
87
86
  for (const [k, v] of Object.entries({
88
87
  ...properties.from,
89
88
  ...Object.fromEntries(
90
- Object.entries(dependencies)
89
+ Object.entries(properties.dependencies)
91
90
  .filter(filterOutUnwantedDependencies())
92
91
  .filter(([k, v]) => dependenciesToFrom[k])
93
92
  .map(([k, v]) => [dependenciesToFrom[k], v.replace(/[>=]*/, "")])
@@ -79,7 +79,6 @@ export class OCI extends Packager {
79
79
  async create(
80
80
  sources,
81
81
  transformer,
82
- dependencies,
83
82
  publishingDetails,
84
83
  options,
85
84
  expander = v => v
@@ -157,16 +157,14 @@ export class Packager {
157
157
  * Execute package generation.
158
158
  * @param {Object} sources
159
159
  * @param {Object[]} transformer
160
- * @param {Object} dependencies
161
160
  * @param {PublishingDetail[]} publishingDetails
162
161
  * @param {Object} options
163
- * @param {function(string):string} expander
162
+ * @param {function(string):string?} expander
164
163
  * @return {Promise<string>} identifier of the resulting package
165
164
  */
166
165
  async create(
167
166
  sources,
168
167
  transformer,
169
- dependencies,
170
168
  publishingDetails,
171
169
  options,
172
170
  expander
@@ -94,7 +94,7 @@ export class RPM extends Packager {
94
94
  return false;
95
95
  }
96
96
 
97
- requiresFromDependencies(dependencies) {
97
+ requiresFromDependencies(dependencies={}) {
98
98
  return Object.entries(dependencies)
99
99
  .filter(filterOutUnwantedDependencies())
100
100
  .map(
@@ -112,7 +112,6 @@ export class RPM extends Packager {
112
112
  async create(
113
113
  sources,
114
114
  transformer,
115
- dependencies,
116
115
  publishingDetails,
117
116
  options,
118
117
  expander
@@ -121,7 +120,7 @@ export class RPM extends Packager {
121
120
  options
122
121
  );
123
122
 
124
- properties.Requires = this.requiresFromDependencies(dependencies);
123
+ properties.Requires = this.requiresFromDependencies(properties.dependencies);
125
124
 
126
125
  if (properties.Packager?.length > 1) {
127
126
  // TODO how to write several Packages ?
package/src/util.mjs CHANGED
@@ -5,10 +5,9 @@ import { createWriteStream } from "node:fs";
5
5
  import { ContentEntry } from "content-entry";
6
6
 
7
7
  /**
8
- * @type {Object}
9
- * @property {BufferEncoding} encoding
8
+ * @type {BufferEncoding}
10
9
  */
11
- export const utf8StreamOptions = { encoding: "utf8" };
10
+ export const utf8StreamOptions = "utf8";
12
11
 
13
12
  export function filterOutUnwantedDependencies() {
14
13
  return ([name, version]) => version !== "-";
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @typedef {Object} PackageDefinition
3
3
  * @property {Object} properties values describing the package attributes
4
+ * @property {Object} properties.dependencies
4
5
  * @property {ContentProvider[]} sources content providers
5
- * @property {Object} dependencies
6
6
  * @property {Object} output package type
7
7
  * @property {Object} variant identifier of the variant
8
8
  * @property {string} variant.name name of the variant
@@ -48,12 +48,13 @@ export type PackageDefinition = {
48
48
  /**
49
49
  * values describing the package attributes
50
50
  */
51
- properties: any;
51
+ properties: {
52
+ dependencies: any;
53
+ };
52
54
  /**
53
55
  * content providers
54
56
  */
55
57
  sources: ContentProvider[];
56
- dependencies: any;
57
58
  /**
58
59
  * package type
59
60
  */
@@ -121,7 +121,7 @@ export class ARCH extends Packager {
121
121
  };
122
122
  static prepare(options?: {}, variant?: {}): Promise<boolean>;
123
123
  get packageFileName(): string;
124
- makeDepends(dependencies: any): string[];
125
- create(sources: any, transformer: any, dependencies: any, publishingDetails: any, options: any, expander: any): Promise<string>;
124
+ makeDepends(dependencies?: {}): string[];
125
+ create(sources: any, transformer: any, publishingDetails: any, options: any, expander: any): Promise<string>;
126
126
  }
127
127
  import { Packager } from "./packager.mjs";
@@ -105,7 +105,7 @@ export class DEBIAN extends Packager {
105
105
  }): Promise<boolean>;
106
106
  get packageFileName(): string;
107
107
  hookFiles(properties: any): AsyncGenerator<StringContentEntry, void, unknown>;
108
- create(sources: any, transformer: any, dependencies: any, publishingDetails: any, options: any, expander: any): Promise<string>;
108
+ create(sources: any, transformer: any, publishingDetails: any, options: any, expander: any): Promise<string>;
109
109
  }
110
110
  import { Packager } from "./packager.mjs";
111
111
  import { StringContentEntry } from "content-entry";
@@ -36,7 +36,7 @@ export class DOCKER extends Packager {
36
36
  static prepare(options: any, variant: {
37
37
  arch: string;
38
38
  }): Promise<boolean>;
39
- create(sources: any, transformer: any, dependencies: any, options: any, publishingDetails: any, expander: any): Promise<string>;
39
+ create(sources: any, transformer: any, options: any, publishingDetails: any, expander: any): Promise<string>;
40
40
  publish(artifact: any, publishingDetails: any, properties: any, logger?: (message?: any, ...optionalParams: any[]) => void): Promise<void>;
41
41
  }
42
42
  import { Packager } from "./packager.mjs";
@@ -6,6 +6,6 @@ export class OCI extends Packager {
6
6
  static get fileNameExtension(): string;
7
7
  static prepare(options: any, variant: any): Promise<boolean>;
8
8
  get packageFileName(): string;
9
- create(sources: any, transformer: any, dependencies: any, publishingDetails: any, options: any, expander?: (v: any) => any): Promise<string>;
9
+ create(sources: any, transformer: any, publishingDetails: any, options: any, expander?: (v: any) => any): Promise<string>;
10
10
  }
11
11
  import { Packager } from "./packager.mjs";
@@ -62,13 +62,12 @@ export class Packager {
62
62
  * Execute package generation.
63
63
  * @param {Object} sources
64
64
  * @param {Object[]} transformer
65
- * @param {Object} dependencies
66
65
  * @param {PublishingDetail[]} publishingDetails
67
66
  * @param {Object} options
68
- * @param {function(string):string} expander
67
+ * @param {function(string):string?} expander
69
68
  * @return {Promise<string>} identifier of the resulting package
70
69
  */
71
- create(sources: any, transformer: any[], dependencies: any, publishingDetails: PublishingDetail[], options: any, expander: (arg0: string) => string): Promise<string>;
70
+ create(sources: any, transformer: any[], publishingDetails: PublishingDetail[], options: any, expander: (arg0: string) => string | null): Promise<string>;
72
71
  publish(artifact: any, publishingDetails: any, properties: any, logger: any): Promise<void>;
73
72
  #private;
74
73
  }
@@ -84,8 +84,8 @@ export class RPM extends Packager {
84
84
  arch: string;
85
85
  }): Promise<boolean>;
86
86
  get packageFileName(): string;
87
- requiresFromDependencies(dependencies: any): string[];
88
- create(sources: any, transformer: any, dependencies: any, publishingDetails: any, options: any, expander: any): Promise<string>;
87
+ requiresFromDependencies(dependencies?: {}): string[];
88
+ create(sources: any, transformer: any, publishingDetails: any, options: any, expander: any): Promise<string>;
89
89
  }
90
90
  export type PublishingDetail = import("../publish.mjs").PublishingDetail;
91
91
  import { Packager } from "./packager.mjs";
package/types/util.d.mts CHANGED
@@ -40,10 +40,9 @@ export function fieldProvider(properties: any, fields: any): Function;
40
40
  */
41
41
  export function copyEntries(source: AsyncIterable<ContentEntry>, destinationDirectory: string, expander?: Expander): AsyncGenerator<ContentEntry, void, unknown>;
42
42
  /**
43
- * @type {Object}
44
- * @property {BufferEncoding} encoding
43
+ * @type {BufferEncoding}
45
44
  */
46
- export const utf8StreamOptions: any;
45
+ export const utf8StreamOptions: BufferEncoding;
47
46
  export type FunctionDecl = {
48
47
  name: string;
49
48
  body: string;