1Hive / uniswap-v2-core

πŸŽ› Core smart contracts of Uniswap V2

Home Page:https://uniswap.org/docs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Uniswap V2 xDAI Deployment

Requires checking out the Uniswap Periphery: https://github.com/1Hive/uniswap-v2-periphery

  1. Install dependencies in both this repo and the periphery repo:
$ yarn install
  1. Copy private key that contains xDAI into this repo and the the periphery repo's truffle-config.js where specified.

In the uniswap-v2-core repo

  1. Update the FEE_TO_SETTER_ADDRESS in the migrations/2_deploy.js file if required.

  2. Deploy to xDAI:

$ npx truffle migrate --network xdai
  1. Get the init code hash:
$ npx truffle exec scripts/getUniswapV2PairBytecode.js

In the uniswap-v2-periphery repo

  1. Copy the previously output UniswapV2Factory address to the FACTORY_ADDRESS in the migrations/2_deploy.js file.

  2. Update the WRAPPED_ETH address in the migrations/2_deploy.js file if required.

  3. Copy the init code hash previously output to contracts/libraries/UniswapV2Library.sol at line 24.

  4. Deploy to xDAI:

$ npx truffle migrate --network xdai

Note it seems xdai doesn't currently impose the contract size limit of 24576 bytes so we can enable 10000 optimizer runs making individual transaction executions cheaper. There's a chance xdai will introduce the limit in future in which case the current optimizer runs will need to be reduced. The current size of the UniswapV2Router02 is 26887 bytes.

About

πŸŽ› Core smart contracts of Uniswap V2

https://uniswap.org/docs

License:GNU General Public License v3.0


Languages

Language:TypeScript 47.8%Language:Solidity 42.7%Language:JavaScript 9.5%