Skip to content

Bump truffle from 5.8.1 to 5.9.0 #54

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

Closed
wants to merge 1 commit into from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github May 11, 2023

Bumps truffle from 5.8.1 to 5.9.0.

Release notes

Sourced from truffle's releases.

v5.9.0 — Chocolate Telephone

Ring ring ring, it's Truffle 5.9.0!

truffle call

This week's Truffle release introduces the new truffle call command! You can use it to make read-only calls ☎ to your contracts (or external ones, see below) and display the results. Just type truffle call ContractName functionName, followed by the list of arguments. You can also use the function's full ABI-style signature in place of the function name, which can be useful for resolving overloads.

You can also use an address in place of a contract name... and if you pass the --fetch-external option (or -x for short), you can use it with external contracts verified on Etherscan or Sourcify, and Truffle will automatically download and compile the source to allow to you interact with it. 🌐

The truffle call command is powered by Truffle Encoder and Truffle Decoder, so it not only displays detailed decoding information, but also has a powerful overload resolution system that can resolve which overload you wanted not only based on how many arguments you supplied, but on their types. 🧠 Write yourself some overloaded functions and try it out! I think you'll be pleasantly surprised. (Note that correct overload resolution by name and arguments is never a guarantee and you may need to specify the full signature in cases where you need that guarantee. 🧑‍⚖️ )

What do we mean by "powerful overload resolution"? 🤔

You might have in the past had to write things like myFunction(address,address,string,uint160) , where you needed to tediously specify the full signature. This is because Solidity allows you to write functions with the same name that take different arguments:

contract Example {
  function register(string memory name) public {
    /* ... */
  }
function register(bytes memory id) public {
/* ... */
}
}

Many tools refuse to make a guess at which register() you want when you do register("0xabcdef"), instead forcing you to do the work of specifying register(string) or register(bytes), and in this case could tell that you obviously meant register(bytes). This gets annoying if you have a lot of arguments, especially if you have to change them later!

In contrast, truffle call uses @​truffle/encoder's sophisticated heuristics to make the most educated guess possible about which overload you intend. This means less boilerplate between you and getting the data you want!

Thanks so much to @​sukanyaparashar for getting this started for us!

Other improvements (including ENS primary names inside truffle debug!)

But that's not the only substantial improvement going out this week... Truffle Debugger now supports ENS reverse resolution when decoding! Now, when decoding, addresses (including contracts) with reverse ENS records will have their ENS primary name displayed alongside their ethereum address. 🕵 You can use the default ENS registry for the network you're on if there is one, or you can specify a registry in your config, or you can use the --registry option to specify one at the command line. There's also --no-ens option to turn this feature off.

image

We've also got a few small bug fixes, and we've updated the list of Sourcify networks allowed in trufle debug --fetch-external.

And we'll be back soon with yet more improvements to Truffle! See you all!

How to upgrade

We recommend upgrading to the latest version of Truffle by running:

... (truncated)

Commits
  • 97a1177 Publish
  • 864252b Update web3 to 1.10.0
  • 4c17a8e Merge pull request #5647 from trufflesuite/implement-truffle-call
  • 3cb74c7 Remove most Truffle Call tests because they're too slow
  • d89d919 Fix incorrect assert method (sorry)
  • e10848a Fix regex syntax
  • ebc7c54 Fix some remaining test issues
  • d514885 Fix solidity syntax again (sorry)
  • 8d132fb Fix incorrect contract syntax
  • 7ab4766 Add tests of overload resolution
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [truffle](https://github.com/trufflesuite/truffle/tree/HEAD/packages/truffle) from 5.8.1 to 5.9.0.
- [Release notes](https://github.com/trufflesuite/truffle/releases)
- [Commits](https://github.com/trufflesuite/truffle/commits/[email protected]/packages/truffle)

---
updated-dependencies:
- dependency-name: truffle
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label May 11, 2023
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github May 22, 2023

Superseded by #56.

@dependabot dependabot bot closed this May 22, 2023
@dependabot dependabot bot deleted the dependabot/npm_and_yarn/main/truffle-5.9.0 branch May 22, 2023 03:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants