Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency @shazow/whatsabi to ^0.17.0 #298

Merged
merged 1 commit into from
Dec 10, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 10, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@shazow/whatsabi ^0.13.2 -> ^0.17.0 age adoption passing confidence

Release Notes

shazow/whatsabi (@​shazow/whatsabi)

v0.17.0

Compare Source

Summary

  • Switched from ethers.js to Ox as our utility library (mainly for things like encoding/decoding ABIs).
    • Reduced the bundle size from 15.34kb ➡ 13.87kb (before new features below).
    • Big thanks to @​jxom for the hands-on support.
  • Added Blockscout ABI loader.
// Make a MultiABILoader that includes BlockscoutABILoader
const abiLoader = new whatsabi.loaders.MultiABILoader([
  new whatsabi.loaders.SourcifyABILoader(),
  new whatsabi.loaders.EtherscanABILoader({
    apiKey: "...", // Replace the value with your Etherscan API key
  }),
  new whatsabi.loaders.BlockscoutABILoader({
    apiKey: "...", // Replace the value with your Blockscout API key
  }),
]);

{
  // Can use it separately
  const result = await loader.getContract("0x7a250d5630b4cf539739df2c5dacb4c659f2488d");
}

{
  // Or let autoload use it for us
  const result = whatsabi.autoload(address, { provider, abiLoader });
}

What's Changed

Full Changelog: shazow/whatsabi@v0.16.0...v0.17.0

v0.16.0

Compare Source

Summary

  • Improved whatsabi's disassembly so that it's more precise about where the runnable code section is. This helps reduce false positives, and improves finding proxy slots pulled in from the data section using CODECOPY.
  • Added AutoloadResult.isFactory when a CREATE or CREATE2 opcode is detected. This means that some of the results could be attributed to bytecode that is deployed by the factory, rather than the factory itself. That said, false positives like this should be further mitigated by the previous improvement!
  • Deduplicated experimental event results.

What's Changed

Full Changelog: shazow/whatsabi@v0.15.4...v0.16.0

v0.15.4

Compare Source

What's Changed

Full Changelog: shazow/whatsabi@v0.15.3...v0.15.4

v0.15.3

Compare Source

What's Changed

Full Changelog: shazow/whatsabi@v0.15.2...v0.15.3

v0.15.2

Compare Source

What's Changed

Full Changelog: shazow/whatsabi@v0.15.1...v0.15.2

v0.15.1

Compare Source

What's Changed

Full Changelog: shazow/whatsabi@v0.15.0...v0.15.1

v0.15.0

Compare Source

Summary

whatsabi.providers.WithCachedCode

Added helper for caching getCode calls with autoload, useful for only resolving proxies when we already have the bytecode:

const address = "0x...";
const bytecode = "0x..."; // Already loaded from somewhere

const cachedCodeProvider = whatsabi.providers.WithCachedCode(provider, {
  [address]: bytecode,
});
const result = whatsabi.autoload(address, {
  provider: cachedCodeProvider,
  abiLoader: false, // Skip ABI loaders
  signatureLookup: false, // Skip looking up selector signatures
})

More docs here: https://shazow.github.io/whatsabi/modules/proxies.html

AutoloadResult.abiLoadedFrom

whatsabi.autoload will do everything necessary to load the ABI, which by default includes checking if it's already verified in public databases like Sourcify and Etherscan.

If the result is successfully loaded from an ABILoader, then it will be included in the AutoloadResult.abiLoadedFrom property. This is useful to distinguish if the result is from a verified database or whether WhatsABI had to resolve to doing its own internal static analysis to find selectors.

const result = whatsabi.autoload(address, config);
const loadedFrom = result.abiLoadedFrom?.name ?? "static analysis";
console.log("ABI loaded from:", loadedFrom);

More docs here: https://shazow.github.io/whatsabi/types/AutoloadResult.html

AutoloadResult.ContractResult

If we call whatsabi.autoload with setting { loadContractResult: true }, then we'll use the getContract loader APIs instead of loadABI which returns the full contract metadata (larger result and slower API call). The result will be included in the contractResult attribute, which also includes the full raw result in AutoloadResult.contractResult?.loaderResult.

const result = whatsabi.autoload(address, { provider, loadContractResult: true });
console.log(result.contractResult);

More docs here: https://shazow.github.io/whatsabi/types/loaders.ContractResult.html

What's Changed

New Contributors

Full Changelog: shazow/whatsabi@v0.14.1...v0.15.0

v0.14.1

Compare Source

Minor fix: Added exported whatsabi.errors types: https://shazow.github.io/whatsabi/modules/whatsabi.errors.html

Full Changelog: shazow/whatsabi@v0.14.0...v0.14.1

v0.14.0

Compare Source

Summary

What's Changed

New Contributors

Full Changelog: shazow/whatsabi@v0.13.2...v0.14.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) December 10, 2024 16:22
Copy link

vercel bot commented Dec 10, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
zodiac-pilot-example-app ✅ Ready (Inspect) Visit Preview 💬 Add feedback Dec 10, 2024 4:34pm

Copy link

github-actions bot commented Dec 10, 2024

Coverage Report for extension

Status Category Percentage Covered / Total
🔵 Lines 60.75% 4950 / 8147
🔵 Statements 60.75% 4950 / 8147
🔵 Functions 66.59% 295 / 443
🔵 Branches 77.73% 733 / 943
File CoverageNo changed files found.
Generated in workflow #1045 for commit a79126d by the Vitest Coverage Report Action

Copy link

cloudflare-workers-and-pages bot commented Dec 10, 2024

Deploying zodiac-pilot-connect with  Cloudflare Pages  Cloudflare Pages

Latest commit: a79126d
Status: ✅  Deploy successful!
Preview URL: https://30324f2b.zodiac-pilot.pages.dev
Branch Preview URL: https://renovate-shazow-whatsabi-0-x.zodiac-pilot.pages.dev

View logs

Copy link

cloudflare-workers-and-pages bot commented Dec 10, 2024

Deploying zodiac-pilot with  Cloudflare Pages  Cloudflare Pages

Latest commit: a79126d
Status: ✅  Deploy successful!
Preview URL: https://3c4f6336.zodiac-pilot-29m.pages.dev
Branch Preview URL: https://renovate-shazow-whatsabi-0-x.zodiac-pilot-29m.pages.dev

View logs

@renovate renovate bot force-pushed the renovate/shazow-whatsabi-0.x branch from c28a012 to a79126d Compare December 10, 2024 16:32
@renovate renovate bot merged commit f22b4ee into main Dec 10, 2024
8 checks passed
@renovate renovate bot deleted the renovate/shazow-whatsabi-0.x branch December 10, 2024 16:35
@github-actions github-actions bot locked and limited conversation to collaborators Dec 10, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants