diff --git a/contracts/Ethlance.sol b/contracts/Ethlance.sol index 8d6acf6b..30144d58 100644 --- a/contracts/Ethlance.sol +++ b/contracts/Ethlance.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-3.0 -pragma solidity ^0.8.21; +pragma solidity ^0.8.0; pragma experimental ABIEncoderV2; import "./EthlanceStructs.sol"; diff --git a/contracts/EthlanceStructs.sol b/contracts/EthlanceStructs.sol index eb3ecf7f..64841491 100644 --- a/contracts/EthlanceStructs.sol +++ b/contracts/EthlanceStructs.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-3.0 -pragma solidity ^0.8.21; +pragma solidity ^0.8.0; pragma experimental ABIEncoderV2; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; diff --git a/contracts/Job.sol b/contracts/Job.sol index 816774b1..54990101 100644 --- a/contracts/Job.sol +++ b/contracts/Job.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-3.0 -pragma solidity ^0.8.21; +pragma solidity ^0.8.0; pragma experimental ABIEncoderV2; import "./EthlanceStructs.sol"; diff --git a/contracts/JobHelpers.sol b/contracts/JobHelpers.sol index c9151381..98982fcd 100644 --- a/contracts/JobHelpers.sol +++ b/contracts/JobHelpers.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-3.0 -pragma solidity ^0.8.21; +pragma solidity ^0.8.0; pragma experimental ABIEncoderV2; import "./EthlanceStructs.sol"; diff --git a/contracts/Migrations.sol b/contracts/Migrations.sol index 6aca51a8..0cfdc231 100644 --- a/contracts/Migrations.sol +++ b/contracts/Migrations.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: MIT -pragma solidity ^0.8.21; +pragma solidity ^0.8.0; contract Migrations { address public owner = msg.sender; diff --git a/package.json b/package.json index 8f3e5517..975a4c75 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "solc": "0.8.21" }, "resolutions": { - "solc": "0.8.21" + "solc": "0.8.19" }, "engines": { "node": "^18.17.0" diff --git a/truffle-config.js b/truffle-config.js index 622e7131..04afea98 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -1,6 +1,7 @@ 'use strict'; const ETHLANCE_ENV = process.env.ETHLANCE_ENV || "dev"; - +const ETHLANCE_MNEMONIC = process.env.ETHLANCE_MNEMONIC; +const ETHLANCE_ETH_NODE_ADDRESS = process.env.ETHLANCE_ETH_NODE_ADDRESS; const smartContractsPaths = { "dev" : '/shared/src/ethlance/shared/smart_contracts_dev.cljs', @@ -24,7 +25,8 @@ parameters.dev = parameters.qa; const HDWalletProvider = require('@truffle/hdwallet-provider'); -const mnemonic = "easy leave proof verb wait patient fringe laptop intact opera slab shine"; +const DEFAULT_DEV_MNEMONIC = "easy leave proof verb wait patient fringe laptop intact opera slab shine"; +const mnemonic = ETHLANCE_MNEMONIC || DEFAULT_DEV_MNEMONIC; module.exports = { env: ETHLANCE_ENV, @@ -35,7 +37,7 @@ module.exports = { compilers: { solc: { - version: "0.8.21", + version: "0.8.17", settings: { optimizer: { enabled: true, @@ -77,6 +79,17 @@ module.exports = { gasPrice: 20e9, // 20 gwei, default for ganache network_id: '*', from: "0xeba108B12593336bBa461b8a6e7DC5A4b597Bc7E" // 6) address + }, + + "arbitrum-sepolia": { + provider: new HDWalletProvider({mnemonic: {phrase: mnemonic}, + providerOrUrl: ETHLANCE_ETH_NODE_ADDRESS || 'https://sepolia-rollup.arbitrum.io/rpc' + }), + gas: 6e6, // gas limit + gasPrice: 20e9, // 20 gwei, default for ganache + network_id: '*', + from: "0x642fAE80d3C74559A18B0558A518cDBF6b047968" // 1st address } + } } diff --git a/yarn.lock b/yarn.lock index 8edfe977..c2a134d8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5609,7 +5609,20 @@ snake-case@^2.1.0: dependencies: no-case "^2.2.0" -solc@0.8.21, solc@^0.4.20: +solc@0.8.19, solc@^0.4.20: + version "0.8.19" + resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.19.tgz#cac6541106ae3cff101c740042c7742aa56a2ed3" + integrity sha512-yqurS3wzC4LdEvmMobODXqprV4MYJcVtinuxgrp61ac8K2zz40vXA0eSAskSHPgv8dQo7Nux39i3QBsHx4pqyA== + dependencies: + command-exists "^1.2.8" + commander "^8.1.0" + follow-redirects "^1.12.1" + js-sha3 "0.8.0" + memorystream "^0.3.1" + semver "^5.5.0" + tmp "0.0.33" + +solc@0.8.21: version "0.8.21" resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.21.tgz#c3cd505c360ea2fa0eaa5ab574ef96bffb1a2766" integrity sha512-N55ogy2dkTRwiONbj4e6wMZqUNaLZkiRcjGyeafjLYzo/tf/IvhHY5P5wpe+H3Fubh9idu071i8eOGO31s1ylg==