@openrewrite/rewrite 8.94.0-20261025-063426 → 8.94.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/dist/javascript/recipes/async-callback-in-sync-array-method.d.ts.map +1 -1
- package/dist/javascript/recipes/async-callback-in-sync-array-method.js +9 -1
- package/dist/javascript/recipes/async-callback-in-sync-array-method.js.map +1 -1
- package/dist/rewrite-javascript-version.txt +1 -1
- package/dist/rpc/request/batch-visit.js +1 -1
- package/dist/rpc/request/batch-visit.js.map +1 -1
- package/dist/test/rewrite-test.d.ts.map +1 -1
- package/dist/test/rewrite-test.js +12 -9
- package/dist/test/rewrite-test.js.map +1 -1
- package/package.json +1 -1
- package/src/javascript/recipes/async-callback-in-sync-array-method.ts +11 -1
- package/src/rpc/request/batch-visit.ts +1 -1
- package/src/test/rewrite-test.ts +12 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-callback-in-sync-array-method.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/async-callback-in-sync-array-method.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"async-callback-in-sync-array-method.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/async-callback-in-sync-array-method.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAoK1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,8BAA+B,SAAQ,MAAM;IACtD,QAAQ,CAAC,IAAI,4EAA4E;IACzF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAyD;IACrF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAiL;IAC7M,QAAQ,CAAC,IAAI,WAA2D;IAElE,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CA6B9D"}
|
|
@@ -22,6 +22,7 @@ const java_1 = require("../../java");
|
|
|
22
22
|
const tree_1 = require("../tree");
|
|
23
23
|
const java_2 = require("../../java");
|
|
24
24
|
const markers_1 = require("../../markers");
|
|
25
|
+
const method_matcher_1 = require("../method-matcher");
|
|
25
26
|
/**
|
|
26
27
|
* Array methods that don't await async callbacks.
|
|
27
28
|
* When an async function is passed as a callback to these methods,
|
|
@@ -35,6 +36,13 @@ const SYNC_ARRAY_METHODS = new Set([
|
|
|
35
36
|
'filter', // Filters based on truthy values, but Promise is always truthy
|
|
36
37
|
'forEach', // Ignores return values entirely, async callbacks won't be awaited
|
|
37
38
|
]);
|
|
39
|
+
// Tuples, `T[]` and array subclasses that don't override the method all declare it on one of these.
|
|
40
|
+
const ARRAY_DECLARING_TYPES = [new method_matcher_1.MethodMatcher('Array *(..)'), new method_matcher_1.MethodMatcher('ReadonlyArray *(..)')];
|
|
41
|
+
/** A receiver without type attribution may still be an array, so its call is kept. */
|
|
42
|
+
function isArrayMethodOrUntyped(method) {
|
|
43
|
+
return !method || method.declaringType.kind === java_2.Type.Kind.Unknown ||
|
|
44
|
+
ARRAY_DECLARING_TYPES.some(matcher => matcher.matches(method));
|
|
45
|
+
}
|
|
38
46
|
/**
|
|
39
47
|
* Check if a type is a Promise type.
|
|
40
48
|
* Looks for types like Promise<T>, PromiseLike<T>, or the Promise class itself.
|
|
@@ -195,7 +203,7 @@ class AsyncCallbackInSyncArrayMethod extends recipe_1.Recipe {
|
|
|
195
203
|
var _a, _b;
|
|
196
204
|
let m = await super.visitMethodInvocation(method, ctx);
|
|
197
205
|
const methodName = (_a = m.name) === null || _a === void 0 ? void 0 : _a.simpleName;
|
|
198
|
-
if (!methodName || !SYNC_ARRAY_METHODS.has(methodName)) {
|
|
206
|
+
if (!methodName || !SYNC_ARRAY_METHODS.has(methodName) || !isArrayMethodOrUntyped(m.methodType)) {
|
|
199
207
|
return m;
|
|
200
208
|
}
|
|
201
209
|
// Check the arguments for async callbacks
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-callback-in-sync-array-method.js","sourceRoot":"","sources":["../../../src/javascript/recipes/async-callback-in-sync-array-method.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,yCAAoC;AAGpC,wCAA6C;AAC7C,qCAA6B;AAC7B,kCAA2B;AAC3B,qCAAgC;AAChC,2CAAyC;
|
|
1
|
+
{"version":3,"file":"async-callback-in-sync-array-method.js","sourceRoot":"","sources":["../../../src/javascript/recipes/async-callback-in-sync-array-method.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
8.94.0
|
|
1
|
+
8.94.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batch-visit.js","sourceRoot":"","sources":["../../../src/rpc/request/batch-visit.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"batch-visit.js","sourceRoot":"","sources":["../../../src/rpc/request/batch-visit.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAA2C;AAG3C,2CAA0C;AAC1C,2CAAwD;AACxD,mCAA8B;AAC9B,+CAAiD;AACjD,iDAAkE;AAClE,uCAAsC;AA0BtC,KAAK,UAAU,sBAAsB,CAAC,IAA6B;IAC/D,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,CAAC,IAAI;QAAE,OAAO,GAAG,CAAC;IAEtB,MAAM,IAAI,KAAM,SAAQ,qBAA6B;QACvC,KAAK,CAAC,WAAW,CAAC,MAAW,EAAE,GAAgB;YACrD,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,qBAAW,CAAC,YAAY,EAAE,CAAC;gBACrD,GAAG,CAAC,GAAG,CAAE,MAAuB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC1C,CAAC;KACJ,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACrB,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAa,UAAU;IACnB,MAAM,CAAC,MAAM,CAAC,UAAiC,EACjC,YAA8B,EAC9B,eAAoC,EACpC,aAAsC,EACtC,SAAuD,EACvD,oBAA8C,EAC9C,SAAwF,EACxF,cAAgD,EAChD,UAAmB;QAC7B,UAAU,CAAC,SAAS,CAChB,IAAI,GAAG,CAAC,WAAW,CAA+C,YAAY,CAAC,EAC/E,IAAA,qBAAW,EACP,YAAY,EACZ,UAAU,EACV,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC5B,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;YAC/B,IAAI,KAAK,IAAI,CAAC,YAAY,4BAAgB,EAAE,CAAC;gBACzC,CAAC,CAAC,QAAQ,CAAC,6BAAgB,CAAC,GAAG,KAAK,CAAC;YACzC,CAAC;YACD,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrC,IAAI,IAAI,GAAS,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YAEvE,MAAM,OAAO,GAAuB,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAEpD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAClC,8BAA8B;gBAC9B,MAAM,OAAO,GAAG,MAAM,aAAK,CAAC,kBAAkB,CAC1C,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAC,EAC5D,eAAe,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;gBACvC,mDAAmD;gBACnD,iDAAiD;gBACjD,MAAM,OAAO,GAAG,IAAI,GAAG,CACnB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAwB,CACrD,CAAC;gBACF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;gBAEnD,MAAM,QAAQ,GAAG,KAAK,KAAK,IAAI,CAAC;gBAChC,MAAM,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC;gBAE9B,IAAI,cAAc,GAAG,KAAK,CAAC;gBAC3B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC1C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClB,cAAc,GAAG,IAAI,CAAC;wBACtB,MAAM;oBACV,CAAC;gBACL,CAAC;gBAED,gDAAgD;gBAChD,IAAI,eAAyB,CAAC;gBAC9B,IAAI,OAAO,EAAE,CAAC;oBACV,eAAe,GAAG,EAAE,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACJ,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBACrD,eAAe,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;oBAChE,KAAK,MAAM,EAAE,IAAI,eAAe;wBAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvD,CAAC;gBAED,OAAO,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAC,CAAC,CAAC;gBAEnE,IAAI,OAAO,EAAE,CAAC;oBACV,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBACpC,OAAO,EAAC,OAAO,EAAC,CAAC;gBACrB,CAAC;gBAED,IAAI,QAAQ,EAAE,CAAC;oBACX,IAAI,GAAG,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;YAED,mCAAmC;YACnC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACf,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC3C,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;oBACxC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC3C,CAAC;YACL,CAAC;YAED,OAAO,EAAC,OAAO,EAAC,CAAC;QACrB,CAAC,CACJ,CACJ,CAAC;IACN,CAAC;CACJ;AAtFD,gCAsFC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite-test.d.ts","sourceRoot":"","sources":["../../src/test/rewrite-test.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAc,WAAW,EAAC,MAAM,YAAY,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AAEjC,OAAO,EAA6B,UAAU,EAAC,MAAM,SAAS,CAAC;AAU/D,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,UAAU;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,MAAM,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,GAAG,EAAE,MAAM,CAAA;CACd;AAYD,qBAAa,UAAU;IACnB,0BAA0B,EAAE,OAAO,CAAO;IAC1C,cAAc,EAAE,OAAO,CAAQ;IAE/B;;;OAGG;IACH,yBAAyB,EAAE,OAAO,CAAO;IAEzC,MAAM,EAAE,MAAM,CAAmB;IAEjC;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAA0B;IAE5D;;OAEG;IACH,sBAAsB,EAAE,gBAAgB,CAAyB;IAEjE,OAAO,CAAC,mBAAmB,CAA+C;IAM1E,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAe;IACnC,OAAO,CAAC,kBAAkB,CAAC,CAA0B;;IAMrD,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI;IAI3D,OAAO,CAAC,aAAa;IAWrB,gFAAgF;IAChF,MAAM,CAAC,uBAAuB,IAAI,IAAI;IAItC,4EAA4E;IAC5E,MAAM,CAAC,yBAAyB,IAAI,IAAI;IAMxC,oDAAoD;IACpD,MAAM,CAAC,yBAAyB,IAAI,IAAI;IASxC,qFAAqF;IACrF,MAAM,CAAC,gBAAgB,IAAI,IAAI;IAI/B;;;;OAIG;IACG,UAAU,CAAC,GAAG,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YA2EnJ,qBAAqB;YASrB,2BAA2B;IAazC;;;OAGG;YACW,oBAAoB;IAoDlC;;;OAGG;YACW,oBAAoB;YAYpB,yBAAyB;
|
|
1
|
+
{"version":3,"file":"rewrite-test.d.ts","sourceRoot":"","sources":["../../src/test/rewrite-test.ts"],"names":[],"mappings":"AAeA,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAc,WAAW,EAAC,MAAM,YAAY,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AAEjC,OAAO,EAA6B,UAAU,EAAC,MAAM,SAAS,CAAC;AAU/D,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,UAAU;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,MAAM,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,GAAG,EAAE,MAAM,CAAA;CACd;AAYD,qBAAa,UAAU;IACnB,0BAA0B,EAAE,OAAO,CAAO;IAC1C,cAAc,EAAE,OAAO,CAAQ;IAE/B;;;OAGG;IACH,yBAAyB,EAAE,OAAO,CAAO;IAEzC,MAAM,EAAE,MAAM,CAAmB;IAEjC;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAA0B;IAE5D;;OAEG;IACH,sBAAsB,EAAE,gBAAgB,CAAyB;IAEjE,OAAO,CAAC,mBAAmB,CAA+C;IAM1E,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAe;IACnC,OAAO,CAAC,kBAAkB,CAAC,CAA0B;;IAMrD,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI;IAI3D,OAAO,CAAC,aAAa;IAWrB,gFAAgF;IAChF,MAAM,CAAC,uBAAuB,IAAI,IAAI;IAItC,4EAA4E;IAC5E,MAAM,CAAC,yBAAyB,IAAI,IAAI;IAMxC,oDAAoD;IACpD,MAAM,CAAC,yBAAyB,IAAI,IAAI;IASxC,qFAAqF;IACrF,MAAM,CAAC,gBAAgB,IAAI,IAAI;IAI/B;;;;OAIG;IACG,UAAU,CAAC,GAAG,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YA2EnJ,qBAAqB;YASrB,2BAA2B;IAazC;;;OAGG;YACW,oBAAoB;IAoDlC;;;OAGG;YACW,oBAAoB;YAYpB,yBAAyB;YA2CzB,oBAAoB;YAapB,WAAW;IAqBzB;;OAEG;YACW,KAAK;YAmBL,mDAAmD;CAMpE;AAqHD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;AAEnG;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAyCxC;AAED,wBAAgB,WAAW,CAAC,CAAC,CAAC,EAAE,eAAe,GAAG,eAAe,CAchE;AAGD,qBAAa,WAAY,SAAQ,MAAM;IAKvB,OAAO,CAAC,OAAO;IAJ3B,IAAI,SAA0B;IAC9B,WAAW,SAAW;IACtB,WAAW,SAAY;gBAEH,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC;IAI5C,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;CAGjD;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,CAElE"}
|
|
@@ -275,18 +275,21 @@ class RecipeSpec {
|
|
|
275
275
|
}
|
|
276
276
|
async expectResultsToMatchAfter(specs, changeset, parsed) {
|
|
277
277
|
for (const spec of specs) {
|
|
278
|
+
if (spec.before === null) {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
278
281
|
const matchingSpec = parsed.find(([s, _]) => s === spec);
|
|
279
|
-
const result = changeset.find(c =>
|
|
280
|
-
|
|
281
|
-
|
|
282
|
+
const result = changeset.find(c => c.before === matchingSpec[1]);
|
|
283
|
+
const after = result === null || result === void 0 ? void 0 : result.after;
|
|
284
|
+
if (spec.after === null) {
|
|
285
|
+
if (!result || after) {
|
|
286
|
+
throw new Error('Expected recipe to delete file:\n' + (0, util_1.trimIndent)(spec.before));
|
|
282
287
|
}
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
288
|
+
}
|
|
289
|
+
else if (!spec.after) {
|
|
290
|
+
if (result && !after) {
|
|
291
|
+
throw new Error('Expected no change but recipe deleted the file:\n' + (0, util_1.trimIndent)(spec.before));
|
|
286
292
|
}
|
|
287
|
-
});
|
|
288
|
-
const after = result === null || result === void 0 ? void 0 : result.after;
|
|
289
|
-
if (!spec.after) {
|
|
290
293
|
if (after && after !== (result === null || result === void 0 ? void 0 : result.before)) {
|
|
291
294
|
const actual = await print_1.TreePrinters.print(after);
|
|
292
295
|
const expected = dedent(spec.before);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewrite-test.js","sourceRoot":"","sources":["../../src/test/rewrite-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rewrite-test.js","sourceRoot":"","sources":["../../src/test/rewrite-test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -22,6 +22,7 @@ import {J} from "../../java";
|
|
|
22
22
|
import {JS} from "../tree";
|
|
23
23
|
import {Type} from "../../java";
|
|
24
24
|
import {markupWarn} from "../../markers";
|
|
25
|
+
import {MethodMatcher} from "../method-matcher";
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
28
|
* Array methods that don't await async callbacks.
|
|
@@ -37,6 +38,15 @@ const SYNC_ARRAY_METHODS = new Set([
|
|
|
37
38
|
'forEach', // Ignores return values entirely, async callbacks won't be awaited
|
|
38
39
|
]);
|
|
39
40
|
|
|
41
|
+
// Tuples, `T[]` and array subclasses that don't override the method all declare it on one of these.
|
|
42
|
+
const ARRAY_DECLARING_TYPES = [new MethodMatcher('Array *(..)'), new MethodMatcher('ReadonlyArray *(..)')];
|
|
43
|
+
|
|
44
|
+
/** A receiver without type attribution may still be an array, so its call is kept. */
|
|
45
|
+
function isArrayMethodOrUntyped(method?: Type.Method): boolean {
|
|
46
|
+
return !method || method.declaringType.kind === Type.Kind.Unknown ||
|
|
47
|
+
ARRAY_DECLARING_TYPES.some(matcher => matcher.matches(method));
|
|
48
|
+
}
|
|
49
|
+
|
|
40
50
|
/**
|
|
41
51
|
* Check if a type is a Promise type.
|
|
42
52
|
* Looks for types like Promise<T>, PromiseLike<T>, or the Promise class itself.
|
|
@@ -211,7 +221,7 @@ export class AsyncCallbackInSyncArrayMethod extends Recipe {
|
|
|
211
221
|
let m = await super.visitMethodInvocation(method, ctx) as J.MethodInvocation;
|
|
212
222
|
|
|
213
223
|
const methodName = m.name?.simpleName;
|
|
214
|
-
if (!methodName || !SYNC_ARRAY_METHODS.has(methodName)) {
|
|
224
|
+
if (!methodName || !SYNC_ARRAY_METHODS.has(methodName) || !isArrayMethodOrUntyped(m.methodType)) {
|
|
215
225
|
return m;
|
|
216
226
|
}
|
|
217
227
|
|
package/src/test/rewrite-test.ts
CHANGED
|
@@ -303,18 +303,21 @@ export class RecipeSpec {
|
|
|
303
303
|
|
|
304
304
|
private async expectResultsToMatchAfter(specs: SourceSpec<any>[], changeset: Result[], parsed: [SourceSpec<any>, SourceFile][]) {
|
|
305
305
|
for (const spec of specs) {
|
|
306
|
+
if (spec.before === null) {
|
|
307
|
+
continue;
|
|
308
|
+
}
|
|
306
309
|
const matchingSpec = parsed.find(([s, _]) => s === spec);
|
|
307
|
-
const result = changeset.find(c =>
|
|
308
|
-
if (c.before) {
|
|
309
|
-
return c.before === matchingSpec![1];
|
|
310
|
-
} else if (c.after) {
|
|
311
|
-
const matchingSpec = specs.find(s => s.path === c.after!.sourcePath);
|
|
312
|
-
return !!matchingSpec;
|
|
313
|
-
}
|
|
314
|
-
});
|
|
310
|
+
const result = changeset.find(c => c.before === matchingSpec![1]);
|
|
315
311
|
const after = result?.after;
|
|
316
312
|
|
|
317
|
-
if (
|
|
313
|
+
if (spec.after === null) {
|
|
314
|
+
if (!result || after) {
|
|
315
|
+
throw new Error('Expected recipe to delete file:\n' + trimIndent(spec.before));
|
|
316
|
+
}
|
|
317
|
+
} else if (!spec.after) {
|
|
318
|
+
if (result && !after) {
|
|
319
|
+
throw new Error('Expected no change but recipe deleted the file:\n' + trimIndent(spec.before));
|
|
320
|
+
}
|
|
318
321
|
if (after && after !== result?.before) {
|
|
319
322
|
const actual = await TreePrinters.print(after);
|
|
320
323
|
const expected = dedent(spec.before!);
|