Releases: tintinweb/solidity-shell
Releases · tintinweb/solidity-shell
Version 0.0.9
v0.0.9
- new: support the
import
directive - #8- new: experimental support for
https
imports, i.e.import "https://raw.githubusercontent.com/OpenZeppelin/openzeppelin-contracts/master/contracts/token/ERC721/IERC721.sol"
. This can be disabled by setting» .config set resolveHttpImports false
.
- new: experimental support for
- fix:
localhost
alias may not be available on some systems - #9
Version 0.0.8
v0.0.8
- new: Passthru ganache-cli settings as options to solidity-shell #7
solidity-shell -- -fork https://mainnet.infura.io/v3/yourToken
Query a live contracts ERC20.name()
:
» interface ERC20 {
multi> function name() external view returns (string memory);
multi> }
» ERC20(0xB8c77482e45F1F44dE1745F52C74426C631bDD52).name()
BNB
- fix:
.config set
handling of strings and multi-word arguments - fix:
exit
exits solidity-shell completely
Version 0.0.7
v0.0.7
- fix: rework remote compiler
- added a remoteCompiler wrapper
- fix: always use latest compiler shipped with this package by default
- new: ship with solc 0.8.10
- preference: use solc shipped with package by default, else check static solcVersions list and fetch remote compiler, else update solcVersions list and fetch remote compiler.
- fix: better error handling when changing compiler version
- new: support
error
keyword and fix memory/storage type declarations
Version 0.0.6
v0.0.6
- fix: handle interface declarations
Version 0.0.5
v0.0.5
- fix: support blocks/loops - #2
- fix: better ganache error handling and minor refactoring
Version 0.0.4
v0.0.4
- new: dynamic compiler selection via pragma directive
- changing the solidity version pragma attempts to load the selected compiler version remotely. e.g. type
pragma solidity 0.8.4
to switch to solidity v0.8.4.
- changing the solidity version pragma attempts to load the selected compiler version remotely. e.g. type
example
playing with arithmetic underflows in solidity 0.8.7
(reverts) and 0.6.0
(underflows)
⇒ node bin/main.js
🚀 Entering interactive Solidity ^0.8.7 shell. '.help' and '.exit' are your friends.
» ℹ️ ganache-mgr: starting temp. ganache instance ...
»
»
» uint(555)-uint(666)
Error: Returned error: VM Exception while processing transaction: revert
{
data: {
'0xf56c7c173b51b91c89a49735fab75926b166e51a42b721a867d704612dcdd14b': {
error: 'revert',
program_counter: 232,
return: '0x4e487b710000000000000000000000000000000000000000000000000000000000000011'
},
stack: 'c: VM Exception while processing transaction: revert\n' +
' at Function.c.fromResults (ganache-cli/build/ganache-core.node.cli.js:4:192416)\n' +
' at ganache-cli/build/ganache-core.node.cli.js:42:50402',
name: 'c'
}
}
» pragma solidity 0.6.0
» uint(555)-uint(666)
115792089237316195423570985008687907853269984665640564039457584007913129639825
»
Version 0.0.3
still alpha 🥳
Version 0.0.2
alpha 🥳