windranger-io / bit-token-contract

The BitDAO BIT token contract as deployed on Mainnet
https://etherscan.io/address/0x1A4b46696b2bB4794Eb3D4c26f1c55F9170fa4C5
Apache License 2.0
2 stars 1 forks source link

Solidity version #19

Open CjHare opened 3 years ago

CjHare commented 3 years ago

A general challenge with Solidity, being that whenever a contract is compiled into bytecode and sent onchain, that bytecode is immutable, never to improve or receive patches.

The motivation when selecting the version to author in, usually is to use the latest version (as that is expected to contain the most gas efficient and secure code). With an exception to that rule being when relying on contract, which restrict your choice (although OZ keep versions supporting a swath of Solidity version)

pragma solidity >=0.6.5 <0.8.0;

Solidity version 0.7.5, released 18 November 2020 Solidity version 0.7.6, released 17 December 2020 Solidity version 0.8.0, released 17 December 2020 https://github.com/ethereum/solidity/releases

The Peckshield Audit Report for BitDAO was dated June 30, suggesting the timeframe of contract development might have had the 0.8.x stream of Solidity available. If so, then it would be interesting to know why that passed over in favour of the previous.