@speclynx/apidom-core 4.0.3 → 4.0.5

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 CHANGED
@@ -3,6 +3,16 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [4.0.5](https://github.com/speclynx/apidom/compare/v4.0.4...v4.0.5) (2026-03-13)
7
+
8
+ **Note:** Version bump only for package @speclynx/apidom-core
9
+
10
+ ## [4.0.4](https://github.com/speclynx/apidom/compare/v4.0.3...v4.0.4) (2026-03-12)
11
+
12
+ ### Bug Fixes
13
+
14
+ - **release:** override minimatch 10.2.3 to fix glob pattern regression in lerna publish ([#157](https://github.com/speclynx/apidom/issues/157)) ([c2d65a0](https://github.com/speclynx/apidom/commit/c2d65a06a2187e8563a9dc9db74ba27255450e0b)), closes [lerna/lerna#4305](https://github.com/lerna/lerna/issues/4305) [isaacs/minimatch#284](https://github.com/isaacs/minimatch/issues/284)
15
+
6
16
  ## [4.0.3](https://github.com/speclynx/apidom/compare/v4.0.2...v4.0.3) (2026-03-11)
7
17
 
8
18
  ### Bug Fixes
@@ -29082,9 +29082,9 @@ const mergeVisitors = (visitors, options = {}) => {
29082
29082
  }
29083
29083
 
29084
29084
  // Handle path-based control flow
29085
+ // Note: no break here — other merged visitors must still process this node
29085
29086
  if (proxyPath.shouldStop) {
29086
29087
  skipping[i] = breakSymbol;
29087
- break;
29088
29088
  }
29089
29089
  if (proxyPath.shouldSkip) {
29090
29090
  skipping[i] = currentNode;
@@ -29115,6 +29115,11 @@ const mergeVisitors = (visitors, options = {}) => {
29115
29115
  }
29116
29116
  }
29117
29117
  }
29118
+
29119
+ // stop traversal only when all visitors have stopped
29120
+ if (skipping.every(s => s === breakSymbol)) {
29121
+ path.stop();
29122
+ }
29118
29123
  if (hasChanged) {
29119
29124
  path.replaceWith(currentNode);
29120
29125
  return currentNode;
@@ -29140,9 +29145,9 @@ const mergeVisitors = (visitors, options = {}) => {
29140
29145
  }
29141
29146
 
29142
29147
  // Handle path-based control flow
29148
+ // Note: no break here — other merged visitors must still process this node
29143
29149
  if (proxyPath.shouldStop) {
29144
29150
  skipping[i] = breakSymbol;
29145
- break;
29146
29151
  }
29147
29152
  if (proxyPath.removed) {
29148
29153
  path.remove();
@@ -29162,6 +29167,11 @@ const mergeVisitors = (visitors, options = {}) => {
29162
29167
  skipping[i] = internalSkipSymbol;
29163
29168
  }
29164
29169
  }
29170
+
29171
+ // stop traversal only when all visitors have stopped
29172
+ if (skipping.every(s => s === breakSymbol)) {
29173
+ path.stop();
29174
+ }
29165
29175
  return undefined;
29166
29176
  }
29167
29177
  };
@@ -29190,9 +29200,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
29190
29200
  if (typeof visitFn === 'function') {
29191
29201
  const proxyPath = createPathProxy(path, currentNode);
29192
29202
  const result = await visitFn.call(visitors[i], proxyPath);
29203
+
29204
+ // Handle path-based control flow
29205
+ // Note: no break here — other merged visitors must still process this node
29193
29206
  if (proxyPath.shouldStop) {
29194
29207
  skipping[i] = breakSymbol;
29195
- break;
29196
29208
  }
29197
29209
  if (proxyPath.shouldSkip) {
29198
29210
  skipping[i] = currentNode;
@@ -29222,6 +29234,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
29222
29234
  }
29223
29235
  }
29224
29236
  }
29237
+
29238
+ // stop traversal only when all visitors have stopped
29239
+ if (skipping.every(s => s === breakSymbol)) {
29240
+ path.stop();
29241
+ }
29225
29242
  if (hasChanged) {
29226
29243
  path.replaceWith(currentNode);
29227
29244
  return currentNode;
@@ -29236,9 +29253,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
29236
29253
  if (typeof visitFn === 'function') {
29237
29254
  const proxyPath = createPathProxy(path, currentNode);
29238
29255
  const result = await visitFn.call(visitors[i], proxyPath);
29256
+
29257
+ // Handle path-based control flow
29258
+ // Note: no break here — other merged visitors must still process this node
29239
29259
  if (proxyPath.shouldStop) {
29240
29260
  skipping[i] = breakSymbol;
29241
- break;
29242
29261
  }
29243
29262
  if (proxyPath.removed) {
29244
29263
  path.remove();
@@ -29257,6 +29276,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
29257
29276
  skipping[i] = internalSkipSymbol;
29258
29277
  }
29259
29278
  }
29279
+
29280
+ // stop traversal only when all visitors have stopped
29281
+ if (skipping.every(s => s === breakSymbol)) {
29282
+ path.stop();
29283
+ }
29260
29284
  return undefined;
29261
29285
  }
29262
29286
  };