Skip to content

Commit

Permalink
Set solidity version to 0.8.9
Browse files Browse the repository at this point in the history
  • Loading branch information
Mike-CZ committed Oct 2, 2024
1 parent f4d0250 commit 525a952
Show file tree
Hide file tree
Showing 30 changed files with 43 additions and 39 deletions.
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,7 @@ test:
docker run --rm --user $$(id -u):$$(id -g) -v $(PWD):/src -w /src node:20.17.0 bash -c \
'export NPM_CONFIG_PREFIX=~; npm install --no-save; npx hardhat test'

.PHONY: workspace
workspace:
docker run -t -i --rm --user $$(id -u):$$(id -g) -v $(PWD):/src -w /src node:20.17.0 bash -c \
'export NPM_CONFIG_PREFIX=~; npm install --no-save; bash'
2 changes: 1 addition & 1 deletion contracts/common/Decimal.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

library Decimal {
// unit is used for decimals, e.g. 0.123456
Expand Down
2 changes: 1 addition & 1 deletion contracts/common/Initializable.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

/**
* @title Initializable
Expand Down
2 changes: 1 addition & 1 deletion contracts/common/ReentrancyGuard.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./Initializable.sol";

Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/ERC20.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./IERC20.sol";
import "../../common/Initializable.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/ERC20Burnable.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./ERC20.sol";

Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/ERC20Detailed.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../../common/Initializable.sol";
import {ERC20} from "./ERC20.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/ERC20Mintable.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./ERC20.sol";
import "./MinterRole.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/IERC20.sol
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: UNLICENSED

pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

/**
* @dev Interface of the ERC20 standard as defined in the EIP.
Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/MinterRole.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./Roles.sol";

Expand Down
2 changes: 1 addition & 1 deletion contracts/erc20/base/Roles.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;


/**
Expand Down
2 changes: 1 addition & 1 deletion contracts/ownership/Ownable.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../common/Initializable.sol";

Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/ConstantsManager.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../ownership/Ownable.sol";
import "../common/Decimal.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/GasPriceConstants.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../common/Decimal.sol";

Expand Down
6 changes: 3 additions & 3 deletions contracts/sfc/Migrations.sol
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

contract Migrations {
address public owner;
uint public last_completed_migration;

constructor() public {
owner = msg.sender;
constructor(address contractOwner) {
owner = contractOwner;
}

modifier restricted() {
Expand Down
3 changes: 1 addition & 2 deletions contracts/sfc/NetworkInitializer.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./SFCI.sol";
import "./NodeDriver.sol";
Expand Down Expand Up @@ -32,6 +32,5 @@ contract NetworkInitializer {
consts.transferOwnership(_owner);

SFCI(_sfc).initialize(sealedEpoch, totalSupply, _auth, _lib, address(consts), _owner);
selfdestruct(payable(address(0)));
}
}
2 changes: 1 addition & 1 deletion contracts/sfc/NodeDriver.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../common/Initializable.sol";
import "../ownership/Ownable.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/NodeDriverI.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

interface NodeDriverI {
function setGenesisValidator(address _auth, uint256 validatorID, bytes calldata pubkey, uint256 status, uint256 createdEpoch, uint256 createdTime, uint256 deactivatedEpoch, uint256 deactivatedTime) external;
Expand Down
5 changes: 3 additions & 2 deletions contracts/sfc/SFC.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./GasPriceConstants.sol";
import "../version/Version.sol";
Expand Down Expand Up @@ -263,7 +263,8 @@ contract SFC is SFCBase, Version {
if (treasuryAddress != address(0)) {
uint256 feeShare = ctx.epochFee * c.treasuryFeeShare() / Decimal.unit();
_mintNativeToken(feeShare);
treasuryAddress.call{value: feeShare, gas: 1000000}("");
(bool success,) = treasuryAddress.call{value: feeShare, gas: 1000000}("");
require(success, "treasury transfer failed");
}
}

Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/SFCBase.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./SFCState.sol";

Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/SFCI.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

interface SFCI {
event CreatedValidator(uint256 indexed validatorID, address indexed auth, uint256 createdEpoch, uint256 createdTime);
Expand Down
5 changes: 3 additions & 2 deletions contracts/sfc/SFCLib.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../common/Decimal.sol";
import "./GasPriceConstants.sol";
Expand Down Expand Up @@ -533,7 +533,8 @@ contract SFCLib is SFCBase {
ld.lockedStake -= amount;
if (penalty != 0) {
_rawUndelegate(delegator, toValidatorID, penalty, true, false, false);
treasuryAddress.call{value: penalty}("");
(bool success,) = treasuryAddress.call{value: penalty}("");
require(success, "Failed to send penalty");
}

emit UnlockedStake(delegator, toValidatorID, amount, penalty);
Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/SFCState.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./NodeDriver.sol";
import "../ownership/Ownable.sol";
Expand Down
2 changes: 1 addition & 1 deletion contracts/sfc/StakeTokenizer.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./SFC.sol";
import "../erc20/base/ERC20Burnable.sol";
Expand Down
4 changes: 2 additions & 2 deletions contracts/sfc/Updater.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "./NodeDriver.sol";
import "./SFC.sol";
Expand All @@ -25,7 +25,7 @@ contract Updater {
address public voteBook;
address public owner;

constructor(address _sfcFrom, address _sfcLib, address _sfcConsts, address _govTo, address _govFrom, address _voteBook, address _owner) public {
constructor(address _sfcFrom, address _sfcLib, address _sfcConsts, address _govTo, address _govFrom, address _voteBook, address _owner) {
sfcFrom = _sfcFrom;
sfcLib = _sfcLib;
sfcConsts = _sfcConsts;
Expand Down
2 changes: 1 addition & 1 deletion contracts/test/StubEvmWriter.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../sfc/NodeDriver.sol";

Expand Down
2 changes: 1 addition & 1 deletion contracts/test/UnitTestConstantsManager.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;
import "../sfc/ConstantsManager.sol";

contract UnitTestConstantsManager is ConstantsManager {
Expand Down
7 changes: 3 additions & 4 deletions contracts/test/UnitTestSFC.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

import "../sfc/SFC.sol";
import "../sfc/SFCI.sol";
Expand Down Expand Up @@ -64,11 +64,11 @@ contract UnitTestSFCLib is SFCLib, UnitTestSFCBase {
return SFCBase.isNode(addr);
}

function _getAvgEpochStep(uint256) internal view override returns(uint256) {
function _getAvgEpochStep(uint256) internal pure override returns(uint256) {
return 1;
}

function _getAvgUptime(uint256, uint256 duration, uint256) internal view override returns(uint256) {
function _getAvgUptime(uint256, uint256 duration, uint256) internal pure override returns(uint256) {
return duration;
}
}
Expand Down Expand Up @@ -98,7 +98,6 @@ contract UnitTestNetworkInitializer {
consts.transferOwnership(_owner);

SFCUnitTestI(_sfc).initialize(sealedEpoch, totalSupply, _auth, _lib, address(consts), _owner);
selfdestruct(payable(address(0)));
}
}

Expand Down
2 changes: 1 addition & 1 deletion contracts/version/Version.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;
pragma solidity ^0.8.9;

/**
* @dev Version contract gives the versioning information of the implementation contract
Expand Down
4 changes: 2 additions & 2 deletions hardhat.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ dotenv.config();

const config: HardhatUserConfig = {
solidity: {
version: '0.8.19',
version: '0.8.24',
settings: {
evmVersion: 'london',
optimizer: {
Expand All @@ -22,4 +22,4 @@ const config: HardhatUserConfig = {
},
};

export default config;
export default config;

0 comments on commit 525a952

Please sign in to comment.