From 19c74140523e9af5a8489fe484456ca2adc87484 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Venturo?= Date: Tue, 23 Apr 2019 16:18:08 -0300 Subject: [PATCH] Bump minimum Solidity version to 0.5.7 (#1724) * Bump Solidity version to 0.5.7 * Add changelog entry. --- CHANGELOG.md | 3 +++ contracts/access/Roles.sol | 2 +- contracts/access/roles/CapperRole.sol | 2 +- contracts/access/roles/MinterRole.sol | 2 +- contracts/access/roles/PauserRole.sol | 2 +- contracts/access/roles/SignerRole.sol | 2 +- contracts/access/roles/WhitelistAdminRole.sol | 2 +- contracts/access/roles/WhitelistedRole.sol | 2 +- contracts/crowdsale/Crowdsale.sol | 2 +- contracts/crowdsale/distribution/FinalizableCrowdsale.sol | 2 +- .../crowdsale/distribution/PostDeliveryCrowdsale.sol | 2 +- contracts/crowdsale/distribution/RefundableCrowdsale.sol | 2 +- .../distribution/RefundablePostDeliveryCrowdsale.sol | 2 +- contracts/crowdsale/emission/AllowanceCrowdsale.sol | 2 +- contracts/crowdsale/emission/MintedCrowdsale.sol | 2 +- contracts/crowdsale/price/IncreasingPriceCrowdsale.sol | 2 +- contracts/crowdsale/validation/CappedCrowdsale.sol | 2 +- .../crowdsale/validation/IndividuallyCappedCrowdsale.sol | 2 +- contracts/crowdsale/validation/PausableCrowdsale.sol | 2 +- contracts/crowdsale/validation/TimedCrowdsale.sol | 2 +- contracts/crowdsale/validation/WhitelistCrowdsale.sol | 2 +- contracts/cryptography/ECDSA.sol | 2 +- contracts/cryptography/MerkleProof.sol | 2 +- contracts/drafts/Counters.sol | 2 +- contracts/drafts/ERC1046/ERC20Metadata.sol | 2 +- contracts/drafts/ERC1820Implementer.sol | 2 +- contracts/drafts/ERC20Migrator.sol | 2 +- contracts/drafts/ERC20Snapshot.sol | 2 +- contracts/drafts/ERC777/ERC777.sol | 2 +- contracts/drafts/ERC777/IERC777.sol | 2 +- contracts/drafts/ERC777/IERC777Recipient.sol | 2 +- contracts/drafts/ERC777/IERC777Sender.sol | 2 +- contracts/drafts/IERC1820Implementer.sol | 2 +- contracts/drafts/IERC1820Registry.sol | 2 +- contracts/drafts/SignatureBouncer.sol | 2 +- contracts/drafts/SignedSafeMath.sol | 2 +- contracts/drafts/TokenVesting.sol | 2 +- contracts/examples/SampleCrowdsale.sol | 2 +- contracts/examples/SimpleToken.sol | 2 +- contracts/introspection/ERC165.sol | 2 +- contracts/introspection/ERC165Checker.sol | 2 +- contracts/introspection/IERC165.sol | 2 +- contracts/lifecycle/Pausable.sol | 2 +- contracts/math/Math.sol | 2 +- contracts/math/SafeMath.sol | 2 +- contracts/mocks/AddressImpl.sol | 2 +- contracts/mocks/AllowanceCrowdsaleImpl.sol | 2 +- contracts/mocks/ArraysImpl.sol | 2 +- contracts/mocks/CappedCrowdsaleImpl.sol | 2 +- contracts/mocks/CapperRoleMock.sol | 2 +- contracts/mocks/ConditionalEscrowMock.sol | 2 +- contracts/mocks/CountersImpl.sol | 2 +- contracts/mocks/CrowdsaleMock.sol | 2 +- contracts/mocks/ECDSAMock.sol | 2 +- contracts/mocks/ERC165/ERC165InterfacesSupported.sol | 2 +- contracts/mocks/ERC165/ERC165NotSupported.sol | 2 +- contracts/mocks/ERC165CheckerMock.sol | 2 +- contracts/mocks/ERC165Mock.sol | 2 +- contracts/mocks/ERC1820ImplementerMock.sol | 2 +- contracts/mocks/ERC20BurnableMock.sol | 2 +- contracts/mocks/ERC20DetailedMock.sol | 2 +- contracts/mocks/ERC20MetadataMock.sol | 2 +- contracts/mocks/ERC20MintableMock.sol | 2 +- contracts/mocks/ERC20Mock.sol | 2 +- contracts/mocks/ERC20PausableMock.sol | 2 +- contracts/mocks/ERC20SnapshotMock.sol | 2 +- contracts/mocks/ERC721FullMock.sol | 2 +- contracts/mocks/ERC721MintableBurnableImpl.sol | 2 +- contracts/mocks/ERC721Mock.sol | 2 +- contracts/mocks/ERC721PausableMock.sol | 2 +- contracts/mocks/ERC721ReceiverMock.sol | 2 +- contracts/mocks/ERC777Mock.sol | 2 +- contracts/mocks/ERC777SenderRecipientMock.sol | 2 +- contracts/mocks/FinalizableCrowdsaleImpl.sol | 2 +- contracts/mocks/IncreasingPriceCrowdsaleImpl.sol | 2 +- contracts/mocks/IndividuallyCappedCrowdsaleImpl.sol | 2 +- contracts/mocks/MathMock.sol | 2 +- contracts/mocks/MerkleProofWrapper.sol | 2 +- contracts/mocks/MintedCrowdsaleImpl.sol | 2 +- contracts/mocks/MinterRoleMock.sol | 2 +- contracts/mocks/OwnableInterfaceId.sol | 2 +- contracts/mocks/OwnableMock.sol | 2 +- contracts/mocks/PausableCrowdsaleImpl.sol | 2 +- contracts/mocks/PausableMock.sol | 2 +- contracts/mocks/PauserRoleMock.sol | 2 +- contracts/mocks/PostDeliveryCrowdsaleImpl.sol | 2 +- contracts/mocks/PullPaymentMock.sol | 2 +- contracts/mocks/ReentrancyAttack.sol | 2 +- contracts/mocks/ReentrancyMock.sol | 2 +- contracts/mocks/RefundableCrowdsaleImpl.sol | 2 +- contracts/mocks/RefundablePostDeliveryCrowdsaleImpl.sol | 2 +- contracts/mocks/RolesMock.sol | 2 +- contracts/mocks/SafeERC20Helper.sol | 2 +- contracts/mocks/SafeMathMock.sol | 2 +- contracts/mocks/SecondaryMock.sol | 2 +- contracts/mocks/SignatureBouncerMock.sol | 2 +- contracts/mocks/SignedSafeMathMock.sol | 2 +- contracts/mocks/SignerRoleMock.sol | 2 +- contracts/mocks/TimedCrowdsaleImpl.sol | 2 +- contracts/mocks/WhitelistAdminRoleMock.sol | 2 +- contracts/mocks/WhitelistCrowdsaleImpl.sol | 2 +- contracts/mocks/WhitelistedRoleMock.sol | 2 +- contracts/ownership/Ownable.sol | 2 +- contracts/ownership/Secondary.sol | 2 +- contracts/payment/PaymentSplitter.sol | 2 +- contracts/payment/PullPayment.sol | 2 +- contracts/payment/escrow/ConditionalEscrow.sol | 2 +- contracts/payment/escrow/Escrow.sol | 2 +- contracts/payment/escrow/RefundEscrow.sol | 2 +- contracts/token/ERC20/ERC20.sol | 2 +- contracts/token/ERC20/ERC20Burnable.sol | 2 +- contracts/token/ERC20/ERC20Capped.sol | 2 +- contracts/token/ERC20/ERC20Detailed.sol | 2 +- contracts/token/ERC20/ERC20Mintable.sol | 2 +- contracts/token/ERC20/ERC20Pausable.sol | 2 +- contracts/token/ERC20/IERC20.sol | 2 +- contracts/token/ERC20/SafeERC20.sol | 2 +- contracts/token/ERC20/TokenTimelock.sol | 2 +- contracts/token/ERC721/ERC721.sol | 4 ++-- contracts/token/ERC721/ERC721Burnable.sol | 2 +- contracts/token/ERC721/ERC721Enumerable.sol | 8 ++++---- contracts/token/ERC721/ERC721Full.sol | 2 +- contracts/token/ERC721/ERC721Holder.sol | 2 +- contracts/token/ERC721/ERC721Metadata.sol | 4 ++-- contracts/token/ERC721/ERC721MetadataMintable.sol | 2 +- contracts/token/ERC721/ERC721Mintable.sol | 2 +- contracts/token/ERC721/ERC721Pausable.sol | 2 +- contracts/token/ERC721/IERC721.sol | 2 +- contracts/token/ERC721/IERC721Enumerable.sol | 2 +- contracts/token/ERC721/IERC721Full.sol | 2 +- contracts/token/ERC721/IERC721Metadata.sol | 2 +- contracts/token/ERC721/IERC721Receiver.sol | 2 +- contracts/utils/Address.sol | 2 +- contracts/utils/Arrays.sol | 2 +- contracts/utils/ReentrancyGuard.sol | 2 +- truffle-config.js | 2 +- 136 files changed, 143 insertions(+), 140 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aafd0d617..408f0e13f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,9 @@ implementers there. ([#1677](https://github.com/OpenZeppelin/openzeppelin-solidity/pull/1677)) * `ERC777`: initial support for the [ERC777 token](https://eips.ethereum.org/EIPS/eip-777), which has multiple improvements over `ERC20` such as built-in burning, a more straightforward permission system, and optional sender and receiver hooks on transfer (mandatory for contracts!). ([#1684](https://github.com/OpenZeppelin/openzeppelin-solidity/pull/1684)) +### Improvements: + * Upgraded the minimum compiler version to v0.5.7: this prevents users from encountering compiler bugs that were fixed in this version. ([#1724](https://github.com/OpenZeppelin/openzeppelin-solidity/pull/1724)) + ## 2.2.0 (2019-03-14) ### New features: diff --git a/contracts/access/Roles.sol b/contracts/access/Roles.sol index ebe3843ba..62d2216dc 100644 --- a/contracts/access/Roles.sol +++ b/contracts/access/Roles.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title Roles diff --git a/contracts/access/roles/CapperRole.sol b/contracts/access/roles/CapperRole.sol index a6d9da06c..c817624fa 100644 --- a/contracts/access/roles/CapperRole.sol +++ b/contracts/access/roles/CapperRole.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Roles.sol"; diff --git a/contracts/access/roles/MinterRole.sol b/contracts/access/roles/MinterRole.sol index 23d16c042..803d96e7c 100644 --- a/contracts/access/roles/MinterRole.sol +++ b/contracts/access/roles/MinterRole.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Roles.sol"; diff --git a/contracts/access/roles/PauserRole.sol b/contracts/access/roles/PauserRole.sol index 073a08e41..47ae84698 100644 --- a/contracts/access/roles/PauserRole.sol +++ b/contracts/access/roles/PauserRole.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Roles.sol"; diff --git a/contracts/access/roles/SignerRole.sol b/contracts/access/roles/SignerRole.sol index 91bb59c2e..2892ca950 100644 --- a/contracts/access/roles/SignerRole.sol +++ b/contracts/access/roles/SignerRole.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Roles.sol"; diff --git a/contracts/access/roles/WhitelistAdminRole.sol b/contracts/access/roles/WhitelistAdminRole.sol index e5f0883d9..7d66388dc 100644 --- a/contracts/access/roles/WhitelistAdminRole.sol +++ b/contracts/access/roles/WhitelistAdminRole.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Roles.sol"; diff --git a/contracts/access/roles/WhitelistedRole.sol b/contracts/access/roles/WhitelistedRole.sol index 89cf357f9..55fd39c86 100644 --- a/contracts/access/roles/WhitelistedRole.sol +++ b/contracts/access/roles/WhitelistedRole.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Roles.sol"; import "./WhitelistAdminRole.sol"; diff --git a/contracts/crowdsale/Crowdsale.sol b/contracts/crowdsale/Crowdsale.sol index 6b1c0a642..d6d3227c4 100644 --- a/contracts/crowdsale/Crowdsale.sol +++ b/contracts/crowdsale/Crowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../math/SafeMath.sol"; diff --git a/contracts/crowdsale/distribution/FinalizableCrowdsale.sol b/contracts/crowdsale/distribution/FinalizableCrowdsale.sol index 9058f70ad..3a391a35e 100644 --- a/contracts/crowdsale/distribution/FinalizableCrowdsale.sol +++ b/contracts/crowdsale/distribution/FinalizableCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../math/SafeMath.sol"; import "../validation/TimedCrowdsale.sol"; diff --git a/contracts/crowdsale/distribution/PostDeliveryCrowdsale.sol b/contracts/crowdsale/distribution/PostDeliveryCrowdsale.sol index 151b1a624..6abbffd46 100644 --- a/contracts/crowdsale/distribution/PostDeliveryCrowdsale.sol +++ b/contracts/crowdsale/distribution/PostDeliveryCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../validation/TimedCrowdsale.sol"; import "../../math/SafeMath.sol"; diff --git a/contracts/crowdsale/distribution/RefundableCrowdsale.sol b/contracts/crowdsale/distribution/RefundableCrowdsale.sol index 23f44ec3f..f217aa7da 100644 --- a/contracts/crowdsale/distribution/RefundableCrowdsale.sol +++ b/contracts/crowdsale/distribution/RefundableCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../math/SafeMath.sol"; import "./FinalizableCrowdsale.sol"; diff --git a/contracts/crowdsale/distribution/RefundablePostDeliveryCrowdsale.sol b/contracts/crowdsale/distribution/RefundablePostDeliveryCrowdsale.sol index 0dd351ed5..fd46a42b6 100644 --- a/contracts/crowdsale/distribution/RefundablePostDeliveryCrowdsale.sol +++ b/contracts/crowdsale/distribution/RefundablePostDeliveryCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./RefundableCrowdsale.sol"; import "./PostDeliveryCrowdsale.sol"; diff --git a/contracts/crowdsale/emission/AllowanceCrowdsale.sol b/contracts/crowdsale/emission/AllowanceCrowdsale.sol index 523135cff..58ff0034c 100644 --- a/contracts/crowdsale/emission/AllowanceCrowdsale.sol +++ b/contracts/crowdsale/emission/AllowanceCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Crowdsale.sol"; import "../../token/ERC20/IERC20.sol"; diff --git a/contracts/crowdsale/emission/MintedCrowdsale.sol b/contracts/crowdsale/emission/MintedCrowdsale.sol index b6b07ec8e..35d1f7167 100644 --- a/contracts/crowdsale/emission/MintedCrowdsale.sol +++ b/contracts/crowdsale/emission/MintedCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Crowdsale.sol"; import "../../token/ERC20/ERC20Mintable.sol"; diff --git a/contracts/crowdsale/price/IncreasingPriceCrowdsale.sol b/contracts/crowdsale/price/IncreasingPriceCrowdsale.sol index 446b41d2e..36a9cdf70 100644 --- a/contracts/crowdsale/price/IncreasingPriceCrowdsale.sol +++ b/contracts/crowdsale/price/IncreasingPriceCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../validation/TimedCrowdsale.sol"; import "../../math/SafeMath.sol"; diff --git a/contracts/crowdsale/validation/CappedCrowdsale.sol b/contracts/crowdsale/validation/CappedCrowdsale.sol index 9de2fe125..0af1fd079 100644 --- a/contracts/crowdsale/validation/CappedCrowdsale.sol +++ b/contracts/crowdsale/validation/CappedCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../math/SafeMath.sol"; import "../Crowdsale.sol"; diff --git a/contracts/crowdsale/validation/IndividuallyCappedCrowdsale.sol b/contracts/crowdsale/validation/IndividuallyCappedCrowdsale.sol index e98c8ee32..7c64135b8 100644 --- a/contracts/crowdsale/validation/IndividuallyCappedCrowdsale.sol +++ b/contracts/crowdsale/validation/IndividuallyCappedCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../math/SafeMath.sol"; import "../Crowdsale.sol"; diff --git a/contracts/crowdsale/validation/PausableCrowdsale.sol b/contracts/crowdsale/validation/PausableCrowdsale.sol index da2feeac2..673684e0d 100644 --- a/contracts/crowdsale/validation/PausableCrowdsale.sol +++ b/contracts/crowdsale/validation/PausableCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Crowdsale.sol"; import "../../lifecycle/Pausable.sol"; diff --git a/contracts/crowdsale/validation/TimedCrowdsale.sol b/contracts/crowdsale/validation/TimedCrowdsale.sol index e4276d073..690525bee 100644 --- a/contracts/crowdsale/validation/TimedCrowdsale.sol +++ b/contracts/crowdsale/validation/TimedCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../math/SafeMath.sol"; import "../Crowdsale.sol"; diff --git a/contracts/crowdsale/validation/WhitelistCrowdsale.sol b/contracts/crowdsale/validation/WhitelistCrowdsale.sol index 9453e4702..73aa1e599 100644 --- a/contracts/crowdsale/validation/WhitelistCrowdsale.sol +++ b/contracts/crowdsale/validation/WhitelistCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../Crowdsale.sol"; import "../../access/roles/WhitelistedRole.sol"; diff --git a/contracts/cryptography/ECDSA.sol b/contracts/cryptography/ECDSA.sol index 5af4df125..eca3dfa95 100644 --- a/contracts/cryptography/ECDSA.sol +++ b/contracts/cryptography/ECDSA.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title Elliptic curve signature operations diff --git a/contracts/cryptography/MerkleProof.sol b/contracts/cryptography/MerkleProof.sol index c48b58e3d..702916c72 100644 --- a/contracts/cryptography/MerkleProof.sol +++ b/contracts/cryptography/MerkleProof.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title MerkleProof diff --git a/contracts/drafts/Counters.sol b/contracts/drafts/Counters.sol index bb419b401..0ebf221e2 100644 --- a/contracts/drafts/Counters.sol +++ b/contracts/drafts/Counters.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../math/SafeMath.sol"; diff --git a/contracts/drafts/ERC1046/ERC20Metadata.sol b/contracts/drafts/ERC1046/ERC20Metadata.sol index 14ae279dd..0960dc683 100644 --- a/contracts/drafts/ERC1046/ERC20Metadata.sol +++ b/contracts/drafts/ERC1046/ERC20Metadata.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../token/ERC20/IERC20.sol"; diff --git a/contracts/drafts/ERC1820Implementer.sol b/contracts/drafts/ERC1820Implementer.sol index 347daf0c8..a0e7abfe6 100644 --- a/contracts/drafts/ERC1820Implementer.sol +++ b/contracts/drafts/ERC1820Implementer.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC1820Implementer.sol"; diff --git a/contracts/drafts/ERC20Migrator.sol b/contracts/drafts/ERC20Migrator.sol index 18ad0df3a..bf00f87e4 100644 --- a/contracts/drafts/ERC20Migrator.sol +++ b/contracts/drafts/ERC20Migrator.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../token/ERC20/ERC20Mintable.sol"; diff --git a/contracts/drafts/ERC20Snapshot.sol b/contracts/drafts/ERC20Snapshot.sol index 46836437c..be11e899e 100644 --- a/contracts/drafts/ERC20Snapshot.sol +++ b/contracts/drafts/ERC20Snapshot.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../math/SafeMath.sol"; import "../utils/Arrays.sol"; diff --git a/contracts/drafts/ERC777/ERC777.sol b/contracts/drafts/ERC777/ERC777.sol index dee73d7a8..a56a91266 100644 --- a/contracts/drafts/ERC777/ERC777.sol +++ b/contracts/drafts/ERC777/ERC777.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC777.sol"; import "./IERC777Recipient.sol"; diff --git a/contracts/drafts/ERC777/IERC777.sol b/contracts/drafts/ERC777/IERC777.sol index 4da72fb1e..29778c08d 100644 --- a/contracts/drafts/ERC777/IERC777.sol +++ b/contracts/drafts/ERC777/IERC777.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC777 token interface diff --git a/contracts/drafts/ERC777/IERC777Recipient.sol b/contracts/drafts/ERC777/IERC777Recipient.sol index c5be87057..752c96fe7 100644 --- a/contracts/drafts/ERC777/IERC777Recipient.sol +++ b/contracts/drafts/ERC777/IERC777Recipient.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC777 token recipient interface diff --git a/contracts/drafts/ERC777/IERC777Sender.sol b/contracts/drafts/ERC777/IERC777Sender.sol index 084b530e8..89ae7e3e6 100644 --- a/contracts/drafts/ERC777/IERC777Sender.sol +++ b/contracts/drafts/ERC777/IERC777Sender.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC777 token sender interface diff --git a/contracts/drafts/IERC1820Implementer.sol b/contracts/drafts/IERC1820Implementer.sol index 49bbdbd57..234c76989 100644 --- a/contracts/drafts/IERC1820Implementer.sol +++ b/contracts/drafts/IERC1820Implementer.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title IERC1820Implementer diff --git a/contracts/drafts/IERC1820Registry.sol b/contracts/drafts/IERC1820Registry.sol index a3603c81c..c07e34b14 100644 --- a/contracts/drafts/IERC1820Registry.sol +++ b/contracts/drafts/IERC1820Registry.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC1820 Pseudo-introspection Registry Contract diff --git a/contracts/drafts/SignatureBouncer.sol b/contracts/drafts/SignatureBouncer.sol index 25caf0c7b..69f7c3758 100644 --- a/contracts/drafts/SignatureBouncer.sol +++ b/contracts/drafts/SignatureBouncer.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/SignerRole.sol"; import "../cryptography/ECDSA.sol"; diff --git a/contracts/drafts/SignedSafeMath.sol b/contracts/drafts/SignedSafeMath.sol index 97086f623..7a18c799a 100644 --- a/contracts/drafts/SignedSafeMath.sol +++ b/contracts/drafts/SignedSafeMath.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title SignedSafeMath diff --git a/contracts/drafts/TokenVesting.sol b/contracts/drafts/TokenVesting.sol index 636f94bf1..a053dd089 100644 --- a/contracts/drafts/TokenVesting.sol +++ b/contracts/drafts/TokenVesting.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/SafeERC20.sol"; import "../ownership/Ownable.sol"; diff --git a/contracts/examples/SampleCrowdsale.sol b/contracts/examples/SampleCrowdsale.sol index ac8aac11d..b77f6cad6 100644 --- a/contracts/examples/SampleCrowdsale.sol +++ b/contracts/examples/SampleCrowdsale.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../crowdsale/validation/CappedCrowdsale.sol"; import "../crowdsale/distribution/RefundableCrowdsale.sol"; diff --git a/contracts/examples/SimpleToken.sol b/contracts/examples/SimpleToken.sol index 6193fc745..f5e59a4b5 100644 --- a/contracts/examples/SimpleToken.sol +++ b/contracts/examples/SimpleToken.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20.sol"; import "../token/ERC20/ERC20Detailed.sol"; diff --git a/contracts/introspection/ERC165.sol b/contracts/introspection/ERC165.sol index 47b9fa032..0f2c4cbd2 100644 --- a/contracts/introspection/ERC165.sol +++ b/contracts/introspection/ERC165.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC165.sol"; diff --git a/contracts/introspection/ERC165Checker.sol b/contracts/introspection/ERC165Checker.sol index ddf2144f1..1dea5cb27 100644 --- a/contracts/introspection/ERC165Checker.sol +++ b/contracts/introspection/ERC165Checker.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC165Checker diff --git a/contracts/introspection/IERC165.sol b/contracts/introspection/IERC165.sol index 03e596052..373058db6 100644 --- a/contracts/introspection/IERC165.sol +++ b/contracts/introspection/IERC165.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title IERC165 diff --git a/contracts/lifecycle/Pausable.sol b/contracts/lifecycle/Pausable.sol index b3b88b79d..04c803ce8 100644 --- a/contracts/lifecycle/Pausable.sol +++ b/contracts/lifecycle/Pausable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/PauserRole.sol"; diff --git a/contracts/math/Math.sol b/contracts/math/Math.sol index 976de5d61..9a9e4cb2a 100644 --- a/contracts/math/Math.sol +++ b/contracts/math/Math.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title Math diff --git a/contracts/math/SafeMath.sol b/contracts/math/SafeMath.sol index 896e90e03..a0dfe349d 100644 --- a/contracts/math/SafeMath.sol +++ b/contracts/math/SafeMath.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title SafeMath diff --git a/contracts/mocks/AddressImpl.sol b/contracts/mocks/AddressImpl.sol index 92029cd91..07fd1c066 100644 --- a/contracts/mocks/AddressImpl.sol +++ b/contracts/mocks/AddressImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../utils/Address.sol"; diff --git a/contracts/mocks/AllowanceCrowdsaleImpl.sol b/contracts/mocks/AllowanceCrowdsaleImpl.sol index 769e67721..97d8b5200 100644 --- a/contracts/mocks/AllowanceCrowdsaleImpl.sol +++ b/contracts/mocks/AllowanceCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/emission/AllowanceCrowdsale.sol"; diff --git a/contracts/mocks/ArraysImpl.sol b/contracts/mocks/ArraysImpl.sol index 979cabab6..ab3ff72cb 100644 --- a/contracts/mocks/ArraysImpl.sol +++ b/contracts/mocks/ArraysImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../utils/Arrays.sol"; diff --git a/contracts/mocks/CappedCrowdsaleImpl.sol b/contracts/mocks/CappedCrowdsaleImpl.sol index 87e7757c4..1f62fe10f 100644 --- a/contracts/mocks/CappedCrowdsaleImpl.sol +++ b/contracts/mocks/CappedCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/validation/CappedCrowdsale.sol"; diff --git a/contracts/mocks/CapperRoleMock.sol b/contracts/mocks/CapperRoleMock.sol index 2a138f63d..5189d7ab9 100644 --- a/contracts/mocks/CapperRoleMock.sol +++ b/contracts/mocks/CapperRoleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/CapperRole.sol"; diff --git a/contracts/mocks/ConditionalEscrowMock.sol b/contracts/mocks/ConditionalEscrowMock.sol index 67f75aefb..1dcbab927 100644 --- a/contracts/mocks/ConditionalEscrowMock.sol +++ b/contracts/mocks/ConditionalEscrowMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../payment/escrow/ConditionalEscrow.sol"; diff --git a/contracts/mocks/CountersImpl.sol b/contracts/mocks/CountersImpl.sol index 21d4f04c6..ef4a7392b 100644 --- a/contracts/mocks/CountersImpl.sol +++ b/contracts/mocks/CountersImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/Counters.sol"; diff --git a/contracts/mocks/CrowdsaleMock.sol b/contracts/mocks/CrowdsaleMock.sol index eb25fc139..d3f955d32 100644 --- a/contracts/mocks/CrowdsaleMock.sol +++ b/contracts/mocks/CrowdsaleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../crowdsale/Crowdsale.sol"; diff --git a/contracts/mocks/ECDSAMock.sol b/contracts/mocks/ECDSAMock.sol index dcf82bf1e..babec0f8c 100644 --- a/contracts/mocks/ECDSAMock.sol +++ b/contracts/mocks/ECDSAMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../cryptography/ECDSA.sol"; diff --git a/contracts/mocks/ERC165/ERC165InterfacesSupported.sol b/contracts/mocks/ERC165/ERC165InterfacesSupported.sol index d5c0dceea..40e3c5e82 100644 --- a/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +++ b/contracts/mocks/ERC165/ERC165InterfacesSupported.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../introspection/IERC165.sol"; diff --git a/contracts/mocks/ERC165/ERC165NotSupported.sol b/contracts/mocks/ERC165/ERC165NotSupported.sol index d7664b6e3..833c2ad9b 100644 --- a/contracts/mocks/ERC165/ERC165NotSupported.sol +++ b/contracts/mocks/ERC165/ERC165NotSupported.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; contract ERC165NotSupported { // solhint-disable-previous-line no-empty-blocks diff --git a/contracts/mocks/ERC165CheckerMock.sol b/contracts/mocks/ERC165CheckerMock.sol index 2a163a10f..fb64c72a1 100644 --- a/contracts/mocks/ERC165CheckerMock.sol +++ b/contracts/mocks/ERC165CheckerMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../introspection/ERC165Checker.sol"; diff --git a/contracts/mocks/ERC165Mock.sol b/contracts/mocks/ERC165Mock.sol index fbb333ff0..b6adec9ca 100644 --- a/contracts/mocks/ERC165Mock.sol +++ b/contracts/mocks/ERC165Mock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../introspection/ERC165.sol"; diff --git a/contracts/mocks/ERC1820ImplementerMock.sol b/contracts/mocks/ERC1820ImplementerMock.sol index 14bbb5a6e..50996ea3c 100644 --- a/contracts/mocks/ERC1820ImplementerMock.sol +++ b/contracts/mocks/ERC1820ImplementerMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/ERC1820Implementer.sol"; diff --git a/contracts/mocks/ERC20BurnableMock.sol b/contracts/mocks/ERC20BurnableMock.sol index a43823cf3..37e771bb6 100644 --- a/contracts/mocks/ERC20BurnableMock.sol +++ b/contracts/mocks/ERC20BurnableMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20Burnable.sol"; diff --git a/contracts/mocks/ERC20DetailedMock.sol b/contracts/mocks/ERC20DetailedMock.sol index 0380369ca..469fd4c28 100644 --- a/contracts/mocks/ERC20DetailedMock.sol +++ b/contracts/mocks/ERC20DetailedMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20.sol"; import "../token/ERC20/ERC20Detailed.sol"; diff --git a/contracts/mocks/ERC20MetadataMock.sol b/contracts/mocks/ERC20MetadataMock.sol index d60a3cafd..9bae3c70b 100644 --- a/contracts/mocks/ERC20MetadataMock.sol +++ b/contracts/mocks/ERC20MetadataMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20.sol"; import "../drafts/ERC1046/ERC20Metadata.sol"; diff --git a/contracts/mocks/ERC20MintableMock.sol b/contracts/mocks/ERC20MintableMock.sol index 91295cd5c..34a57d2f6 100644 --- a/contracts/mocks/ERC20MintableMock.sol +++ b/contracts/mocks/ERC20MintableMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20Mintable.sol"; import "./MinterRoleMock.sol"; diff --git a/contracts/mocks/ERC20Mock.sol b/contracts/mocks/ERC20Mock.sol index 23589edb2..eb5c0112b 100644 --- a/contracts/mocks/ERC20Mock.sol +++ b/contracts/mocks/ERC20Mock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20.sol"; diff --git a/contracts/mocks/ERC20PausableMock.sol b/contracts/mocks/ERC20PausableMock.sol index 286b9479a..db7f8b348 100644 --- a/contracts/mocks/ERC20PausableMock.sol +++ b/contracts/mocks/ERC20PausableMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20Pausable.sol"; import "./PauserRoleMock.sol"; diff --git a/contracts/mocks/ERC20SnapshotMock.sol b/contracts/mocks/ERC20SnapshotMock.sol index 08b4140d1..e0f9668fd 100644 --- a/contracts/mocks/ERC20SnapshotMock.sol +++ b/contracts/mocks/ERC20SnapshotMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/ERC20Snapshot.sol"; diff --git a/contracts/mocks/ERC721FullMock.sol b/contracts/mocks/ERC721FullMock.sol index b9e40a974..8a41ab329 100644 --- a/contracts/mocks/ERC721FullMock.sol +++ b/contracts/mocks/ERC721FullMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC721/ERC721Full.sol"; import "../token/ERC721/ERC721Mintable.sol"; diff --git a/contracts/mocks/ERC721MintableBurnableImpl.sol b/contracts/mocks/ERC721MintableBurnableImpl.sol index 60af40987..6fe33a123 100644 --- a/contracts/mocks/ERC721MintableBurnableImpl.sol +++ b/contracts/mocks/ERC721MintableBurnableImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC721/ERC721Full.sol"; import "../token/ERC721/ERC721Mintable.sol"; diff --git a/contracts/mocks/ERC721Mock.sol b/contracts/mocks/ERC721Mock.sol index dc6daf623..ded7b0f7b 100644 --- a/contracts/mocks/ERC721Mock.sol +++ b/contracts/mocks/ERC721Mock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC721/ERC721.sol"; diff --git a/contracts/mocks/ERC721PausableMock.sol b/contracts/mocks/ERC721PausableMock.sol index 7bf447a1d..1d03a5e22 100644 --- a/contracts/mocks/ERC721PausableMock.sol +++ b/contracts/mocks/ERC721PausableMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC721/ERC721Pausable.sol"; import "./PauserRoleMock.sol"; diff --git a/contracts/mocks/ERC721ReceiverMock.sol b/contracts/mocks/ERC721ReceiverMock.sol index 7dd9d3ee6..668fd99af 100644 --- a/contracts/mocks/ERC721ReceiverMock.sol +++ b/contracts/mocks/ERC721ReceiverMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC721/IERC721Receiver.sol"; diff --git a/contracts/mocks/ERC777Mock.sol b/contracts/mocks/ERC777Mock.sol index 5c32e051c..232117dd2 100644 --- a/contracts/mocks/ERC777Mock.sol +++ b/contracts/mocks/ERC777Mock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/ERC777/ERC777.sol"; diff --git a/contracts/mocks/ERC777SenderRecipientMock.sol b/contracts/mocks/ERC777SenderRecipientMock.sol index 5c77c978b..08bac0fc7 100644 --- a/contracts/mocks/ERC777SenderRecipientMock.sol +++ b/contracts/mocks/ERC777SenderRecipientMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/ERC777/IERC777.sol"; import "../drafts/ERC777/IERC777Sender.sol"; diff --git a/contracts/mocks/FinalizableCrowdsaleImpl.sol b/contracts/mocks/FinalizableCrowdsaleImpl.sol index 45a1d5ffd..204c58507 100644 --- a/contracts/mocks/FinalizableCrowdsaleImpl.sol +++ b/contracts/mocks/FinalizableCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/distribution/FinalizableCrowdsale.sol"; diff --git a/contracts/mocks/IncreasingPriceCrowdsaleImpl.sol b/contracts/mocks/IncreasingPriceCrowdsaleImpl.sol index 17d0708d1..5b43e40b2 100644 --- a/contracts/mocks/IncreasingPriceCrowdsaleImpl.sol +++ b/contracts/mocks/IncreasingPriceCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../crowdsale/price/IncreasingPriceCrowdsale.sol"; import "../math/SafeMath.sol"; diff --git a/contracts/mocks/IndividuallyCappedCrowdsaleImpl.sol b/contracts/mocks/IndividuallyCappedCrowdsaleImpl.sol index cd5a6343f..0f531971d 100644 --- a/contracts/mocks/IndividuallyCappedCrowdsaleImpl.sol +++ b/contracts/mocks/IndividuallyCappedCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/validation/IndividuallyCappedCrowdsale.sol"; diff --git a/contracts/mocks/MathMock.sol b/contracts/mocks/MathMock.sol index 9fa472406..869a2c5c2 100644 --- a/contracts/mocks/MathMock.sol +++ b/contracts/mocks/MathMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../math/Math.sol"; diff --git a/contracts/mocks/MerkleProofWrapper.sol b/contracts/mocks/MerkleProofWrapper.sol index 2921ebb91..8b09affd7 100644 --- a/contracts/mocks/MerkleProofWrapper.sol +++ b/contracts/mocks/MerkleProofWrapper.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import { MerkleProof } from "../cryptography/MerkleProof.sol"; diff --git a/contracts/mocks/MintedCrowdsaleImpl.sol b/contracts/mocks/MintedCrowdsaleImpl.sol index 4a1d268e5..f0465b3a6 100644 --- a/contracts/mocks/MintedCrowdsaleImpl.sol +++ b/contracts/mocks/MintedCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20Mintable.sol"; import "../crowdsale/emission/MintedCrowdsale.sol"; diff --git a/contracts/mocks/MinterRoleMock.sol b/contracts/mocks/MinterRoleMock.sol index 8e31b1588..55f060880 100644 --- a/contracts/mocks/MinterRoleMock.sol +++ b/contracts/mocks/MinterRoleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/MinterRole.sol"; diff --git a/contracts/mocks/OwnableInterfaceId.sol b/contracts/mocks/OwnableInterfaceId.sol index 25f61c172..49b56382b 100644 --- a/contracts/mocks/OwnableInterfaceId.sol +++ b/contracts/mocks/OwnableInterfaceId.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../ownership/Ownable.sol"; diff --git a/contracts/mocks/OwnableMock.sol b/contracts/mocks/OwnableMock.sol index 9280a93f4..3e0c7281e 100644 --- a/contracts/mocks/OwnableMock.sol +++ b/contracts/mocks/OwnableMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../ownership/Ownable.sol"; diff --git a/contracts/mocks/PausableCrowdsaleImpl.sol b/contracts/mocks/PausableCrowdsaleImpl.sol index ddbad5225..237ea7fd9 100644 --- a/contracts/mocks/PausableCrowdsaleImpl.sol +++ b/contracts/mocks/PausableCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/ERC20.sol"; import "../crowdsale/validation/PausableCrowdsale.sol"; diff --git a/contracts/mocks/PausableMock.sol b/contracts/mocks/PausableMock.sol index 0d8a0bbb7..a9e9d58df 100644 --- a/contracts/mocks/PausableMock.sol +++ b/contracts/mocks/PausableMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../lifecycle/Pausable.sol"; import "./PauserRoleMock.sol"; diff --git a/contracts/mocks/PauserRoleMock.sol b/contracts/mocks/PauserRoleMock.sol index fce861146..67fc61019 100644 --- a/contracts/mocks/PauserRoleMock.sol +++ b/contracts/mocks/PauserRoleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/PauserRole.sol"; diff --git a/contracts/mocks/PostDeliveryCrowdsaleImpl.sol b/contracts/mocks/PostDeliveryCrowdsaleImpl.sol index 77eda6def..bbc08aef0 100644 --- a/contracts/mocks/PostDeliveryCrowdsaleImpl.sol +++ b/contracts/mocks/PostDeliveryCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/distribution/PostDeliveryCrowdsale.sol"; diff --git a/contracts/mocks/PullPaymentMock.sol b/contracts/mocks/PullPaymentMock.sol index defc43c48..9e7180f1f 100644 --- a/contracts/mocks/PullPaymentMock.sol +++ b/contracts/mocks/PullPaymentMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../payment/PullPayment.sol"; diff --git a/contracts/mocks/ReentrancyAttack.sol b/contracts/mocks/ReentrancyAttack.sol index 7f7fd35d4..eb1262d2f 100644 --- a/contracts/mocks/ReentrancyAttack.sol +++ b/contracts/mocks/ReentrancyAttack.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; contract ReentrancyAttack { function callSender(bytes4 data) public { diff --git a/contracts/mocks/ReentrancyMock.sol b/contracts/mocks/ReentrancyMock.sol index bf14a8f35..6902b014c 100644 --- a/contracts/mocks/ReentrancyMock.sol +++ b/contracts/mocks/ReentrancyMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../utils/ReentrancyGuard.sol"; import "./ReentrancyAttack.sol"; diff --git a/contracts/mocks/RefundableCrowdsaleImpl.sol b/contracts/mocks/RefundableCrowdsaleImpl.sol index bc67f2f26..16da92229 100644 --- a/contracts/mocks/RefundableCrowdsaleImpl.sol +++ b/contracts/mocks/RefundableCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/distribution/RefundableCrowdsale.sol"; diff --git a/contracts/mocks/RefundablePostDeliveryCrowdsaleImpl.sol b/contracts/mocks/RefundablePostDeliveryCrowdsaleImpl.sol index 36133ae06..aff64e7f5 100644 --- a/contracts/mocks/RefundablePostDeliveryCrowdsaleImpl.sol +++ b/contracts/mocks/RefundablePostDeliveryCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/distribution/RefundablePostDeliveryCrowdsale.sol"; diff --git a/contracts/mocks/RolesMock.sol b/contracts/mocks/RolesMock.sol index a4a2fef18..ab8bf3628 100644 --- a/contracts/mocks/RolesMock.sol +++ b/contracts/mocks/RolesMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/Roles.sol"; diff --git a/contracts/mocks/SafeERC20Helper.sol b/contracts/mocks/SafeERC20Helper.sol index b69d98b52..edfd8ed17 100644 --- a/contracts/mocks/SafeERC20Helper.sol +++ b/contracts/mocks/SafeERC20Helper.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../token/ERC20/SafeERC20.sol"; diff --git a/contracts/mocks/SafeMathMock.sol b/contracts/mocks/SafeMathMock.sol index c94348854..abfdf3eb5 100644 --- a/contracts/mocks/SafeMathMock.sol +++ b/contracts/mocks/SafeMathMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../math/SafeMath.sol"; diff --git a/contracts/mocks/SecondaryMock.sol b/contracts/mocks/SecondaryMock.sol index 225938bd3..69f3a57cd 100644 --- a/contracts/mocks/SecondaryMock.sol +++ b/contracts/mocks/SecondaryMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../ownership/Secondary.sol"; diff --git a/contracts/mocks/SignatureBouncerMock.sol b/contracts/mocks/SignatureBouncerMock.sol index fa449f866..6c1e17ad4 100644 --- a/contracts/mocks/SignatureBouncerMock.sol +++ b/contracts/mocks/SignatureBouncerMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/SignatureBouncer.sol"; import "./SignerRoleMock.sol"; diff --git a/contracts/mocks/SignedSafeMathMock.sol b/contracts/mocks/SignedSafeMathMock.sol index 9bb00233f..fe096222a 100644 --- a/contracts/mocks/SignedSafeMathMock.sol +++ b/contracts/mocks/SignedSafeMathMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../drafts/SignedSafeMath.sol"; diff --git a/contracts/mocks/SignerRoleMock.sol b/contracts/mocks/SignerRoleMock.sol index 5ff66e9d5..06e782b6b 100644 --- a/contracts/mocks/SignerRoleMock.sol +++ b/contracts/mocks/SignerRoleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/SignerRole.sol"; diff --git a/contracts/mocks/TimedCrowdsaleImpl.sol b/contracts/mocks/TimedCrowdsaleImpl.sol index 33e5cc6a4..7cae42acf 100644 --- a/contracts/mocks/TimedCrowdsaleImpl.sol +++ b/contracts/mocks/TimedCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/validation/TimedCrowdsale.sol"; diff --git a/contracts/mocks/WhitelistAdminRoleMock.sol b/contracts/mocks/WhitelistAdminRoleMock.sol index 75f15b62c..332c5acfa 100644 --- a/contracts/mocks/WhitelistAdminRoleMock.sol +++ b/contracts/mocks/WhitelistAdminRoleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/WhitelistAdminRole.sol"; diff --git a/contracts/mocks/WhitelistCrowdsaleImpl.sol b/contracts/mocks/WhitelistCrowdsaleImpl.sol index 66a80cfec..dc02d2255 100644 --- a/contracts/mocks/WhitelistCrowdsaleImpl.sol +++ b/contracts/mocks/WhitelistCrowdsaleImpl.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../token/ERC20/IERC20.sol"; import "../crowdsale/validation/WhitelistCrowdsale.sol"; diff --git a/contracts/mocks/WhitelistedRoleMock.sol b/contracts/mocks/WhitelistedRoleMock.sol index f880a5fc5..c9b45b3fa 100644 --- a/contracts/mocks/WhitelistedRoleMock.sol +++ b/contracts/mocks/WhitelistedRoleMock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../access/roles/WhitelistedRole.sol"; diff --git a/contracts/ownership/Ownable.sol b/contracts/ownership/Ownable.sol index 9780c07fd..5db67f889 100644 --- a/contracts/ownership/Ownable.sol +++ b/contracts/ownership/Ownable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title Ownable diff --git a/contracts/ownership/Secondary.sol b/contracts/ownership/Secondary.sol index 1184f65bb..b3a17a23c 100644 --- a/contracts/ownership/Secondary.sol +++ b/contracts/ownership/Secondary.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title Secondary diff --git a/contracts/payment/PaymentSplitter.sol b/contracts/payment/PaymentSplitter.sol index e22e2ed88..f281d9700 100644 --- a/contracts/payment/PaymentSplitter.sol +++ b/contracts/payment/PaymentSplitter.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../math/SafeMath.sol"; diff --git a/contracts/payment/PullPayment.sol b/contracts/payment/PullPayment.sol index 0685eeb17..0975f80d5 100644 --- a/contracts/payment/PullPayment.sol +++ b/contracts/payment/PullPayment.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./escrow/Escrow.sol"; diff --git a/contracts/payment/escrow/ConditionalEscrow.sol b/contracts/payment/escrow/ConditionalEscrow.sol index 4b2213792..bcc804ecf 100644 --- a/contracts/payment/escrow/ConditionalEscrow.sol +++ b/contracts/payment/escrow/ConditionalEscrow.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./Escrow.sol"; diff --git a/contracts/payment/escrow/Escrow.sol b/contracts/payment/escrow/Escrow.sol index cb7284e62..14562e920 100644 --- a/contracts/payment/escrow/Escrow.sol +++ b/contracts/payment/escrow/Escrow.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../math/SafeMath.sol"; import "../../ownership/Secondary.sol"; diff --git a/contracts/payment/escrow/RefundEscrow.sol b/contracts/payment/escrow/RefundEscrow.sol index fac2277da..2c5314d96 100644 --- a/contracts/payment/escrow/RefundEscrow.sol +++ b/contracts/payment/escrow/RefundEscrow.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ConditionalEscrow.sol"; diff --git a/contracts/token/ERC20/ERC20.sol b/contracts/token/ERC20/ERC20.sol index 52a1786e5..ba48ac2d6 100644 --- a/contracts/token/ERC20/ERC20.sol +++ b/contracts/token/ERC20/ERC20.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC20.sol"; import "../../math/SafeMath.sol"; diff --git a/contracts/token/ERC20/ERC20Burnable.sol b/contracts/token/ERC20/ERC20Burnable.sol index 70d6cefc9..a71aaebc1 100644 --- a/contracts/token/ERC20/ERC20Burnable.sol +++ b/contracts/token/ERC20/ERC20Burnable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC20.sol"; diff --git a/contracts/token/ERC20/ERC20Capped.sol b/contracts/token/ERC20/ERC20Capped.sol index 56964bc35..c9146a5a0 100644 --- a/contracts/token/ERC20/ERC20Capped.sol +++ b/contracts/token/ERC20/ERC20Capped.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC20Mintable.sol"; diff --git a/contracts/token/ERC20/ERC20Detailed.sol b/contracts/token/ERC20/ERC20Detailed.sol index c7face24a..1606d4550 100644 --- a/contracts/token/ERC20/ERC20Detailed.sol +++ b/contracts/token/ERC20/ERC20Detailed.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC20.sol"; diff --git a/contracts/token/ERC20/ERC20Mintable.sol b/contracts/token/ERC20/ERC20Mintable.sol index 432785c87..de9443309 100644 --- a/contracts/token/ERC20/ERC20Mintable.sol +++ b/contracts/token/ERC20/ERC20Mintable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC20.sol"; import "../../access/roles/MinterRole.sol"; diff --git a/contracts/token/ERC20/ERC20Pausable.sol b/contracts/token/ERC20/ERC20Pausable.sol index 397ebd960..53b956ef9 100644 --- a/contracts/token/ERC20/ERC20Pausable.sol +++ b/contracts/token/ERC20/ERC20Pausable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC20.sol"; import "../../lifecycle/Pausable.sol"; diff --git a/contracts/token/ERC20/IERC20.sol b/contracts/token/ERC20/IERC20.sol index 06c327140..4bee8eb22 100644 --- a/contracts/token/ERC20/IERC20.sol +++ b/contracts/token/ERC20/IERC20.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC20 interface diff --git a/contracts/token/ERC20/SafeERC20.sol b/contracts/token/ERC20/SafeERC20.sol index 4aaf43cd2..c6c6273bb 100644 --- a/contracts/token/ERC20/SafeERC20.sol +++ b/contracts/token/ERC20/SafeERC20.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC20.sol"; import "../../math/SafeMath.sol"; diff --git a/contracts/token/ERC20/TokenTimelock.sol b/contracts/token/ERC20/TokenTimelock.sol index 5a8c2459f..4667285d5 100644 --- a/contracts/token/ERC20/TokenTimelock.sol +++ b/contracts/token/ERC20/TokenTimelock.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./SafeERC20.sol"; diff --git a/contracts/token/ERC721/ERC721.sol b/contracts/token/ERC721/ERC721.sol index e16b03dd7..ed7862afe 100644 --- a/contracts/token/ERC721/ERC721.sol +++ b/contracts/token/ERC721/ERC721.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC721.sol"; import "./IERC721Receiver.sol"; @@ -42,7 +42,7 @@ contract ERC721 is ERC165, IERC721 { * bytes4(keccak256('transferFrom(address,address,uint256)')) == 0x23b872dd * bytes4(keccak256('safeTransferFrom(address,address,uint256)')) == 0x42842e0e * bytes4(keccak256('safeTransferFrom(address,address,uint256,bytes)')) == 0xb88d4fde - * + * * => 0x70a08231 ^ 0x6352211e ^ 0x095ea7b3 ^ 0x081812fc ^ * 0xa22cb465 ^ 0xe985e9c ^ 0x23b872dd ^ 0x42842e0e ^ 0xb88d4fde == 0x80ac58cd */ diff --git a/contracts/token/ERC721/ERC721Burnable.sol b/contracts/token/ERC721/ERC721Burnable.sol index e2dc6cf77..249b1ed09 100644 --- a/contracts/token/ERC721/ERC721Burnable.sol +++ b/contracts/token/ERC721/ERC721Burnable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC721.sol"; diff --git a/contracts/token/ERC721/ERC721Enumerable.sol b/contracts/token/ERC721/ERC721Enumerable.sol index d691af092..f79cbfa68 100644 --- a/contracts/token/ERC721/ERC721Enumerable.sol +++ b/contracts/token/ERC721/ERC721Enumerable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC721Enumerable.sol"; import "./ERC721.sol"; @@ -21,12 +21,12 @@ contract ERC721Enumerable is ERC165, ERC721, IERC721Enumerable { // Mapping from token id to position in the allTokens array mapping(uint256 => uint256) private _allTokensIndex; - /* + /* * bytes4(keccak256('totalSupply()')) == 0x18160ddd * bytes4(keccak256('tokenOfOwnerByIndex(address,uint256)')) == 0x2f745c59 * bytes4(keccak256('tokenByIndex(uint256)')) == 0x4f6ccce7 - * - * => 0x18160ddd ^ 0x2f745c59 ^ 0x4f6ccce7 == 0x780e9d63 + * + * => 0x18160ddd ^ 0x2f745c59 ^ 0x4f6ccce7 == 0x780e9d63 */ bytes4 private constant _INTERFACE_ID_ERC721_ENUMERABLE = 0x780e9d63; diff --git a/contracts/token/ERC721/ERC721Full.sol b/contracts/token/ERC721/ERC721Full.sol index d76d6995a..95ccff8df 100644 --- a/contracts/token/ERC721/ERC721Full.sol +++ b/contracts/token/ERC721/ERC721Full.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC721.sol"; import "./ERC721Enumerable.sol"; diff --git a/contracts/token/ERC721/ERC721Holder.sol b/contracts/token/ERC721/ERC721Holder.sol index 3121ec9b8..87bebfa83 100644 --- a/contracts/token/ERC721/ERC721Holder.sol +++ b/contracts/token/ERC721/ERC721Holder.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC721Receiver.sol"; diff --git a/contracts/token/ERC721/ERC721Metadata.sol b/contracts/token/ERC721/ERC721Metadata.sol index 7f1c0123c..c28d6c500 100644 --- a/contracts/token/ERC721/ERC721Metadata.sol +++ b/contracts/token/ERC721/ERC721Metadata.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC721.sol"; import "./IERC721Metadata.sol"; @@ -18,7 +18,7 @@ contract ERC721Metadata is ERC165, ERC721, IERC721Metadata { * bytes4(keccak256('name()')) == 0x06fdde03 * bytes4(keccak256('symbol()')) == 0x95d89b41 * bytes4(keccak256('tokenURI(uint256)')) == 0xc87b56dd - * + * * => 0x06fdde03 ^ 0x95d89b41 ^ 0xc87b56dd == 0x5b5e139f */ bytes4 private constant _INTERFACE_ID_ERC721_METADATA = 0x5b5e139f; diff --git a/contracts/token/ERC721/ERC721MetadataMintable.sol b/contracts/token/ERC721/ERC721MetadataMintable.sol index 33581d981..b245f7c69 100644 --- a/contracts/token/ERC721/ERC721MetadataMintable.sol +++ b/contracts/token/ERC721/ERC721MetadataMintable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC721Metadata.sol"; import "../../access/roles/MinterRole.sol"; diff --git a/contracts/token/ERC721/ERC721Mintable.sol b/contracts/token/ERC721/ERC721Mintable.sol index 1cb4c66e0..8de0fc033 100644 --- a/contracts/token/ERC721/ERC721Mintable.sol +++ b/contracts/token/ERC721/ERC721Mintable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC721.sol"; import "../../access/roles/MinterRole.sol"; diff --git a/contracts/token/ERC721/ERC721Pausable.sol b/contracts/token/ERC721/ERC721Pausable.sol index 5143a3775..89ac5ca6a 100644 --- a/contracts/token/ERC721/ERC721Pausable.sol +++ b/contracts/token/ERC721/ERC721Pausable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./ERC721.sol"; import "../../lifecycle/Pausable.sol"; diff --git a/contracts/token/ERC721/IERC721.sol b/contracts/token/ERC721/IERC721.sol index 0f02852aa..670a8dd07 100644 --- a/contracts/token/ERC721/IERC721.sol +++ b/contracts/token/ERC721/IERC721.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../../introspection/IERC165.sol"; diff --git a/contracts/token/ERC721/IERC721Enumerable.sol b/contracts/token/ERC721/IERC721Enumerable.sol index 5d56c811c..ad34e77aa 100644 --- a/contracts/token/ERC721/IERC721Enumerable.sol +++ b/contracts/token/ERC721/IERC721Enumerable.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC721.sol"; diff --git a/contracts/token/ERC721/IERC721Full.sol b/contracts/token/ERC721/IERC721Full.sol index fe91109a1..2d15b964a 100644 --- a/contracts/token/ERC721/IERC721Full.sol +++ b/contracts/token/ERC721/IERC721Full.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC721.sol"; import "./IERC721Enumerable.sol"; diff --git a/contracts/token/ERC721/IERC721Metadata.sol b/contracts/token/ERC721/IERC721Metadata.sol index a22c3dd6d..77dc23914 100644 --- a/contracts/token/ERC721/IERC721Metadata.sol +++ b/contracts/token/ERC721/IERC721Metadata.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "./IERC721.sol"; diff --git a/contracts/token/ERC721/IERC721Receiver.sol b/contracts/token/ERC721/IERC721Receiver.sol index bd76e674c..4cd43a66b 100644 --- a/contracts/token/ERC721/IERC721Receiver.sol +++ b/contracts/token/ERC721/IERC721Receiver.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title ERC721 token receiver interface diff --git a/contracts/utils/Address.sol b/contracts/utils/Address.sol index 98c8778f8..570b947cb 100644 --- a/contracts/utils/Address.sol +++ b/contracts/utils/Address.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * Utility library of inline functions on addresses diff --git a/contracts/utils/Arrays.sol b/contracts/utils/Arrays.sol index 90f9e88d1..5337a5da9 100644 --- a/contracts/utils/Arrays.sol +++ b/contracts/utils/Arrays.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; import "../math/Math.sol"; diff --git a/contracts/utils/ReentrancyGuard.sol b/contracts/utils/ReentrancyGuard.sol index 36186d1ed..fb1f292d3 100644 --- a/contracts/utils/ReentrancyGuard.sol +++ b/contracts/utils/ReentrancyGuard.sol @@ -1,4 +1,4 @@ -pragma solidity ^0.5.2; +pragma solidity ^0.5.7; /** * @title Helps contracts guard against reentrancy attacks. diff --git a/truffle-config.js b/truffle-config.js index ab63136e6..de5297491 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -18,7 +18,7 @@ module.exports = { compilers: { solc: { - version: '0.5.2', + version: '0.5.7', }, }, };