From 3e247ebd8aee476f77d3ddd5aa7149c326a68f8c Mon Sep 17 00:00:00 2001 From: agolajko <57454127+agolajko@users.noreply.github.com> Date: Fri, 15 Sep 2023 10:43:45 +0100 Subject: [PATCH 1/4] Fix: replaced hardhat run with ts-node (#18) Co-authored-by: agolajko Co-authored-by: Ramon Canales --- zksync/package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/zksync/package.json b/zksync/package.json index 4cb76b95b..8cebae64b 100644 --- a/zksync/package.json +++ b/zksync/package.json @@ -34,13 +34,13 @@ "build": "hardhat compile", "clean": "hardhat clean", "verify": "hardhat run src/verify.ts", - "deploy-testnet-paymaster": "hardhat run src/deployTestnetPaymaster.ts", - "deploy-force-deploy-upgrader": "hardhat run src/deployForceDeployUpgrader.ts", - "publish-bridge-preimages": "hardhat run src/publish-bridge-preimages.ts", + "deploy-testnet-paymaster": "ts-node src/deployTestnetPaymaster.ts", + "deploy-force-deploy-upgrader": "ts-node src/deployForceDeployUpgrader.ts", + "publish-bridge-preimages": "ts-node src/publish-bridge-preimages.ts", "deploy-l2-weth": "ts-node src/deployL2Weth.ts", "upgrade-l2-erc20-contract": "ts-node src/upgradeL2BridgeImpl.ts" }, "dependencies": { "dotenv": "^16.0.3" } -} +} \ No newline at end of file From 675be2e4b879aab5c12e7073972688e4237e5b7e Mon Sep 17 00:00:00 2001 From: Yury Akudovich Date: Fri, 15 Sep 2023 14:32:53 +0200 Subject: [PATCH 2/4] Automatically runs license scan in all subdirectories with yarn.lock. (#14) --- .github/workflows/license.yaml | 54 ----------------------- .github/workflows/nodejs-license.yaml | 63 +++++++++++++++++++++++++++ 2 files changed, 63 insertions(+), 54 deletions(-) delete mode 100644 .github/workflows/license.yaml create mode 100644 .github/workflows/nodejs-license.yaml diff --git a/.github/workflows/license.yaml b/.github/workflows/license.yaml deleted file mode 100644 index afc7d2200..000000000 --- a/.github/workflows/license.yaml +++ /dev/null @@ -1,54 +0,0 @@ -name: CI - -on: - pull_request - -env: - ALLOWED_LICENSES: > - MIT; - BSD; - ISC; - Apache-2.0; - MPL-2.0; - LGPL-3.0; - LGPL-3.0-or-later; - CC0-1.0; - CC-BY-3.0; - CC-BY-4.0; - Python-2.0; - PSF; - Public Domain; - WTFPL; - Unlicense; - # It has to be one line, there must be no space between packages. - EXCLUDE_PACKAGES: testrpc@0.0.1;uuid@2.0.1; - -jobs: - license-check: - runs-on: ubuntu-latest - steps: - - name: Checkout latest code - uses: actions/checkout@v3 - - - name: Use Node.js - uses: actions/setup-node@v3 - with: - node-version: '16.15.1' - - - name: Install yarn - run: npm install -g yarn license-checker - - - name: Install dependencies in ethereum - run: cd ethereum && yarn install - - - name: Check licenses in ethereum - working-directory: ethereum - run: npx license-checker --json --onlyAllow="$ALLOWED_LICENSES" --excludePackages "$EXCLUDE_PACKAGES" - - - name: Install dependencies in zksync - run: cd zksync && yarn install - - - name: Check licenses in zksync - working-directory: zksync - run: npx license-checker --json --onlyAllow="$ALLOWED_LICENSES" --excludePackages "$EXCLUDE_PACKAGES" - diff --git a/.github/workflows/nodejs-license.yaml b/.github/workflows/nodejs-license.yaml new file mode 100644 index 000000000..5d4041998 --- /dev/null +++ b/.github/workflows/nodejs-license.yaml @@ -0,0 +1,63 @@ +name: CI + +on: + - pull_request + +env: + ALLOWED_LICENSES: > + MIT; + BSD; + ISC; + Apache-2.0; + MPL-2.0; + LGPL-3.0; + LGPL-3.0-or-later; + CC0-1.0; + CC-BY-3.0; + CC-BY-4.0; + Python-2.0; + PSF; + Public Domain; + WTFPL; + Unlicense; + # It has to be one line, there must be no space between packages. + EXCLUDE_PACKAGES: testrpc@0.0.1;uuid@2.0.1; + +jobs: + generate-matrix: + name: Lists modules + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - uses: actions/checkout@v3 + - run: | + DIRS=$(find -not \( -path \*node_modules -prune \) -type f -name yarn.lock | xargs dirname | awk -v RS='' -v OFS='","' 'NF { $1 = $1; print "\"" $0 "\"" }') + echo "matrix=[${DIRS}]" >> $GITHUB_OUTPUT + id: set-matrix + + license-check: + needs: [generate-matrix] + runs-on: ubuntu-latest + strategy: + matrix: + dir: ${{ fromJson(needs.generate-matrix.outputs.matrix) }} + steps: + - name: Checkout latest code + uses: actions/checkout@v3 + + - name: Use Node.js + uses: actions/setup-node@v3 + with: + node-version: '16.15.1' + + - name: Install yarn + run: npm install -g yarn license-checker + + - name: Install dependencies in ${{ matrix.dir }} + working-directory: ${{ matrix.dir }} + run: yarn install + + - name: Check licenses in ${{ matrix.dir }} + working-directory: ${{ matrix.dir }} + run: npx license-checker --json --onlyAllow="$ALLOWED_LICENSES" --excludePackages "$EXCLUDE_PACKAGES" From b14b9a6e5d5d4db52abd97721aeb2722167d1144 Mon Sep 17 00:00:00 2001 From: Shahar Kaminsky Date: Sat, 16 Sep 2023 07:27:37 +0300 Subject: [PATCH 3/4] Add FOS Templates (#20) --- .github/ISSUE_TEMPLATE/bug_report.md | 39 ++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 21 +++++++ .github/SECURITY.md | 74 +++++++++++++++++++++++ .github/pull_request_template.md | 20 ++++++ CONTRIBUTING.md | 45 ++++++++++++-- 5 files changed, 194 insertions(+), 5 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/SECURITY.md create mode 100644 .github/pull_request_template.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 000000000..163e439d5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,39 @@ +--- +name: Scripts-Related Bug Report +about: Use this template for reporting script-related bugs. For contract-related bugs, see our security policy. +title: '' +labels: bug +assignees: '' +--- + +### 🐛 Script Bug Report + +#### 📝 Description + +Provide a clear and concise description of the bug. + +#### 🔄 Reproduction Steps + +Steps to reproduce the behaviour + +#### 🤔 Expected Behavior + +Describe what you expected to happen. + +#### 😯 Current Behavior + +Describe what actually happened. + +#### 🖥️ Environment + +Any relevant environment details. + +#### 📋 Additional Context + +Add any other context about the problem here. If applicable, add screenshots to help explain. + +#### 📎 Log Output + +``` +Paste any relevant log output here. +``` diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 000000000..d921e066c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,21 @@ +--- +name: Feature request +about: Use this template for requesting features +title: '' +labels: feat +assignees: '' +--- + +### 🌟 Feature Request + +#### 📝 Description + +Provide a clear and concise description of the feature you'd like to see. + +#### 🤔 Rationale + +Explain why this feature is important and how it benefits the project. + +#### 📋 Additional Context + +Add any other context or information about the feature request here. diff --git a/.github/SECURITY.md b/.github/SECURITY.md new file mode 100644 index 000000000..2f2871cea --- /dev/null +++ b/.github/SECURITY.md @@ -0,0 +1,74 @@ +# Security Policy + +We truly appreciate efforts to discover and disclose security issues responsibly! + +## Vulnerabilities + +If you'd like to report a security issue in the repositories of matter-labs organization, please proceed to our +[Bug Bounty Program on Immunefi](https://era.zksync.io/docs/reference/troubleshooting/audit-bug-bounty.html#bug-bounty-program). + +## Other Security Issues + +We take an impact-first approach instead of a rules-first approach. Therefore, if you believe you found the impactful +issue but can't report it via the Bug Bounty, please email us at +[security@matterlabs.dev](mailto:security@matterlabs.dev). + +### PGP Key + +The following PGP key may be used to communicate sensitive information to developers: + +Fingerprint: `5FED B2D0 EA2C 4906 DD66 71D7 A2C5 0B40 CE3C F297` + +``` +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=xkM3 +-----END PGP PUBLIC KEY BLOCK----- +``` diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 000000000..8ce206c84 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,20 @@ +# What ❔ + + + + + +## Why ❔ + + + + +## Checklist + + + + +- [ ] PR title corresponds to the body of PR (we generate changelog entries from PRs). +- [ ] Tests for the changes have been added / updated. +- [ ] Documentation comments have been added / updated. +- [ ] Code has been formatted via `zk fmt` and `zk lint`. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f129e606f..dd3d45842 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,9 +1,44 @@ # Contribution Guidelines -Thank you for considering helping out with the source code! We are extremely grateful for any consideration of -contributions to this repository. However, at this time, we generally do not accept external contributions. This policy -will change in the future, so please check back regularly for updates. +Hello! Thanks for your interest in joining the mission to accelerate the mass adoption of crypto for personal +sovereignty! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes! -For security issues, please contact us at [security@matterlabs.dev](mailto:security@matterlabs.dev). +## Ways to contribute -Thank you for your support in accelerating the mass adoption of crypto for personal sovereignty! +There are many ways to contribute to the ZK Stack: + +1. Open issues: if you find a bug, have something you believe needs to be fixed, or have an idea for a feature, please + open an issue. +2. Add color to existing issues: provide screenshots, code snippets, and whatever you think would be helpful to resolve + issues. +3. Resolve issues: either by showing an issue isn't a problem and the current state is ok as is or by fixing the problem + and opening a PR. +4. Report security issues, see [our security policy](./github/SECURITY.md). +5. [Join the team!](https://matterlabs.notion.site/Shape-the-future-of-Ethereum-at-Matter-Labs-dfb3b5a037044bb3a8006af2eb0575e0) + +## Fixing issues + +To contribute code fixing issues, please fork the repo, fix an issue, commit, add documentation as per the PR template, +and the repo's maintainers will review the PR. +[here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork) +for guidance how to work with PRs created from a fork. + +## Licenses + +If you contribute to this project, your contributions will be made to the project under both Apache 2.0 and the MIT +license. + +## Resources + +We aim to make it as easy as possible to contribute to the mission. This is still WIP, and we're happy for contributions +and suggestions here too. Some resources to help: + +1. [In-repo docs aimed at developers](docs) +2. [zkSync Era docs!](https://era.zksync.io/docs/) +3. Company links can be found in the [repo's readme](README.md) + +## Code of Conduct + +Be polite and respectful. + +### Thank you From 503c1f1746a305c9f0ef5b4ad44d5f2316da353e Mon Sep 17 00:00:00 2001 From: Yury Akudovich Date: Thu, 21 Sep 2023 15:54:58 +0200 Subject: [PATCH 4/4] chore: Syncs common workflows from the template into main (#28) --- .github/workflows/nodejs-license.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nodejs-license.yaml b/.github/workflows/nodejs-license.yaml index 5d4041998..f59957d7d 100644 --- a/.github/workflows/nodejs-license.yaml +++ b/.github/workflows/nodejs-license.yaml @@ -1,7 +1,6 @@ -name: CI +name: Node license check -on: - - pull_request +on: pull_request env: ALLOWED_LICENSES: > @@ -49,7 +48,7 @@ jobs: - name: Use Node.js uses: actions/setup-node@v3 with: - node-version: '16.15.1' + node-version: 18 - name: Install yarn run: npm install -g yarn license-checker