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

Solidity compiler version missing #534

karalabe opened this Issue May 2, 2016 · 4 comments


None yet
3 participants

karalabe commented May 2, 2016

One of the most important features is the ability to verify deployed contracts. However mist does not display the Solidity compiler version it uses to deploy a contract, so afterwards it's extremely hard to guess which version it was and have the contract verified by block explorers. I think we should definitely have the version number displayed when working with solidity code directly.

@luclu luclu added this to the 0.8.2 milestone Jul 12, 2016

@luclu luclu modified the milestones: 0.8.3, 0.8.2 Jul 21, 2016

@luclu luclu added ready and removed planned labels Jul 25, 2016


This comment has been minimized.


evertonfraga commented Aug 29, 2016

Hi @karalabe, how exactly would be the best way to display Solidity version?

Only a small text around the editor would suffice? Or embed this information alongside with the contract, in some way?


This comment has been minimized.


luclu commented Sep 3, 2016

@evertonfraga I guess while the former is be the way to go, embedding it in some standardized way would be required. Is there some EIP on this? Is there a meta-data section within contracts?

To accomplish the former we might want to use the compiler version key-value pair from the resulting web3.eth.compile.solidity() object (compileContract.js#L162) to be node agnostic:

var testSource='contract Test {  function double(int a) constant returns(int) { return 2*a; } }'
var testCompiled = web3.eth.compile.solidity(testSource);
{ Test: 
   { code: '0x6060604052602a8060106000396000f3606060405260e060020a60003504636ffa1caa8114601a575b005b6002600435026060908152602090f3',
      { source: 'contract Test {  function double(int a) constant returns(int) { return 2*a; } }',
        language: 'Solidity',
        languageVersion: '0.3.6',
        compilerVersion: '0.3.6',
        compilerOptions: '--bin --abi --userdoc --devdoc --add-std --optimize -o /var/folders/1r/vtmg53tn17g9m35zd64lyczh0000gn/T/solc777625456',
        abiDefinition: [Object],
        userDoc: [Object],
        developerDoc: [Object] } } }

@evertonfraga evertonfraga modified the milestones: 0.8.3, 0.8.4, 0.8.5 Sep 22, 2016

@evertonfraga evertonfraga modified the milestones: 0.8.5, 0.9 Oct 7, 2016


This comment has been minimized.


luclu commented Dec 19, 2016

This might be obsolete due to solidity's version-pragma requirement.

@evertonfraga evertonfraga removed the ready label Mar 21, 2017

@evertonfraga evertonfraga modified the milestones: 0.9, 0.9.0 Mar 22, 2017


This comment has been minimized.

lock bot commented Mar 31, 2018

This thread has been automatically locked because it has not had recent activity. Please open a new issue for related bugs and link to relevant comments in this thread.

@lock lock bot locked and limited conversation to collaborators Mar 31, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.