refactor: adjust LSP7 storage layout like LSP8 #548
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow ensure that the smart contracts can be compiled | |
# with different Solidity 0.8.x versions | |
name: Solidity Compiler Versions | |
on: | |
pull_request: | |
types: [opened] | |
# compare gas diff only when editing Solidity smart contract code | |
paths: | |
- "contracts/**/*.sol" | |
jobs: | |
solc_version: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
solc: [ | |
# TODO: wait for a patch release of @erc725/smart-contracts to compile on these 3 versions | |
# "0.8.5", | |
# "0.8.6", | |
# "0.8.7", | |
"0.8.8", | |
"0.8.9", | |
"0.8.10", | |
"0.8.11", | |
"0.8.12", | |
"0.8.13", | |
"0.8.14", | |
"0.8.15", | |
"0.8.16", | |
# 0.8.17 skipped as default in hardhat.config.ts | |
"0.8.18", | |
"0.8.19", | |
"0.8.20", | |
"0.8.21", | |
] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js '16.15.0' | |
uses: actions/setup-node@v2 | |
with: | |
node-version: "16.15.0" | |
cache: "npm" | |
- name: 📦 Install dependencies | |
run: npm ci | |
- name: Install solc-select | |
run: pip3 install solc-select | |
- name: Use Solc v${{ matrix.solc }} | |
run: | | |
solc-select install ${{ matrix.solc }} | |
solc-select use ${{ matrix.solc }} | |
- name: Compile Smart Contracts | |
run: | | |
if [[ ${{ matrix.solc }} < 0.8.12 ]] | |
then | |
solc $(ls contracts/**/*.sol | grep -v "Compatible") --allow-paths $(pwd)/node_modules/ \ | |
@erc725/smart-contracts/=node_modules/@erc725/smart-contracts/ \ | |
@openzeppelin/=node_modules/@openzeppelin/ \ | |
solidity-bytes-utils/=node_modules/solidity-bytes-utils/ | |
else | |
solc contracts/**/*.sol \ | |
@erc725/smart-contracts/=node_modules/@erc725/smart-contracts/ \ | |
@openzeppelin/=node_modules/@openzeppelin/ \ | |
solidity-bytes-utils/=node_modules/solidity-bytes-utils/ | |
fi; |