Skip to content

Commit

Permalink
Merge pull request #3629 from ethereum/warning_evm_version
Browse files Browse the repository at this point in the history
warn the user about evm version
  • Loading branch information
yann300 committed Jun 7, 2023
2 parents f83e22c + 0616614 commit 9831297
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 6 deletions.
3 changes: 2 additions & 1 deletion apps/remix-ide/src/app/tabs/locales/en/udapp.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
"udapp.account": "Account",
"udapp.value": "Value",
"udapp.contract": "Contract",
"udapp.compiledBy": "Compiled by {compilerName}",
"udapp.compiledBy": "compiled by {compilerName}",
"udapp.warningEvmVersion": "Please make sure that the current network is compatible with this evm version: {evmVersion}. Otherwise any deployment will fail.",
"udapp.infoSyncCompiledContractTooltip": "Click here to import contracts compiled from an external framework.This action is enabled when Remix is connected to an external framework (hardhat, truffle, foundry) through remixd.",
"udapp.remixIpfsUdappTooltip": "Publishing the source code and metadata to IPFS facilitates source code verification using Sourcify and will greatly foster contract adoption (auditing, debugging, calling it, etc...)",
"udapp.signAMessage": "Sign a message",
Expand Down
2 changes: 1 addition & 1 deletion apps/remix-ide/src/app/tabs/locales/es/udapp.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"udapp.account": "Account",
"udapp.value": "Value",
"udapp.contract": "Contract",
"udapp.compiledBy": "Compiled by {compilerName}",
"udapp.compiledBy": "compiled by {compilerName}",
"udapp.infoSyncCompiledContractTooltip": "Click here to import contracts compiled from an external framework.This action is enabled when Remix is connected to an external framework (hardhat, truffle, foundry) through remixd.",
"udapp.remixIpfsUdappTooltip": "Publishing the source code and metadata to IPFS facilitates source code verification using Sourcify and will greatly foster contract adoption (auditing, debugging, calling it, etc...)",
"udapp.signAMessage": "Sign a message",
Expand Down
2 changes: 1 addition & 1 deletion apps/remix-ide/src/app/tabs/locales/fr/udapp.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"udapp.account": "Account",
"udapp.value": "Value",
"udapp.contract": "Contract",
"udapp.compiledBy": "Compiled by {compilerName}",
"udapp.compiledBy": "compiled by {compilerName}",
"udapp.infoSyncCompiledContractTooltip": "Click here to import contracts compiled from an external framework.This action is enabled when Remix is connected to an external framework (hardhat, truffle, foundry) through remixd.",
"udapp.remixIpfsUdappTooltip": "Publishing the source code and metadata to IPFS facilitates source code verification using Sourcify and will greatly foster contract adoption (auditing, debugging, calling it, etc...)",
"udapp.signAMessage": "Sign a message",
Expand Down
16 changes: 15 additions & 1 deletion libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -263,14 +263,18 @@ export function ContractDropdownUI (props: ContractDropdownProps) {
)
}

let evmVersion = null
try {
evmVersion = JSON.parse(loadedContractData.metadata).settings.evmVersion
} catch (err) {}
return (
<div className="udapp_container" data-id="contractDropdownContainer">
<div className='d-flex justify-content-between'>
<div className="d-flex justify-content-between align-items-end">
<label className="udapp_settingsLabel pr-1">
<FormattedMessage id='udapp.contract' />
</label>
<div className="d-flex">{compilerName && compilerName !== '' && <label style={{ maxHeight: '0.6rem', lineHeight: '1rem' }} data-id="udappCompiledBy">(<FormattedMessage id='udapp.compiledBy' values={{ compilerName: <span className="text-capitalize"> {compilerName}</span> }} />)</label>}</div>
{compilerName && compilerName !== '' && <label className='udapp_settingsCompiledBy badge badge-secondary' data-id="udappCompiledBy"><FormattedMessage id='udapp.compiledBy' values={{ compilerName: <span className="text-capitalize"> {compilerName}</span> }} /></label>}
</div>
{props.remixdActivated ?
(<CustomTooltip
Expand Down Expand Up @@ -309,6 +313,16 @@ export function ContractDropdownUI (props: ContractDropdownProps) {
</CustomTooltip>
<span className="py-1" style={{ display: abiLabel.display }}>{abiLabel.content}</span>
</div>
{ evmVersion && loadedContractData && <CustomTooltip
placement={'right'}
tooltipClasses="text-wrap text-left"
tooltipId="info-evm-version-warn"
tooltipText={<span className="text-left">
<FormattedMessage id='udapp.warningEvmVersion' values={{ evmVersion }}/>
</span>}
>
<span className='udapp_evmVersion badge badge-secondary'>evm version: {evmVersion}</span>
</CustomTooltip> }
<div>
<div className="udapp_deployDropdown">
{((contractList[currentFile] && contractList[currentFile].filter(contract => contract)) || []).length <= 0 ? intl.formatMessage({ id: 'udapp.noCompiledContracts' })
Expand Down
9 changes: 7 additions & 2 deletions libs/remix-ui/run-tab/src/lib/css/run-tab.css
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
margin-bottom: 4px;
text-transform: uppercase;
}
.udapp_settingsCompiledBy {
margin-bottom: 4px;
}
.udapp_environment {
display: flex;
align-items: center;
Expand Down Expand Up @@ -75,11 +78,14 @@
width: 100%;
border: 1px solid
}
.udapp_evmVersion {
cursor: default;
}
.udapp_subcontainer {
display: flex;
flex-direction: row;
align-items: center;
margin-bottom: 8px;
margin-bottom: 2px;
}
.udapp_subcontainer i {
width: 16px;
Expand Down Expand Up @@ -181,7 +187,6 @@
display: inline;
}
.udapp_network {
margin-left: 8px;
pointer-events: none;
}
.udapp_networkItem {
Expand Down

0 comments on commit 9831297

Please sign in to comment.