@pnpm/yaml.document-sync 1000.0.0 → 1100.0.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/CHANGELOG.md ADDED
@@ -0,0 +1,7 @@
1
+ # @pnpm/yaml.document-sync
2
+
3
+ ## 1100.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Republished every package: the tarballs published by the v11.13.1 through v11.16.0 releases were missing most of their compiled files due to a packing bug [#13164](https://github.com/pnpm/pnpm/issues/13164).
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  > Update a YAML document to match the contents of an in-memory object.
4
4
 
5
5
  <!--@shields('npm')-->
6
- [![npm version](https://img.shields.io/npm/v/@pnpm/yaml.document-sync.svg)](https://www.npmjs.com/package/@pnpm/yaml.document-sync)
6
+ [![npm version](https://img.shields.io/npm/v/@pnpm/yaml.document-sync.svg)](https://npmx.dev/package/@pnpm/yaml.document-sync)
7
7
  <!--/@-->
8
8
 
9
9
  ## Installation
@@ -64,7 +64,7 @@ qux:
64
64
 
65
65
  This package is useful when your codebase:
66
66
 
67
- 1. Uses the [yaml](https://www.npmjs.com/package/yaml) library.
67
+ 1. Uses the [yaml](https://npmx.dev/package/yaml) library.
68
68
  2. Calls `.toJSON()` on the parse result and performs changes to it.
69
69
  3. Needs to "sync" those changes back to the source document.
70
70
 
package/lib/index.js CHANGED
@@ -1,6 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.patchDocument = void 0;
4
- var patchDocument_js_1 = require("./patchDocument.js");
5
- Object.defineProperty(exports, "patchDocument", { enumerable: true, get: function () { return patchDocument_js_1.patchDocument; } });
1
+ export { patchDocument } from './patchDocument.js';
6
2
  //# sourceMappingURL=index.js.map
@@ -1,10 +1,4 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.patchDocument = patchDocument;
7
- const yaml_1 = __importDefault(require("yaml"));
1
+ import yaml from 'yaml';
8
2
  /**
9
3
  * Recursively update a YAML document (in-place) to match the contents of a
10
4
  * target value.
@@ -12,7 +6,7 @@ const yaml_1 = __importDefault(require("yaml"));
12
6
  * Comments are preserved on a best-effort basis. There are several cases where
13
7
  * ambiguity arises. See this package's README.md for details.
14
8
  */
15
- function patchDocument(document, target, options) {
9
+ export function patchDocument(document, target, options) {
16
10
  // Documents with errors can't be stringified and have unpredictable ASTs.
17
11
  if (document.errors.length > 0) {
18
12
  throw new Error('Document with errors cannot be patched');
@@ -29,19 +23,18 @@ function patchNode(node, target, ctx) {
29
23
  if (target == null) {
30
24
  return null;
31
25
  }
32
- if (yaml_1.default.isAlias(node)) {
26
+ if (yaml.isAlias(node)) {
33
27
  return patchAlias(node, target, ctx);
34
28
  }
35
- if (yaml_1.default.isScalar(node)) {
29
+ if (yaml.isScalar(node)) {
36
30
  return patchScalar(node, target, ctx);
37
31
  }
38
- if (yaml_1.default.isMap(node)) {
32
+ if (yaml.isMap(node)) {
39
33
  return patchMap(node, target, ctx);
40
34
  }
41
- if (yaml_1.default.isSeq(node)) {
35
+ if (yaml.isSeq(node)) {
42
36
  return patchSeq(node, target, ctx);
43
37
  }
44
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
45
38
  const _never = node;
46
39
  throw new Error('Unrecognized yaml node: ' + String(node));
47
40
  }
@@ -91,7 +84,7 @@ function patchMap(map, target, ctx) {
91
84
  for (const pair of map.items) {
92
85
  // We can't update non-node types. Pairs should only contain values that are
93
86
  // non-nodes if the yaml document was modified manually after parsing.
94
- if (!yaml_1.default.isScalar(pair.key) || typeof pair.key.value !== 'string') {
87
+ if (!yaml.isScalar(pair.key) || typeof pair.key.value !== 'string') {
95
88
  throw new Error('Encountered unexpected non-node value: ' + String(pair.key));
96
89
  }
97
90
  mapKeyToExistingPair.set(pair.key.value, pair);
@@ -102,7 +95,7 @@ function patchMap(map, target, ctx) {
102
95
  if (existingPair == null) {
103
96
  return ctx.document.createPair(key, value);
104
97
  }
105
- if (!yaml_1.default.isNode(existingPair.value)) {
98
+ if (!yaml.isNode(existingPair.value)) {
106
99
  throw new Error('Encountered unexpected non-node value: ' + String(existingPair.value));
107
100
  }
108
101
  existingPair.value = patchNode(existingPair.value, value, ctx);
@@ -134,13 +127,13 @@ function patchSeqPrimitive(seq, target) {
134
127
  // important to reuse them when possible.
135
128
  const valueToNodesMap = new Map();
136
129
  for (const item of seq.items) {
137
- if (item != null && !yaml_1.default.isNode(item)) {
130
+ if (item != null && !yaml.isNode(item)) {
138
131
  throw new Error('Encountered unexpected non-node value: ' + String(item));
139
132
  }
140
133
  // We know all items in the target list are scalars. If there's a non-scalar
141
134
  // in the source list, it needs to be removed. Skip over this item so it's
142
135
  // not added to the final list.
143
- if (!yaml_1.default.isScalar(item) || !isPrimitive(item.value) || item.value == null) {
136
+ if (!yaml.isScalar(item) || !isPrimitive(item.value) || item.value == null) {
144
137
  continue;
145
138
  }
146
139
  const nodeList = valueToNodesMap.get(item.value) ?? [];
@@ -155,7 +148,7 @@ function patchSeqPrimitive(seq, target) {
155
148
  if (existingNodesList?.length === 0) {
156
149
  valueToNodesMap.delete(item);
157
150
  }
158
- return firstExistingItem ?? new yaml_1.default.Scalar(item);
151
+ return firstExistingItem ?? new yaml.Scalar(item);
159
152
  });
160
153
  return seq;
161
154
  }
@@ -164,7 +157,7 @@ function patchSeqComplex(seq, target, ctx) {
164
157
  for (let i = 0; i < Math.max(seq.items.length, target.length); i++) {
165
158
  const existingItem = seq.items[i];
166
159
  const targetItem = target[i];
167
- if (existingItem != null && !yaml_1.default.isNode(existingItem)) {
160
+ if (existingItem != null && !yaml.isNode(existingItem)) {
168
161
  throw new Error('Encountered unexpected non-node value: ' + String(existingItem));
169
162
  }
170
163
  const nextItem = patchNode(existingItem, targetItem, ctx);
package/package.json CHANGED
@@ -1,21 +1,24 @@
1
1
  {
2
2
  "name": "@pnpm/yaml.document-sync",
3
- "version": "1000.0.0",
3
+ "version": "1100.0.1",
4
4
  "description": "Update a YAML document to match the contents of an in-memory object.",
5
5
  "keywords": [
6
6
  "pnpm",
7
- "pnpm10",
7
+ "pnpm11",
8
8
  "patch",
9
9
  "yaml"
10
10
  ],
11
11
  "license": "MIT",
12
12
  "funding": "https://opencollective.com/pnpm",
13
- "repository": "https://github.com/pnpm/pnpm/tree/main/yaml/document-sync",
14
- "homepage": "https://github.com/pnpm/pnpm/tree/main/yaml/document-sync#readme",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "https://github.com/pnpm/pnpm/tree/main/pnpm11/yaml/document-sync"
16
+ },
17
+ "homepage": "https://github.com/pnpm/pnpm/tree/main/pnpm11/yaml/document-sync#readme",
15
18
  "bugs": {
16
19
  "url": "https://github.com/pnpm/pnpm/issues"
17
20
  },
18
- "type": "commonjs",
21
+ "type": "module",
19
22
  "main": "lib/index.js",
20
23
  "types": "lib/index.d.ts",
21
24
  "exports": {
@@ -26,21 +29,22 @@
26
29
  "!*.map"
27
30
  ],
28
31
  "dependencies": {
29
- "yaml": "^2.8.1"
32
+ "yaml": "^2.9.0"
30
33
  },
31
34
  "devDependencies": {
32
- "@pnpm/yaml.document-sync": "1000.0.0"
35
+ "@jest/globals": "30.4.1",
36
+ "@pnpm/yaml.document-sync": "1100.0.1"
33
37
  },
34
38
  "engines": {
35
- "node": ">=18.12"
39
+ "node": ">=22.13"
36
40
  },
37
41
  "jest": {
38
42
  "preset": "@pnpm/jest-config"
39
43
  },
40
44
  "scripts": {
41
- "test": "pnpm run compile && pnpm run _test",
42
- "compile": "tsc --build && pnpm run lint --fix",
45
+ "test": "pn compile && pn .test",
46
+ "compile": "tsgo --build && pn lint --fix",
43
47
  "lint": "eslint \"src/**/*.ts\" \"test/**/*.ts\"",
44
- "_test": "jest"
48
+ ".test": "cross-env NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules --disable-warning=ExperimentalWarning --disable-warning=DEP0169\" jest"
45
49
  }
46
50
  }
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uDAAkD;AAAzC,iHAAA,aAAa,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"patchDocument.js","sourceRoot":"","sources":["../src/patchDocument.ts"],"names":[],"mappings":"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"}