rman 2.18.1 → 2.18.2
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/constants.js +1 -1
- package/core/config/merge-config.js +9 -0
- package/package.json +1 -1
package/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '2.18.
|
|
1
|
+
export const version = '2.18.2';
|
|
@@ -114,6 +114,15 @@ origin) {
|
|
|
114
114
|
`\`${plain}: ({ value }) => [...value, 'x']\`, or \`"\${{ [...value, 'x'] }}"\` in YAML. ` +
|
|
115
115
|
`\`value\` is the layers below this one, and spreads as empty when there are none.`);
|
|
116
116
|
}
|
|
117
|
+
/**
|
|
118
|
+
* **An empty key says nothing**, so what the layers below said stands. In YAML a key with
|
|
119
|
+
* nothing after it - `run:` - is `null`, and replacing with it erased the inherited value whole.
|
|
120
|
+
* Measured on `abisena/syncbridge-iomt`: an empty `run:` under `"[*]"` wiped the shared preset's
|
|
121
|
+
* entire `run` block, and `rman build` answered `No package defines a "build" script.`
|
|
122
|
+
* Nothing in rman uses `null` to unset a key, so there is no meaning to lose.
|
|
123
|
+
*/
|
|
124
|
+
if (value === null || value === undefined)
|
|
125
|
+
continue;
|
|
117
126
|
/** `plugins`/`commands`/`publishTargets`: additive at every layer, so the closer one adds
|
|
118
127
|
* rather than takes over. A glob among them is anchored to its own file on the way in - see
|
|
119
128
|
* `anchorContributions`. */
|