@definitelytyped/utils 0.1.7 → 0.1.8

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
@@ -1,5 +1,11 @@
1
1
  # @definitelytyped/utils
2
2
 
3
+ ## 0.1.8
4
+
5
+ ### Patch Changes
6
+
7
+ - 6a7fc61: Add retry function
8
+
3
9
  ## 0.1.7
4
10
 
5
11
  ### Patch Changes
package/dist/async.d.ts CHANGED
@@ -8,4 +8,5 @@ export declare function filter<T>(iterable: Iterable<T>, predicate: (value: T) =
8
8
  export type Awaitable<T> = T | Promise<T>;
9
9
  export declare function filterNAtATimeOrdered<T>(n: number, inputs: readonly T[], shouldKeep: (input: T) => Awaitable<boolean>, progress?: ProgressOptions<T, boolean>): Promise<T[]>;
10
10
  export declare function logUncaughtErrors<T>(promise: Promise<T> | (() => Promise<T>)): Promise<T>;
11
+ export declare function retry<T>(fn: () => Awaitable<T>, count: number, delaySeconds: number): Promise<T>;
11
12
  export {};
package/dist/async.js CHANGED
@@ -4,8 +4,10 @@ exports.nAtATime = nAtATime;
4
4
  exports.filter = filter;
5
5
  exports.filterNAtATimeOrdered = filterNAtATimeOrdered;
6
6
  exports.logUncaughtErrors = logUncaughtErrors;
7
+ exports.retry = retry;
7
8
  const progress_1 = require("./progress");
8
9
  const collections_1 = require("./collections");
10
+ const miscellany_1 = require("./miscellany");
9
11
  async function nAtATime(n, inputs, use, progressOptions) {
10
12
  const progress = progressOptions ? new progress_1.ProgressBar({ name: progressOptions.name }) : undefined;
11
13
  const results = new Array(inputs.length);
@@ -60,4 +62,17 @@ function logUncaughtErrors(promise) {
60
62
  process.exit(1);
61
63
  });
62
64
  }
65
+ async function retry(fn, count, delaySeconds) {
66
+ let lastError;
67
+ for (let i = 0; i < count; i++) {
68
+ try {
69
+ return await fn();
70
+ }
71
+ catch (e) {
72
+ await (0, miscellany_1.sleep)(delaySeconds);
73
+ lastError = e;
74
+ }
75
+ }
76
+ throw lastError;
77
+ }
63
78
  //# sourceMappingURL=async.js.map
package/dist/async.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"async.js","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async.js","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@definitelytyped/utils",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "Shared utilities for DefinitelyTyped tools",
5
5
  "homepage": "https://github.com/microsoft/DefinitelyTyped-tools/tree/main/packages/utils#readme",
6
6
  "license": "MIT",