• Matthew Slipper's avatar
    l2geth: Add support for system addresses · 962f36e4
    Matthew Slipper authored
    Adds support for system addresses.
    
    To deploy to a system address, the deployer must either be in the list of hardcoded addresses described in `SystemAddressDeployers`, or be specified via the `SYSTEM_ADDRESS_0_DEPLOYER`/`SYSTEM_ADDRESS_1_DEPLOYER` environment variables. The hardcoded system addresses deployers will always override those placed in the environment, so specifying the `SYSTEM_ADDRESS_*` env vars on mainnet, Kovan, or Goerli is a no-op. The env vars are available primarily for testing purposes.
    
    The contract deployment **must** be the first transaction from the deployment address - i.e., it must have nonce zero.
    
    In order to make the tests work, I had to change the integration tests chain ID to no longer conflict with Goerli. The new integration tests chain ID is `987`.
    
    Co-Authored-By: @inphi
    962f36e4
Name
Last commit
Last update
.changeset Loading commit data...
.circleci Loading commit data...
.github Loading commit data...
.husky Loading commit data...
.vscode Loading commit data...
audits Loading commit data...
go Loading commit data...
integration-tests Loading commit data...
l2geth Loading commit data...
ops Loading commit data...
packages Loading commit data...
patches Loading commit data...
.dockerignore Loading commit data...
.editorconfig Loading commit data...
.eslintrc.js Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
.nvmrc Loading commit data...
.prettierrc.js Loading commit data...
.prettierrc.json Loading commit data...
CONTRIBUTING.md Loading commit data...
LICENSE Loading commit data...
README.md Loading commit data...
lerna.json Loading commit data...
package.json Loading commit data...
tsconfig.build.json Loading commit data...
tsconfig.json Loading commit data...
yarn.lock Loading commit data...