@gearbox-protocol/deploy-tools 5.57.3 → 5.57.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.
Files changed (2) hide show
  1. package/dist/index.mjs +72 -12
  2. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -114109,7 +114109,7 @@ var require_request = __commonJS({
114109
114109
  }
114110
114110
  };
114111
114111
  exports2.HttpRequestError = HttpRequestError2;
114112
- var WebSocketRequestError = class extends base_js_1.BaseError {
114112
+ var WebSocketRequestError2 = class extends base_js_1.BaseError {
114113
114113
  constructor({ body, cause, details, url: url2 }) {
114114
114114
  super("WebSocket request failed.", {
114115
114115
  cause,
@@ -114122,7 +114122,7 @@ var require_request = __commonJS({
114122
114122
  });
114123
114123
  }
114124
114124
  };
114125
- exports2.WebSocketRequestError = WebSocketRequestError;
114125
+ exports2.WebSocketRequestError = WebSocketRequestError2;
114126
114126
  var RpcRequestError2 = class extends base_js_1.BaseError {
114127
114127
  constructor({ body, error: error46, url: url2 }) {
114128
114128
  super("RPC Request failed.", {
@@ -114148,7 +114148,7 @@ var require_request = __commonJS({
114148
114148
  }
114149
114149
  };
114150
114150
  exports2.RpcRequestError = RpcRequestError2;
114151
- var SocketClosedError = class extends base_js_1.BaseError {
114151
+ var SocketClosedError2 = class extends base_js_1.BaseError {
114152
114152
  constructor({ url: url2 } = {}) {
114153
114153
  super("The socket has been closed.", {
114154
114154
  metaMessages: [url2 && `URL: ${(0, utils_js_1.getUrl)(url2)}`].filter(Boolean),
@@ -114156,7 +114156,7 @@ var require_request = __commonJS({
114156
114156
  });
114157
114157
  }
114158
114158
  };
114159
- exports2.SocketClosedError = SocketClosedError;
114159
+ exports2.SocketClosedError = SocketClosedError2;
114160
114160
  var TimeoutError2 = class extends base_js_1.BaseError {
114161
114161
  constructor({ body, url: url2 }) {
114162
114162
  super("The request took too long to respond.", {
@@ -330387,6 +330387,7 @@ function http(url2, config2 = {}) {
330387
330387
 
330388
330388
  // ../../node_modules/viem/_esm/index.js
330389
330389
  init_abi();
330390
+ init_request();
330390
330391
  init_decodeAbiParameters();
330391
330392
  init_decodeFunctionData();
330392
330393
  init_encodeFunctionData();
@@ -346975,6 +346976,65 @@ var iPoolV300Abi = [
346975
346976
  }
346976
346977
  ];
346977
346978
 
346979
+ // ../../node_modules/@gearbox-protocol/sdk/dist/esm/sdk/utils/viem/getLogsSafe.js
346980
+ async function getLogsSafe(client, params = {}) {
346981
+ try {
346982
+ const events = await getLogs(client, params);
346983
+ return events;
346984
+ } catch (e) {
346985
+ const fromBlock = params.fromBlock;
346986
+ const toBlock = params.toBlock;
346987
+ const bisected = tryBisectBlockRange({ fromBlock, toBlock }, e);
346988
+ if (!bisected) {
346989
+ throw e;
346990
+ }
346991
+ const [left, right] = await Promise.all([
346992
+ getLogsSafe(client, { ...params, ...bisected[0] }),
346993
+ getLogsSafe(client, { ...params, ...bisected[1] })
346994
+ ]);
346995
+ return [...left, ...right];
346996
+ }
346997
+ }
346998
+ function tryBisectBlockRange({ fromBlock, toBlock }, e) {
346999
+ const alchemyMid = checkForAlchemyBlockRange(e);
347000
+ if (alchemyMid && alchemyMid > fromBlock && alchemyMid < toBlock) {
347001
+ return [
347002
+ { fromBlock, toBlock: alchemyMid },
347003
+ { fromBlock: alchemyMid + 1n, toBlock }
347004
+ ];
347005
+ }
347006
+ const blockRangeErrors = [
347007
+ "query exceeds max block",
347008
+ "range is too large",
347009
+ "eth_getLogs is limited to",
347010
+ "eth_getLogs requests with up to"
347011
+ ];
347012
+ if (e instanceof Error && blockRangeErrors.some((errorText) => e.message.includes(errorText))) {
347013
+ const middle = (fromBlock + toBlock) / 2n;
347014
+ return [
347015
+ { fromBlock, toBlock: middle },
347016
+ { fromBlock: middle + 1n, toBlock }
347017
+ ];
347018
+ }
347019
+ return void 0;
347020
+ }
347021
+ var ALCHEMY_BLOCK_RANGE_REGEX = /this block range should work: \[(0x[0-9a-fA-F]+),\s*(0x[0-9a-fA-F]+)\]/;
347022
+ function checkForAlchemyBlockRange(e) {
347023
+ if (e instanceof HttpRequestError) {
347024
+ try {
347025
+ const err = JSON.parse(e.details);
347026
+ if (typeof err.message === "string") {
347027
+ const match2 = err.message.match(ALCHEMY_BLOCK_RANGE_REGEX);
347028
+ if (match2) {
347029
+ return BigInt(match2[2]);
347030
+ }
347031
+ }
347032
+ } catch {
347033
+ }
347034
+ }
347035
+ return void 0;
347036
+ }
347037
+
346978
347038
  // ../../packages/node/dist/Auditor.js
346979
347039
  var import_sdk_gov = __toESM(require_lib3(), 1);
346980
347040
 
@@ -368041,7 +368101,7 @@ var AddressProviderV1Visitor = class extends AbstractVisitor {
368041
368101
  // ../../packages/node/dist/tree/visitors/AddressProviderV3Visitor.js
368042
368102
  var AddressProviderV3Visitor = class extends AbstractVisitor {
368043
368103
  async _visit({ address, lastVisitBlock, discoveryBlock }, client, block) {
368044
- const events = await client.getLogs({
368104
+ const events = await getLogsSafe(client, {
368045
368105
  address,
368046
368106
  event: getAbiItem({
368047
368107
  abi: iAddressProviderV3EventsAbi,
@@ -368348,7 +368408,7 @@ var CreditConfiguratorV3Visitor = class extends AbstractVisitor {
368348
368408
  async _visit(_entry, client, block) {
368349
368409
  const entry = _entry;
368350
368410
  const { address, lastVisitBlock, immutableState } = entry;
368351
- const logs = await client.getLogs({
368411
+ const logs = await getLogsSafe(client, {
368352
368412
  address,
368353
368413
  events: [
368354
368414
  getAbiItem({
@@ -368509,7 +368569,7 @@ var CreditFacadeV3Visitor = class extends AbstractVisitor {
368509
368569
  });
368510
368570
  entry.immutableState.creditManager = creditManager;
368511
368571
  const result = [];
368512
- const logs = await client.getLogs({
368572
+ const logs = await getLogsSafe(client, {
368513
368573
  address,
368514
368574
  events: [
368515
368575
  getAbiItem({ abi: iCreditFacadeV3Abi, name: "OpenCreditAccount" })
@@ -368689,7 +368749,7 @@ var CreditManagerV3Visitor = class extends AbstractVisitor {
368689
368749
  });
368690
368750
  entry.name = `Credit Manager V${version5} ${name}`;
368691
368751
  entry.immutableState.pool = pool;
368692
- const events = await client.getLogs({
368752
+ const events = await getLogsSafe(client, {
368693
368753
  address,
368694
368754
  event: getAbiItem({
368695
368755
  abi: iCreditManagerV3Abi,
@@ -368761,7 +368821,7 @@ var PoolQuotaKeeperV3Visitor = class extends AbstractVisitor {
368761
368821
  async _visit(_entry, client, block) {
368762
368822
  const entry = _entry;
368763
368823
  const { address, lastVisitBlock, immutableState } = entry;
368764
- const events = await client.getLogs({
368824
+ const events = await getLogsSafe(client, {
368765
368825
  address,
368766
368826
  event: getAbiItem({ abi: iPoolQuotaKeeperV3Abi, name: "SetGauge" }),
368767
368827
  fromBlock: BigInt(lastVisitBlock ? lastVisitBlock + 1 : ADDRESS_PROVIDER_BLOCK[this.network]),
@@ -368816,7 +368876,7 @@ var PoolV3Visitor = class extends AbstractVisitor {
368816
368876
  async _visit(_entry, client, block) {
368817
368877
  const entry = _entry;
368818
368878
  const { address, lastVisitBlock, immutableState, version: version5 } = entry;
368819
- const logs = await client.getLogs({
368879
+ const logs = await getLogsSafe(client, {
368820
368880
  address,
368821
368881
  events: [
368822
368882
  getAbiItem({ abi: iPoolV3Abi, name: "SetInterestRateModel" }),
@@ -368928,7 +368988,7 @@ var PriceOracleV2Visitor = class extends AbstractVisitor {
368928
368988
  // ../../packages/node/dist/tree/visitors/PriceOracleV3Visitor.js
368929
368989
  var PriceOracleV3Visitor = class extends AbstractVisitor {
368930
368990
  async _visit({ address, lastVisitBlock }, client, block) {
368931
- const logs = await client.getLogs({
368991
+ const logs = await getLogsSafe(client, {
368932
368992
  address,
368933
368993
  events: [
368934
368994
  getAbiItem({ abi: iPriceOracleV3EventsAbi, name: "SetPriceFeed" }),
@@ -374570,7 +374630,7 @@ function getRenderer(opts) {
374570
374630
  var package_default = {
374571
374631
  name: "@gearbox-protocol/deploy-tools",
374572
374632
  description: "Gearbox deploy tools",
374573
- version: "5.57.3",
374633
+ version: "5.57.5",
374574
374634
  homepage: "https://gearbox.fi",
374575
374635
  keywords: [
374576
374636
  "gearbox"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/deploy-tools",
3
3
  "description": "Gearbox deploy tools",
4
- "version": "5.57.3",
4
+ "version": "5.57.5",
5
5
  "homepage": "https://gearbox.fi",
6
6
  "keywords": [
7
7
  "gearbox"