Skip to content

Commit

Permalink
Merge pull request #1982 from iotaledger/develop
Browse files Browse the repository at this point in the history
Merge develop into update-rpc
  • Loading branch information
fijter authored Aug 22, 2024
2 parents 0a7946d + 303e401 commit d0a3de7
Show file tree
Hide file tree
Showing 1,590 changed files with 30,286 additions and 78,075 deletions.
2 changes: 2 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ ci-clippy-external = [
"-Dwarnings",
]
ci-license = "license-template --template .license_template"
ci-udeps = "udeps --all-targets --backend=depinfo"
ci-udeps-external = "udeps --all-targets --manifest-path external-crates/move/Cargo.toml --backend=depinfo"

[build]
rustflags = ["-C", "force-frame-pointers=yes", "-C", "force-unwind-tables=yes"]
Expand Down
10 changes: 8 additions & 2 deletions .changeset/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,25 @@
"commit": false,
"fixed": [],
"linked": [],
"access": "public",
"access": "restricted",
"baseBranch": "develop",
"updateInternalDependencies": "minor",
"privatePackages": false,
"ignore": [
"iota-wallet",
"iota-explorer",
"wallet-dashboard",
"@iota/apps-ui-kit",
"apps-backend",
"@iota/core",
"@iota/ui",
"@iota/apps-ui-kit",
"@iota/create-dapp",
"sponsored-transactions",
"kiosk-demo",
"kiosk-cli"
"kiosk-cli",
"@iota/zklogin",
"@iota/iotans-toolkit"
],
"___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": {
"onlyUpdatePeerDependentsWhenOutOfRange": true
Expand Down
4 changes: 4 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@
# Changes to the genesis builder should be approved by Konstantinos or Mirko at least
/crates/iota-genesis-builder/ @kodemartin @miker83z

# vm-language team
/iota-execution/ @miker83z @valeriyr
/external-crates/ @miker83z @valeriyr

# l1-core-infra team
/crates/iota-json-rpc*/ @iotaledger/l1-core-infra
/crates/iota-graphql*/ @iotaledger/l1-core-infra
Expand Down
17 changes: 13 additions & 4 deletions .github/actions/diffs/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ runs:
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- name: Detect Changes
uses: dorny/paths-filter@v2.10.2
uses: dorny/paths-filter@v3
id: diff
with:
filters: |
Expand All @@ -32,13 +32,21 @@ runs:
- "external-crates/**"
- "narwhal/**"
- "iota-execution/**"
- "docs/examples/rust/**"
- ".github/workflows/hierarchy.yml"
- ".github/workflows/codecov.yml"
- ".github/workflows/rust.yml"
- ".github/workflows/external.yml"
- ".github/workflows/_rust.yml"
- ".github/workflows/_rust_tests.yml"
- ".github/workflows/_rust_lints.yml"
- ".github/workflows/_external_rust_tests.yml"
- ".github/workflows/_external_rust_lints.yml"
- ".github/workflows/_mysticeti_tests.yml"
isDoc:
- "docs/content/**"
- "docs/site/**"
- "*.mdx"
- ".github/workflows/docs.yml"
- ".github/workflows/_docs_lint.yml"
- ".github/workflows/_docusaurus.yml"
isOldDoc:
- "doc/**"
- "*.md"
Expand All @@ -50,6 +58,7 @@ runs:
- "Cargo.toml"
- "examples/**"
- "iota_programmability/**"
- ".github/workflows/_move_tests.yml"
isReleaseNotesEligible:
- "consensus/**"
- "crates/**"
Expand Down
85 changes: 0 additions & 85 deletions .github/actions/ts-e2e/action.yml

This file was deleted.

3 changes: 3 additions & 0 deletions .github/actions/turbo-diffs/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ runs:
with:
fetch-depth: 0
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # [email protected]
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # [email protected]
with:
node-version: "20"
- id: changes
name: Detect changes
shell: bash
Expand Down
20 changes: 10 additions & 10 deletions .github/crates-filters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@ consensus-config:
- "consensus/config/**"
consensus-core:
- "consensus/core/**"
mysten-common:
- "crates/mysten-common/**"
mysten-metrics:
- "crates/mysten-metrics/**"
mysten-network:
- "crates/mysten-network/**"
mysten-util-mem:
- "crates/mysten-util-mem/**"
mysten-util-mem-derive:
- "crates/mysten-util-mem-derive/**"
iota-common:
- "crates/iota-common/**"
iota-metrics:
- "crates/iota-metrics/**"
iota-network-stack:
- "crates/iota-network-stack/**"
iota-util-mem:
- "crates/iota-util-mem/**"
iota-util-mem-derive:
- "crates/iota-util-mem-derive/**"
prometheus-closure-metric:
- "crates/prometheus-closure-metric/**"
shared-crypto:
Expand Down
15 changes: 15 additions & 0 deletions .github/workflows/_docs_lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Docs spellcheck and linting

on: workflow_call

jobs:
spelling:
name: Lint documentation
runs-on: [self-hosted]

steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- name: Spell Check Docs
uses: crate-ci/[email protected]
with:
files: ./docs/content
Original file line number Diff line number Diff line change
@@ -1,14 +1,6 @@
name: Docusaurus Build

on:
push:
branches: [develop]
pull_request:
types: [opened, synchronize, reopened, ready_for_review]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/develop' }}
on: workflow_call

jobs:
build:
Expand Down
87 changes: 87 additions & 0 deletions .github/workflows/_e2e.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
name: TS End-to-end Tests

on:
workflow_call:
inputs:
isRust:
type: boolean
required: true
isExplorer:
type: boolean
required: true
isTypescriptSDK:
type: boolean
required: true
isWallet:
type: boolean
required: true
isGraphQlTransport:
type: boolean
required: true

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
# Run e2e test against localnet built on the develop branch
localnet:
name: Localnet
if: inputs.isExplorer || inputs.isTypescriptSDK || inputs.isWallet || inputs.isRust
runs-on: self-hosted
services:
postgres:
image: postgres
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgrespw
POSTGRES_DB: iota_indexer_v2
POSTGRES_HOST_AUTH_METHOD: trust
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # [email protected]
- run: cargo build --bin iota-test-validator --bin iota --profile dev
- name: Install Nodejs
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # [email protected]
with:
node-version: "20"
cache: "pnpm"
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Install Playwright Browsers
run: pnpm --filter iota-explorer playwright install --with-deps chromium

- name: Set env
run: |
echo "VITE_IOTA_BIN=$PWD/target/debug/iota" >> $GITHUB_ENV
echo "E2E_RUN_LOCAL_NET_CMD=(RUST_LOG=info RUST_BACKTRACE=1 $(echo $PWD/target/debug/iota-test-validator) --with-indexer --pg-port 5432 --pg-db-name iota_indexer_v2 --graphql-host 127.0.0.1 --graphql-port 9125)" >> $GITHUB_ENV
- name: Run TS SDK e2e tests
if: inputs.isTypescriptSDK || inputs.isRust
run: pnpm dlx concurrently --kill-others --success command-1 "$E2E_RUN_LOCAL_NET_CMD" 'pnpm --filter @iota/iota-sdk test:e2e'

- name: Run RPC/GraphQL compatibility e2e tests
if: inputs.isGraphQlTransport || inputs.isRust
run: pnpm dlx concurrently --kill-others --success command-1 "$E2E_RUN_LOCAL_NET_CMD" 'pnpm --filter @iota/graphql-transport test:e2e'

- name: Build explorer
if: ${{ inputs.isTypescriptSDK || inputs.isExplorer || inputs.isRust}}
run: pnpm turbo --filter=iota-explorer build

- name: Run Explorer e2e tests
# need to run Explorer e2e when its upstream(TS SDK and Rust) or itself is changed
if: ${{ inputs.isTypescriptSDK || inputs.isExplorer || inputs.isRust}}
run: pnpm --filter iota-explorer playwright test
- uses: actions/upload-artifact@v3
if: always()
with:
name: playwright-report-explorer
path: apps/explorer/playwright-report/
retention-days: 30
20 changes: 20 additions & 0 deletions .github/workflows/_execution_cut.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Execution cut

on: workflow_call

jobs:
execution-cut:
name: cutting a new execution layer
runs-on: [self-hosted]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- name: Install cargo-hakari, and cache the binary
uses: baptiste0928/cargo-install@1cd874a5478fdca35d868ccc74640c5aabbb8f1b # [email protected]
with:
crate: cargo-hakari
locked: true
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- name: Make cut
run: ./scripts/execution_layer.py cut for_ci_test
- name: Check execution builds
run: cargo build -p iota-execution
40 changes: 40 additions & 0 deletions .github/workflows/_external_rust_lints.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Rust lints

on:
workflow_call:
inputs:
isRust:
type: boolean

jobs:
rustfmt:
if: always() && inputs.isRust
runs-on: [self-hosted]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- name: Install latest nightly
run: rustup toolchain install nightly --component rustfmt --allow-downgrade
- name: Check Rust formatting
run: |
cargo +nightly ci-fmt-external
cargo-deny:
if: always() && inputs.isRust
name: cargo-deny (advisories, licenses, bans, ...)
runs-on: [self-hosted]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1
- uses: EmbarkStudios/cargo-deny-action@v1

clippy:
if: always() && inputs.isRust
needs:
- rustfmt
- cargo-deny
runs-on: [self-hosted]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # Pin v4.1.1

# See '.cargo/config' for list of enabled/disabled clippy lints
- name: Check Clippy Lints
run: cargo ci-clippy-external
Loading

0 comments on commit d0a3de7

Please sign in to comment.