diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 8be2aa0d12b..70594cfe32c 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -36,7 +36,6 @@ # core-consensus team /consensus/ @iotaledger/core-consensus -/narwhal/ @iotaledger/core-consensus # dev-tools team /crates/iota/ @iotaledger/dev-tools @@ -69,11 +68,11 @@ vercel.json @iotaledger/boxfish @iotaledger/tooling /docs/**/vercel.json @iotaledger/devx # CI Taskforce -/.github/actions/ @msarcev @alexsporn @thibault-martinez @DaughterOfMars @fijter @Dr-Electron -/.github/workflows/ @msarcev @alexsporn @thibault-martinez @DaughterOfMars @fijter @Dr-Electron +/.github/actions/ @msarcev @alexsporn @thibault-martinez @DaughterOfMars @Dr-Electron +/.github/workflows/ @msarcev @alexsporn @thibault-martinez @DaughterOfMars @Dr-Electron # Protect this CODEOWNERS file, with some fallback in case of unavailability -/.github/CODEOWNERS @luca-moser @lzpap @miker83z @fijter +/.github/CODEOWNERS @luca-moser @lzpap @miker83z @alexsporn # Scripts /scripts/dependency_graphs/ @muXxer diff --git a/.github/actions/diffs/action.yml b/.github/actions/diffs/action.yml index 13e34f24df5..7b092777866 100644 --- a/.github/actions/diffs/action.yml +++ b/.github/actions/diffs/action.yml @@ -27,7 +27,6 @@ runs: - "consensus/**" - "crates/**" - "external-crates/**" - - "narwhal/**" - "iota-execution/**" - "docs/examples/rust/**" - ".github/workflows/hierarchy.yml" @@ -64,6 +63,5 @@ runs: - "docker/**" - "external-crates/**" - "kiosk/**" - - "narwhal/**" - "nre/**" - "iota-execution/**" diff --git a/.github/crates-filters.yml b/.github/crates-filters.yml index e85857f33ea..55ca74cc759 100644 --- a/.github/crates-filters.yml +++ b/.github/crates-filters.yml @@ -170,16 +170,6 @@ typed-store-derive: - "crates/typed-store-derive/**" typed-store-error: - "crates/typed-store-error/**" -narwhal-config: - - "narwhal/config/**" -narwhal-crypto: - - "narwhal/crypto/**" -narwhal-network: - - "narwhal/network/**" -narwhal-test-utils: - - "narwhal/test-utils/**" -narwhal-types: - - "narwhal/types/**" iota-execution: - "iota-execution/**" iota-execution-cut: diff --git a/.github/workflows/_cargo_deny.yml b/.github/workflows/_cargo_deny.yml index f8249b38ed0..ccaf425bd58 100644 --- a/.github/workflows/_cargo_deny.yml +++ b/.github/workflows/_cargo_deny.yml @@ -2,6 +2,11 @@ name: Cargo deny on: workflow_call: + inputs: + manifest-path: + type: string + required: false + default: "./Cargo.toml" secrets: SSH_PRIVATE_KEY_IOTA_CI: required: true @@ -13,24 +18,13 @@ concurrency: cancel-in-progress: true jobs: - rust-crates: - name: cargo-deny (advisories, licenses, bans, ...) - runs-on: [self-hosted] - steps: - - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # pin@v4 - - uses: EmbarkStudios/cargo-deny-action@8371184bd11e21dcf8ac82ebf8c9c9f74ebf7268 # pin@v2 - with: - ssh-key: ${{ secrets.SSH_PRIVATE_KEY_IOTA_CI }} - ssh-known-hosts: ${{ secrets.SSH_GITHUB_KNOWN_HOSTS }} - use-git-cli: true - - external-crates: - name: cargo-deny (advisories, licenses, bans, ...) + cargo-deny: runs-on: [self-hosted] steps: - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # pin@v4 - uses: EmbarkStudios/cargo-deny-action@8371184bd11e21dcf8ac82ebf8c9c9f74ebf7268 # pin@v2 with: + manifest-path: ${{ inputs.manifest-path }} ssh-key: ${{ secrets.SSH_PRIVATE_KEY_IOTA_CI }} ssh-known-hosts: ${{ secrets.SSH_GITHUB_KNOWN_HOSTS }} use-git-cli: true diff --git a/.github/workflows/_e2e.yml b/.github/workflows/_e2e.yml index 8956e3e8293..6438470f121 100644 --- a/.github/workflows/_e2e.yml +++ b/.github/workflows/_e2e.yml @@ -88,6 +88,14 @@ jobs: path: apps/explorer/playwright-report/ retention-days: 30 + - name: Build Kiosk + if: inputs.isRust || inputs.isTypescriptSDK + run: pnpm turbo --filter=@iota/kiosk build + + - name: Run Kiosk e2e tests + if: inputs.isRust || inputs.isTypescriptSDK + run: pnpm dlx concurrently --kill-others --success command-1 "$E2E_RUN_LOCAL_NET_CMD" 'pnpm --filter=@iota/kiosk test:e2e' + - name: Run Local net run: cargo run --bin iota start --force-regenesis --with-faucet --epoch-duration-ms 10000 & diff --git a/.github/workflows/_rust.yml b/.github/workflows/_rust.yml index 877337351f6..2ae14b1f89b 100644 --- a/.github/workflows/_rust.yml +++ b/.github/workflows/_rust.yml @@ -62,6 +62,5 @@ jobs: if: | !cancelled() && !failure() && inputs.isRust && github.event.pull_request.draft == false needs: - - rust-tests - - external-tests + - rust-lints uses: ./.github/workflows/_execution_cut.yml diff --git a/.github/workflows/_rust_lints.yml b/.github/workflows/_rust_lints.yml index fb7e75eb51b..f63dfb5cab0 100644 --- a/.github/workflows/_rust_lints.yml +++ b/.github/workflows/_rust_lints.yml @@ -51,10 +51,6 @@ jobs: - rustfmt runs-on: [self-hosted] steps: - - uses: arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # pin@v3 - # this avoids rate-limiting - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # pin@v4 # TODO(bradh): debug and re-enable this; the caching is breaking the clippy build # Enable caching of the 'librocksdb-sys' crate by additionally caching the diff --git a/.github/workflows/_vercel_deploy.yml b/.github/workflows/_vercel_deploy.yml index 47f9d854598..b1efe39a2ea 100644 --- a/.github/workflows/_vercel_deploy.yml +++ b/.github/workflows/_vercel_deploy.yml @@ -36,7 +36,7 @@ jobs: explorer-preview: name: Vercel Explorer Preview if: inputs.shouldDeployPreview && inputs.isExplorer - uses: ./.github/workflows/apps-explorer.deploy.yml + uses: ./.github/workflows/apps_explorer_deploy.yml secrets: inherit with: isProd: false @@ -44,7 +44,7 @@ jobs: explorer-prod: name: Vercel Explorer Production if: inputs.isDevelop - uses: ./.github/workflows/apps-explorer.deploy.yml + uses: ./.github/workflows/apps_explorer_deploy.yml secrets: inherit with: isProd: true @@ -52,15 +52,15 @@ jobs: ui-kit-preview: name: Vercel UI Kit Preview if: inputs.shouldDeployPreview && inputs.isAppsUiKit - uses: ./.github/workflows/apps-ui-kit.deploy.yml + uses: ./.github/workflows/apps_ui_kit_deploy.yml secrets: inherit with: isProd: false ui-kit-prod: - name: Vercel UI Kit Preview + name: Vercel UI Kit Production if: inputs.isDevelop - uses: ./.github/workflows/apps-ui-kit.deploy.yml + uses: ./.github/workflows/apps_ui_kit_deploy.yml secrets: inherit with: isProd: true @@ -68,7 +68,7 @@ jobs: wallet-dashboard-preview: name: Vercel Wallet Dashboard Preview if: inputs.shouldDeployPreview && inputs.isWalletDashboard - uses: ./.github/workflows/apps-wallet-dashboard.deploy.yml + uses: ./.github/workflows/apps_wallet_dashboard_deploy.yml secrets: inherit with: isProd: false @@ -76,7 +76,7 @@ jobs: wallet-dashboard-prod: name: Vercel Wallet Dashboard Production if: inputs.isDevelop - uses: ./.github/workflows/apps-wallet-dashboard.deploy.yml + uses: ./.github/workflows/apps_wallet_dashboard_deploy.yml secrets: inherit with: isProd: true @@ -84,7 +84,7 @@ jobs: apps-backend-preview: name: Vercel apps-backend Preview if: inputs.shouldDeployPreview && inputs.isAppsBackend - uses: ./.github/workflows/apps-backend.deploy.yml + uses: ./.github/workflows/apps_backend_deploy.yml secrets: inherit with: isProd: false @@ -92,7 +92,7 @@ jobs: apps-backend-prod: name: Vercel apps-backend Production if: inputs.isDevelop - uses: ./.github/workflows/apps-backend.deploy.yml + uses: ./.github/workflows/apps_backend_deploy.yml secrets: inherit with: isProd: true diff --git a/.github/workflows/apps-backend.deploy.yml b/.github/workflows/apps_backend_deploy.yml similarity index 100% rename from .github/workflows/apps-backend.deploy.yml rename to .github/workflows/apps_backend_deploy.yml diff --git a/.github/workflows/apps-explorer.deploy.yml b/.github/workflows/apps_explorer_deploy.yml similarity index 100% rename from .github/workflows/apps-explorer.deploy.yml rename to .github/workflows/apps_explorer_deploy.yml diff --git a/.github/workflows/apps-ui-kit.deploy.yml b/.github/workflows/apps_ui_kit_deploy.yml similarity index 100% rename from .github/workflows/apps-ui-kit.deploy.yml rename to .github/workflows/apps_ui_kit_deploy.yml diff --git a/.github/workflows/apps-wallet-dashboard.deploy.yml b/.github/workflows/apps_wallet_dashboard_deploy.yml similarity index 100% rename from .github/workflows/apps-wallet-dashboard.deploy.yml rename to .github/workflows/apps_wallet_dashboard_deploy.yml diff --git a/.github/workflows/apps-wallet-nightly.build.yml b/.github/workflows/apps_wallet_nightly_build.yml similarity index 100% rename from .github/workflows/apps-wallet-nightly.build.yml rename to .github/workflows/apps_wallet_nightly_build.yml diff --git a/.github/workflows/apps-wallet-rc.build.yml b/.github/workflows/apps_wallet_rc_build.yml similarity index 100% rename from .github/workflows/apps-wallet-rc.build.yml rename to .github/workflows/apps_wallet_rc_build.yml diff --git a/.github/workflows/build-nightly.yml b/.github/workflows/build_nightly.yml similarity index 100% rename from .github/workflows/build-nightly.yml rename to .github/workflows/build_nightly.yml diff --git a/.github/workflows/cargo-llvm-cov.yml b/.github/workflows/cargo_llvm_cov.yml similarity index 100% rename from .github/workflows/cargo-llvm-cov.yml rename to .github/workflows/cargo_llvm_cov.yml diff --git a/.github/workflows/changesets-ci.yml b/.github/workflows/changesets_ci.yml similarity index 100% rename from .github/workflows/changesets-ci.yml rename to .github/workflows/changesets_ci.yml diff --git a/.github/workflows/changesets-ci-comment.yml b/.github/workflows/changesets_ci_comment.yml similarity index 100% rename from .github/workflows/changesets-ci-comment.yml rename to .github/workflows/changesets_ci_comment.yml diff --git a/.github/workflows/changesets-publish.yml b/.github/workflows/changesets_publish.yml similarity index 100% rename from .github/workflows/changesets-publish.yml rename to .github/workflows/changesets_publish.yml diff --git a/.github/workflows/crate-docs.yml b/.github/workflows/crate_docs.yml similarity index 100% rename from .github/workflows/crate-docs.yml rename to .github/workflows/crate_docs.yml diff --git a/.github/workflows/develop-ci-slack-report.yml b/.github/workflows/develop_ci_slack_report.yml similarity index 100% rename from .github/workflows/develop-ci-slack-report.yml rename to .github/workflows/develop_ci_slack_report.yml diff --git a/.github/workflows/fastcrypto_pull.yml b/.github/workflows/fastcrypto_pull.yml deleted file mode 100644 index 081a939c899..00000000000 --- a/.github/workflows/fastcrypto_pull.yml +++ /dev/null @@ -1,40 +0,0 @@ -name: Update the Fastcrypto pointer IOTA - -on: - ## Allow triggering this workflow manually via GitHub CLI/web - workflow_dispatch: - schedule: - # Update on every hour at 10 past the hour - - cron: "10 * * * *" - -jobs: - update-dep: - runs-on: self-hosted - # Important settings as we don't want to open a PR when the update fails - continue-on-error: false - steps: - - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # pin@v4 - # Fork of 'Swatinem/rust-cache' which allows caching additional paths - - uses: bmwill/rust-cache@fb63fcd7a959767755b88b5af2f5cbf65fb8a127 # pin@v1 - - name: Install cargo-hakari, and cache the binary - uses: baptiste0928/cargo-install@1cd874a5478fdca35d868ccc74640c5aabbb8f1b # pin@v3.0.0 - with: - crate: cargo-hakari - locked: true - - name: Update the fastcrypto pointer - run: | - scripts/update_fastcrypto.sh - - name: Create Pull Request - uses: peter-evans/create-pull-request@5e914681df9dc83aa4e4905692ca88beb2f9e91f # pin@v5 - with: - # TODO: change the token to something FC-specific? - token: ${{ secrets.NW_AUTO_UPDATE }} - commit-message: chore(deps) Update the Fastcrypto pointer - title: chore(deps) Update the Fastcrypto pointer - body: | - - Update Fastcrypto - - Auto-generated by [create-pull-request][1] and the scripts/update_fastcrypto.sh script - - [1]: https://github.com/peter-evans/create-pull-request - branch: update-fastcrypto diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 94307357dfb..a50ba604472 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -29,6 +29,12 @@ env: RUST_BACKTRACE: short jobs: + cargo-deny-external: + uses: ./.github/workflows/_cargo_deny.yml + with: + manifest-path: external-crates/move/Cargo.toml + secrets: inherit + release: name: build release binaries runs-on: ${{ matrix.os }} diff --git a/.github/workflows/preview-wiki.yml b/.github/workflows/preview_wiki.yml similarity index 100% rename from .github/workflows/preview-wiki.yml rename to .github/workflows/preview_wiki.yml diff --git a/.github/workflows/release-docker.yml b/.github/workflows/release_docker.yml similarity index 75% rename from .github/workflows/release-docker.yml rename to .github/workflows/release_docker.yml index 62c6464c51e..5102bcdc25e 100644 --- a/.github/workflows/release-docker.yml +++ b/.github/workflows/release_docker.yml @@ -46,11 +46,19 @@ jobs: uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # pin@v5 with: images: docker-registry.iota.org/iota-node + # mapping semver tags to networks + # v{MAJOR}.{MINOR}.{PATCH}-alpha -> alphanet + # v{MAJOR}.{MINOR}.{PATCH}-beta -> devnet + # v{MAJOR}.{MINOR}.{PATCH}-rc -> testnet + # v{MAJOR}.{MINOR}.{PATCH} -> mainnet tags: | type=raw,value={{sha}},enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value={{tag}},enable=${{ github.event_name == 'release' }} - type=match,pattern=(.*)-v\d+\.\d+\.\d+,group=1,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-alpha.*\d*,group=0,value=alphanet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-beta.*\d*,group=0,value=devnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-rc.*\d*,group=0,value=testnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+$,group=0,value=mainnet,enable=${{ github.event_name == 'release' }} - name: Login to Docker Registry uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # pin@v3 @@ -97,11 +105,19 @@ jobs: uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # pin@v5 with: images: docker-registry.iota.org/iota-indexer + # mapping semver tags to networks + # v{MAJOR}.{MINOR}.{PATCH}-alpha -> alphanet + # v{MAJOR}.{MINOR}.{PATCH}-beta -> devnet + # v{MAJOR}.{MINOR}.{PATCH}-rc -> testnet + # v{MAJOR}.{MINOR}.{PATCH} -> mainnet tags: | type=raw,value={{sha}},enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value={{tag}},enable=${{ github.event_name == 'release' }} - type=match,pattern=(.*)-v\d+\.\d+\.\d+,group=1,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-alpha.*\d*,group=0,value=alphanet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-beta.*\d*,group=0,value=devnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-rc.*\d*,group=0,value=testnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+$,group=0,value=mainnet,enable=${{ github.event_name == 'release' }} - name: Login to Docker Registry uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # pin@v3 @@ -148,11 +164,19 @@ jobs: uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # pin@v5 with: images: docker-registry.iota.org/iota-tools + # mapping semver tags to networks + # v{MAJOR}.{MINOR}.{PATCH}-alpha -> alphanet + # v{MAJOR}.{MINOR}.{PATCH}-beta -> devnet + # v{MAJOR}.{MINOR}.{PATCH}-rc -> testnet + # v{MAJOR}.{MINOR}.{PATCH} -> mainnet tags: | type=raw,value={{sha}},enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value={{tag}},enable=${{ github.event_name == 'release' }} - type=match,pattern=(.*)-v\d+\.\d+\.\d+,group=1,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-alpha.*\d*,group=0,value=alphanet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-beta.*\d*,group=0,value=devnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-rc.*\d*,group=0,value=testnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+$,group=0,value=mainnet,enable=${{ github.event_name == 'release' }} - name: Login to Docker Registry uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # pin@v3 @@ -199,11 +223,19 @@ jobs: uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # pin@v5 with: images: docker-registry.iota.org/iota-graphql-rpc + # mapping semver tags to networks + # v{MAJOR}.{MINOR}.{PATCH}-alpha -> alphanet + # v{MAJOR}.{MINOR}.{PATCH}-beta -> devnet + # v{MAJOR}.{MINOR}.{PATCH}-rc -> testnet + # v{MAJOR}.{MINOR}.{PATCH} -> mainnet tags: | type=raw,value={{sha}},enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }} type=raw,value={{tag}},enable=${{ github.event_name == 'release' }} - type=match,pattern=(.*)-v\d+\.\d+\.\d+,group=1,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-alpha.*\d*,group=0,value=alphanet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-beta.*\d*,group=0,value=devnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+-rc.*\d*,group=0,value=testnet,enable=${{ github.event_name == 'release' }} + type=match,pattern=v\d+\.\d+\.\d+$,group=0,value=mainnet,enable=${{ github.event_name == 'release' }} - name: Login to Docker Registry uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # pin@v3 diff --git a/.github/workflows/release-notes-monitor.yml b/.github/workflows/release_notes_monitor.yml similarity index 96% rename from .github/workflows/release-notes-monitor.yml rename to .github/workflows/release_notes_monitor.yml index 8d3e3795053..f19fc19bb40 100644 --- a/.github/workflows/release-notes-monitor.yml +++ b/.github/workflows/release_notes_monitor.yml @@ -33,7 +33,7 @@ jobs: export previous_tag=$(git tag | grep -E 'iota_v1(.*)_rel_notes' | sort -rV | head -1) export previous_commit_hash=$(git rev-list -n 1 ${previous_tag}) - export list_of_prs=$(git log --grep "\[x\]" --pretty=oneline --abbrev-commit ${previous_commit_hash}...${new_commit_hash} -- crates dashboards doc docker external-crates kiosk narwhal nre iota-execution | grep -o '#[0-9]\+' | grep -o '[0-9]\+' | jq -R -s -c 'split("\n")[:-1]') + export list_of_prs=$(git log --grep "\[x\]" --pretty=oneline --abbrev-commit ${previous_commit_hash}...${new_commit_hash} -- crates dashboards doc docker external-crates kiosk nre iota-execution | grep -o '#[0-9]\+' | grep -o '[0-9]\+' | jq -R -s -c 'split("\n")[:-1]') echo "matrix=${list_of_prs}" >> $GITHUB_OUTPUT echo "new_commit_hash=${new_commit_hash}" >> $GITHUB_OUTPUT diff --git a/.github/workflows/release-wiki.yml b/.github/workflows/release_wiki.yml similarity index 100% rename from .github/workflows/release-wiki.yml rename to .github/workflows/release_wiki.yml diff --git a/.github/workflows/simulator-nightly.yml b/.github/workflows/simulator_nightly.yml similarity index 100% rename from .github/workflows/simulator-nightly.yml rename to .github/workflows/simulator_nightly.yml diff --git a/.github/workflows/split-cluster.yml b/.github/workflows/split_cluster.yml similarity index 100% rename from .github/workflows/split-cluster.yml rename to .github/workflows/split_cluster.yml diff --git a/.github/workflows/trigger-builds.yml b/.github/workflows/trigger-builds.yml deleted file mode 100644 index 644941eda69..00000000000 --- a/.github/workflows/trigger-builds.yml +++ /dev/null @@ -1,35 +0,0 @@ -name: Trigger builds for images and binaries - -on: - workflow_dispatch: - push: - branches: - - "devnet" - - "testnet" - - "mainnet" - - "releases/iota-*-release" - -concurrency: ${{ github.workflow }}-${{ github.ref }} - -jobs: - docker-images: - runs-on: self-hosted - steps: - - name: Dispatch Docker Builds in iotaledger/iota-operations - uses: peter-evans/repository-dispatch@ff45666b9427631e3450c54a1bcbee4d9ff4d7c0 # pin@v3 - with: - repository: iotaledger/iota-operations - token: ${{ secrets.DOCKER_BINARY_BUILDS_DISPATCH }} - event-type: build-docker-images - client-payload: '{"iota_commit": "${{ github.sha }}", "docker_hub_tag": "${{ github.ref }}"}' - - release-binaries: - runs-on: self-hosted - steps: - - name: Dispatch Release binaries builds in iotaledger/iota-operations - uses: peter-evans/repository-dispatch@ff45666b9427631e3450c54a1bcbee4d9ff4d7c0 # pin@v3 - with: - repository: iotaledger/iota-operations - token: ${{ secrets.DOCKER_BINARY_BUILDS_DISPATCH }} - event-type: build-release-binaries - client-payload: '{"iota_commit": "${{ github.sha }}"}' diff --git a/Cargo.lock b/Cargo.lock index c2fd51fc912..649fa531cbd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1085,9 +1085,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f95446d919226d587817a7d21379e6eb099b97b45110a7f272a444ca5c54070" +checksum = "cdd82dba44d209fddb11c190e0a94b78651f95299598e472215667417a03ff1d" dependencies = [ "aws-lc-sys", "mirai-annotations", @@ -1097,9 +1097,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.21.1" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234314bd569802ec87011d653d6815c6d7b9ffb969e9fee5b8b20ef860e8dce9" +checksum = "df7a4168111d7eb622a31b214057b8509c0a7e1794f44c546d742330dc793972" dependencies = [ "bindgen 0.69.5", "cc", @@ -1813,7 +1813,7 @@ checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" [[package]] name = "bin-version" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "const-str", "git-version", @@ -1858,7 +1858,7 @@ dependencies = [ "bitflags 2.6.0", "cexpr", "clang-sys", - "itertools 0.12.1", + "itertools 0.10.5", "lazy_static", "lazycell", "log", @@ -3430,37 +3430,6 @@ dependencies = [ "syn 2.0.77", ] -[[package]] -name = "derive_builder" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" -dependencies = [ - "derive_builder_macro", -] - -[[package]] -name = "derive_builder_core" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" -dependencies = [ - "darling 0.14.4", - "proc-macro2 1.0.86", - "quote 1.0.37", - "syn 1.0.109", -] - -[[package]] -name = "derive_builder_macro" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" -dependencies = [ - "derive_builder_core", - "syn 1.0.109", -] - [[package]] name = "derive_more" version = "0.99.18" @@ -3661,14 +3630,14 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" [[package]] name = "docs-examples" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", "bip32", "iota-keys", "iota-move-build", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "move-binary-format", "move-core-types", "serde_json", @@ -4722,9 +4691,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" dependencies = [ "futures-core", "futures-sink", @@ -4732,9 +4701,9 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" [[package]] name = "futures-executor" @@ -4750,9 +4719,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" [[package]] name = "futures-locks" @@ -4766,9 +4735,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2 1.0.86", "quote 1.0.37", @@ -4777,15 +4746,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" [[package]] name = "futures-timer" @@ -4799,9 +4768,9 @@ dependencies = [ [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ "futures-channel", "futures-core", @@ -5686,7 +5655,7 @@ checksum = "8bb03732005da905c88227371639bf1ad885cc712789c011c31c5fb3ab3ccf02" [[package]] name = "iota" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anyhow", @@ -5725,12 +5694,13 @@ dependencies = [ "iota-json-rpc-types", "iota-keys", "iota-macros", + "iota-metrics", "iota-move", "iota-move-build", "iota-package-management", "iota-protocol-config", "iota-replay", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-simulator", "iota-source-validation", "iota-swarm", @@ -5808,7 +5778,7 @@ dependencies = [ [[package]] name = "iota-adapter-transactional-tests" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "datatest-stable", "iota-transactional-test-runner", @@ -5843,7 +5813,7 @@ dependencies = [ [[package]] name = "iota-analytics-indexer" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "arrow", @@ -5894,7 +5864,7 @@ dependencies = [ [[package]] name = "iota-analytics-indexer-derive" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "proc-macro2 1.0.86", "quote 1.0.37", @@ -5903,7 +5873,7 @@ dependencies = [ [[package]] name = "iota-archival" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "byteorder", @@ -5935,7 +5905,7 @@ dependencies = [ [[package]] name = "iota-authority-aggregation" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "futures", "iota-metrics", @@ -5946,7 +5916,7 @@ dependencies = [ [[package]] name = "iota-aws-orchestrator" -version = "0.0.1" +version = "0.5.0-alpha" dependencies = [ "async-trait", "aws-config", @@ -5977,7 +5947,7 @@ dependencies = [ [[package]] name = "iota-benchmark" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -5999,7 +5969,7 @@ dependencies = [ "iota-metrics", "iota-network", "iota-protocol-config", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-simulator", "iota-storage", "iota-surfer", @@ -6027,7 +5997,7 @@ dependencies = [ [[package]] name = "iota-bridge" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "arc-swap", @@ -6049,7 +6019,7 @@ dependencies = [ "iota-json-rpc-types", "iota-keys", "iota-metrics", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-test-transaction-builder", "iota-types", "lru 0.12.4", @@ -6076,7 +6046,7 @@ dependencies = [ [[package]] name = "iota-bridge-cli" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "clap", @@ -6087,7 +6057,7 @@ dependencies = [ "iota-config", "iota-json-rpc-types", "iota-keys", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-types", "move-core-types", "reqwest 0.12.7", @@ -6102,7 +6072,7 @@ dependencies = [ [[package]] name = "iota-bridge-indexer" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6118,7 +6088,7 @@ dependencies = [ "iota-indexer-builder", "iota-json-rpc-types", "iota-metrics", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-test-transaction-builder", "iota-types", "prometheus", @@ -6132,7 +6102,7 @@ dependencies = [ [[package]] name = "iota-cluster-test" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6150,7 +6120,7 @@ dependencies = [ "iota-json", "iota-json-rpc-types", "iota-keys", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-swarm", "iota-swarm-config", "iota-test-transaction-builder", @@ -6172,7 +6142,7 @@ dependencies = [ [[package]] name = "iota-common" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "futures", "parking_lot 0.12.3", @@ -6181,7 +6151,7 @@ dependencies = [ [[package]] name = "iota-config" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anyhow", @@ -6208,7 +6178,7 @@ dependencies = [ [[package]] name = "iota-core" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anyhow", @@ -6268,7 +6238,6 @@ dependencies = [ "move-core-types", "move-package", "move-symbol-pool", - "narwhal-types", "nonempty", "num-bigint 0.4.6", "num_cpus", @@ -6278,6 +6247,7 @@ dependencies = [ "pprof", "pretty_assertions", "prometheus", + "quinn-proto", "rand 0.8.5", "rayon", "reqwest 0.12.7", @@ -6300,6 +6270,7 @@ dependencies = [ "thiserror", "tokio", "tokio-stream", + "tower 0.4.13", "tracing", "twox-hash", "typed-store", @@ -6309,7 +6280,7 @@ dependencies = [ [[package]] name = "iota-cost" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -6364,7 +6335,7 @@ dependencies = [ [[package]] name = "iota-data-ingestion" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6398,7 +6369,7 @@ dependencies = [ [[package]] name = "iota-data-ingestion-core" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6425,7 +6396,7 @@ dependencies = [ [[package]] name = "iota-e2e-tests" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6456,7 +6427,7 @@ dependencies = [ "iota-node", "iota-protocol-config", "iota-rest-api", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-simulator", "iota-storage", "iota-swarm", @@ -6487,7 +6458,7 @@ dependencies = [ [[package]] name = "iota-enum-compat-util" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "serde_yaml", ] @@ -6530,7 +6501,7 @@ dependencies = [ [[package]] name = "iota-faucet" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-recursion", @@ -6544,7 +6515,7 @@ dependencies = [ "iota-json-rpc-types", "iota-keys", "iota-metrics", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-types", "parking_lot 0.12.3", "prometheus", @@ -6568,7 +6539,7 @@ dependencies = [ [[package]] name = "iota-framework" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -6589,7 +6560,7 @@ dependencies = [ [[package]] name = "iota-framework-snapshot" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -6604,7 +6575,7 @@ dependencies = [ [[package]] name = "iota-framework-tests" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "datatest-stable", "iota-adapter-latest", @@ -6624,7 +6595,7 @@ dependencies = [ [[package]] name = "iota-genesis-builder" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -6676,7 +6647,7 @@ dependencies = [ [[package]] name = "iota-genesis-common" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "iota-execution", "iota-protocol-config", @@ -6686,7 +6657,7 @@ dependencies = [ [[package]] name = "iota-graphql-config" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "quote 1.0.37", "syn 1.0.109", @@ -6694,7 +6665,7 @@ dependencies = [ [[package]] name = "iota-graphql-e2e-tests" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "datatest-stable", "iota-graphql-rpc", @@ -6705,7 +6676,7 @@ dependencies = [ [[package]] name = "iota-graphql-rpc" -version = "2024.7.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-graphql", @@ -6744,7 +6715,7 @@ dependencies = [ "iota-package-resolver", "iota-protocol-config", "iota-rest-api", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-swarm-config", "iota-test-transaction-builder", "iota-types", @@ -6784,7 +6755,7 @@ dependencies = [ [[package]] name = "iota-graphql-rpc-client" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "async-graphql", "axum", @@ -6797,14 +6768,14 @@ dependencies = [ [[package]] name = "iota-graphql-rpc-headers" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "axum", ] [[package]] name = "iota-indexer" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6833,7 +6804,7 @@ dependencies = [ "iota-package-resolver", "iota-protocol-config", "iota-rest-api", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-swarm-config", "iota-transaction-builder", "iota-types", @@ -6864,7 +6835,7 @@ dependencies = [ [[package]] name = "iota-indexer-builder" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6879,7 +6850,7 @@ dependencies = [ [[package]] name = "iota-json" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -6898,7 +6869,7 @@ dependencies = [ [[package]] name = "iota-json-rpc" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "arc-swap", @@ -6951,7 +6922,7 @@ dependencies = [ [[package]] name = "iota-json-rpc-api" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "fastcrypto", @@ -6970,7 +6941,7 @@ dependencies = [ [[package]] name = "iota-json-rpc-tests" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -6984,11 +6955,12 @@ dependencies = [ "iota-json-rpc-types", "iota-keys", "iota-macros", + "iota-metrics", "iota-move-build", "iota-open-rpc", "iota-open-rpc-macros", "iota-protocol-config", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-simulator", "iota-swarm-config", "iota-test-transaction-builder", @@ -7007,7 +6979,7 @@ dependencies = [ [[package]] name = "iota-json-rpc-types" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -7036,7 +7008,7 @@ dependencies = [ [[package]] name = "iota-keys" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bip32", @@ -7055,7 +7027,7 @@ dependencies = [ [[package]] name = "iota-light-client" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -7067,7 +7039,7 @@ dependencies = [ "iota-json-rpc-types", "iota-package-resolver", "iota-rest-api", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-types", "move-binary-format", "move-core-types", @@ -7079,7 +7051,7 @@ dependencies = [ [[package]] name = "iota-macros" -version = "0.7.0" +version = "0.5.0-alpha" dependencies = [ "futures", "iota-proc-macros", @@ -7089,7 +7061,7 @@ dependencies = [ [[package]] name = "iota-metric-checker" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "backoff", @@ -7110,10 +7082,13 @@ dependencies = [ [[package]] name = "iota-metrics" -version = "0.7.0" +version = "0.5.0-alpha" dependencies = [ + "anemo", + "anemo-tower", "async-trait", "axum", + "bytes", "dashmap", "futures", "once_cell", @@ -7130,7 +7105,7 @@ dependencies = [ [[package]] name = "iota-move" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "better_any", @@ -7168,7 +7143,7 @@ dependencies = [ [[package]] name = "iota-move-build" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "fastcrypto", @@ -7191,7 +7166,7 @@ dependencies = [ [[package]] name = "iota-move-lsp" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "bin-version", "clap", @@ -7244,7 +7219,7 @@ dependencies = [ [[package]] name = "iota-network" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anemo-build", @@ -7282,7 +7257,7 @@ dependencies = [ [[package]] name = "iota-network-stack" -version = "0.2.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "bcs", @@ -7305,7 +7280,7 @@ dependencies = [ [[package]] name = "iota-node" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anemo-tower", @@ -7340,7 +7315,6 @@ dependencies = [ "iota-tls", "iota-types", "move-vm-profiler", - "narwhal-network", "prometheus", "reqwest 0.12.7", "serde", @@ -7356,7 +7330,7 @@ dependencies = [ [[package]] name = "iota-open-rpc" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -7380,7 +7354,7 @@ dependencies = [ [[package]] name = "iota-open-rpc-macros" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "derive-syn-parse", "itertools 0.13.0", @@ -7392,7 +7366,7 @@ dependencies = [ [[package]] name = "iota-package-dump" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -7409,11 +7383,11 @@ dependencies = [ [[package]] name = "iota-package-management" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "iota-json-rpc-types", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-types", "move-core-types", "move-package", @@ -7424,7 +7398,7 @@ dependencies = [ [[package]] name = "iota-package-resolver" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "async-trait", "bcs", @@ -7447,7 +7421,7 @@ dependencies = [ [[package]] name = "iota-proc-macros" -version = "0.7.0" +version = "0.5.0-alpha" dependencies = [ "msim-macros", "proc-macro2 1.0.86", @@ -7457,7 +7431,7 @@ dependencies = [ [[package]] name = "iota-protocol-config" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "clap", "insta", @@ -7471,7 +7445,7 @@ dependencies = [ [[package]] name = "iota-protocol-config-macros" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "proc-macro2 1.0.86", "quote 1.0.37", @@ -7480,7 +7454,7 @@ dependencies = [ [[package]] name = "iota-replay" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-recursion", @@ -7496,7 +7470,7 @@ dependencies = [ "iota-json-rpc-api", "iota-json-rpc-types", "iota-protocol-config", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-storage", "iota-transaction-checks", "iota-types", @@ -7527,7 +7501,7 @@ dependencies = [ [[package]] name = "iota-rest-api" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -7558,7 +7532,7 @@ dependencies = [ [[package]] name = "iota-rosetta" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -7576,7 +7550,7 @@ dependencies = [ "iota-metrics", "iota-move-build", "iota-node", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-swarm-config", "iota-types", "move-core-types", @@ -7600,7 +7574,7 @@ dependencies = [ [[package]] name = "iota-rpc-loadgen" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -7610,7 +7584,7 @@ dependencies = [ "futures", "iota-json-rpc-types", "iota-keys", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-types", "itertools 0.13.0", "serde", @@ -7626,7 +7600,7 @@ dependencies = [ [[package]] name = "iota-rust-sdk" version = "0.0.0" -source = "git+ssh://git@github.com/iotaledger/iota-rust-sdk.git?rev=46d46d64237e001e8e23f322caecb3211c9a8c97#46d46d64237e001e8e23f322caecb3211c9a8c97" +source = "git+ssh://git@github.com/iotaledger/iota-rust-sdk.git?rev=dd7b331a5ec62fd5e810051d19f31dff90ea7e3f#dd7b331a5ec62fd5e810051d19f31dff90ea7e3f" dependencies = [ "base64ct", "bcs", @@ -7645,7 +7619,7 @@ dependencies = [ [[package]] name = "iota-sdk" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -7722,7 +7696,7 @@ dependencies = [ [[package]] name = "iota-simulator" -version = "0.7.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anemo-tower", @@ -7734,7 +7708,6 @@ dependencies = [ "lru 0.12.4", "move-package", "msim", - "narwhal-network", "rand 0.8.5", "serde", "telemetry-subscribers", @@ -7745,7 +7718,7 @@ dependencies = [ [[package]] name = "iota-single-node-benchmark" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "async-trait", "bcs", @@ -7755,6 +7728,7 @@ dependencies = [ "iota-config", "iota-core", "iota-macros", + "iota-metrics", "iota-move-build", "iota-protocol-config", "iota-simulator", @@ -7779,7 +7753,7 @@ dependencies = [ [[package]] name = "iota-snapshot" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -7807,7 +7781,7 @@ dependencies = [ [[package]] name = "iota-source-validation" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "colored", @@ -7817,7 +7791,7 @@ dependencies = [ "iota-json-rpc-types", "iota-move-build", "iota-package-management", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-test-transaction-builder", "iota-types", "move-binary-format", @@ -7839,7 +7813,7 @@ dependencies = [ [[package]] name = "iota-source-validation-service" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "axum", @@ -7855,7 +7829,7 @@ dependencies = [ "iota-metrics", "iota-move", "iota-move-build", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-source-validation", "jsonrpsee", "move-compiler", @@ -7878,7 +7852,7 @@ dependencies = [ [[package]] name = "iota-storage" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -7932,7 +7906,7 @@ dependencies = [ [[package]] name = "iota-surfer" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "async-trait", "bcs", @@ -7942,6 +7916,7 @@ dependencies = [ "iota-core", "iota-json-rpc-types", "iota-macros", + "iota-metrics", "iota-move-build", "iota-protocol-config", "iota-simulator", @@ -7960,7 +7935,7 @@ dependencies = [ [[package]] name = "iota-swarm" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "futures", @@ -7985,7 +7960,7 @@ dependencies = [ [[package]] name = "iota-swarm-config" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anyhow", @@ -8012,12 +7987,12 @@ dependencies = [ [[package]] name = "iota-test-transaction-builder" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "bcs", "iota-genesis-builder", "iota-move-build", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-types", "move-core-types", "shared-crypto", @@ -8025,7 +8000,7 @@ dependencies = [ [[package]] name = "iota-tls" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "axum", @@ -8046,7 +8021,7 @@ dependencies = [ [[package]] name = "iota-tool" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anemo-cli", @@ -8068,7 +8043,7 @@ dependencies = [ "iota-package-dump", "iota-protocol-config", "iota-replay", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-snapshot", "iota-storage", "iota-types", @@ -8091,7 +8066,7 @@ dependencies = [ [[package]] name = "iota-transaction-builder" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -8107,7 +8082,7 @@ dependencies = [ [[package]] name = "iota-transaction-checks" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "fastcrypto-zkp", "iota-config", @@ -8121,7 +8096,7 @@ dependencies = [ [[package]] name = "iota-transactional-test-runner" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -8170,7 +8145,7 @@ dependencies = [ [[package]] name = "iota-types" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anemo", "anyhow", @@ -8201,6 +8176,7 @@ dependencies = [ "iota-protocol-config", "iota-rust-sdk", "iota-sdk 1.1.5", + "iota-util-mem", "itertools 0.13.0", "lru 0.12.4", "move-binary-format", @@ -8251,7 +8227,7 @@ dependencies = [ [[package]] name = "iota-upgrade-compatibility-transactional-tests" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "datatest-stable", @@ -8265,7 +8241,7 @@ dependencies = [ [[package]] name = "iota-util-mem" -version = "0.11.0" +version = "0.5.0-alpha" dependencies = [ "cfg-if", "ed25519-consensus", @@ -8283,7 +8259,7 @@ dependencies = [ [[package]] name = "iota-util-mem-derive" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "proc-macro2 1.0.86", "syn 1.0.109", @@ -8307,7 +8283,7 @@ dependencies = [ [[package]] name = "iota-verifier-transactional-tests" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "datatest-stable", "iota-transactional-test-runner", @@ -9125,12 +9101,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" -[[package]] -name = "match_opt" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "405ba1524a1e6ae755334d6966380c60ec40157e0155f9032dd3c294b6384da9" - [[package]] name = "matchers" version = "0.1.0" @@ -10195,122 +10165,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "narwhal-config" -version = "0.1.0" -dependencies = [ - "fastcrypto", - "insta", - "iota-network-stack", - "iota-util-mem", - "match_opt", - "narwhal-crypto", - "narwhal-test-utils", - "rand 0.8.5", - "serde", - "serde_json", - "tempfile", - "thiserror", - "tracing", -] - -[[package]] -name = "narwhal-crypto" -version = "0.1.0" -dependencies = [ - "bcs", - "bincode", - "fastcrypto", - "serde", - "serde_json", - "shared-crypto", -] - -[[package]] -name = "narwhal-network" -version = "0.1.0" -dependencies = [ - "anemo", - "anemo-tower", - "anyhow", - "async-trait", - "axum", - "bincode", - "bytes", - "dashmap", - "futures", - "iota-common", - "iota-metrics", - "narwhal-crypto", - "narwhal-types", - "parking_lot 0.12.3", - "prometheus", - "quinn-proto", - "rand 0.8.5", - "tokio", - "tower 0.4.13", - "tracing", -] - -[[package]] -name = "narwhal-test-utils" -version = "0.1.0" -dependencies = [ - "anemo", - "fastcrypto", - "fdlimit", - "indexmap 2.5.0", - "iota-network-stack", - "iota-protocol-config", - "narwhal-config", - "narwhal-crypto", - "narwhal-types", - "once_cell", - "rand 0.8.5", - "tempfile", - "tokio", - "tonic", - "tracing", -] - -[[package]] -name = "narwhal-types" -version = "0.1.0" -dependencies = [ - "anyhow", - "base64 0.21.7", - "bcs", - "bytes", - "criterion", - "derive_builder", - "enum_dispatch", - "fastcrypto", - "futures", - "indexmap 2.5.0", - "iota-common", - "iota-metrics", - "iota-network-stack", - "iota-util-mem", - "narwhal-config", - "narwhal-crypto", - "narwhal-test-utils", - "once_cell", - "prometheus", - "proptest", - "proptest-derive", - "prost", - "rand 0.8.5", - "roaring", - "serde", - "serde_test", - "serde_with", - "thiserror", - "tokio", - "tonic", - "tonic-build", - "tracing", -] - [[package]] name = "neptune" version = "13.0.0" @@ -11929,7 +11783,7 @@ dependencies = [ [[package]] name = "prometheus-closure-metric" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "prometheus", @@ -13539,15 +13393,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_test" -version = "1.0.177" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f901ee573cab6b3060453d2d5f0bae4e6d628c23c0a962ff9b5f1d7c8d4f1ed" -dependencies = [ - "serde", -] - [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -13716,7 +13561,7 @@ dependencies = [ [[package]] name = "shared-crypto" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "bcs", "eyre", @@ -13839,7 +13684,7 @@ dependencies = [ [[package]] name = "simulacrum" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "async-trait", @@ -14543,7 +14388,7 @@ dependencies = [ [[package]] name = "telemetry-subscribers" -version = "0.2.0" +version = "0.5.0-alpha" dependencies = [ "atomic_float", "bytes", @@ -14619,7 +14464,7 @@ checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" [[package]] name = "test-cluster" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "anyhow", "bcs", @@ -14636,9 +14481,10 @@ dependencies = [ "iota-json-rpc-types", "iota-keys", "iota-macros", + "iota-metrics", "iota-node", "iota-protocol-config", - "iota-sdk 0.4.0", + "iota-sdk 0.5.0-alpha", "iota-simulator", "iota-swarm", "iota-swarm-config", @@ -15101,23 +14947,22 @@ dependencies = [ [[package]] name = "tonic-build" -version = "0.12.3" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9557ce109ea773b399c9b9e5dca39294110b74f1f342cb347a80d1fce8c26a11" +checksum = "fe4ee8877250136bd7e3d2331632810a4df4ea5e004656990d8d66d2f5ee8a67" dependencies = [ "prettyplease", "proc-macro2 1.0.86", "prost-build", - "prost-types", "quote 1.0.37", "syn 2.0.77", ] [[package]] name = "tonic-health" -version = "0.12.3" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1eaf34ddb812120f5c601162d5429933c9b527d901ab0e7f930d3147e33a09b2" +checksum = "ec0a34e6f706bae26b2b490e1da5c3f6a6ff87cae442bcbc7c881bab9631b5a7" dependencies = [ "async-stream", "prost", @@ -15360,7 +15205,7 @@ dependencies = [ [[package]] name = "transaction-fuzzer" -version = "0.1.0" +version = "0.5.0-alpha" dependencies = [ "iota-core", "iota-move-build", @@ -15466,7 +15311,7 @@ dependencies = [ [[package]] name = "typed-store" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "async-trait", "bcs", @@ -15497,7 +15342,7 @@ dependencies = [ [[package]] name = "typed-store-derive" -version = "0.3.0" +version = "0.5.0-alpha" dependencies = [ "itertools 0.13.0", "proc-macro2 1.0.86", @@ -15507,7 +15352,7 @@ dependencies = [ [[package]] name = "typed-store-error" -version = "0.4.0" +version = "0.5.0-alpha" dependencies = [ "serde", "thiserror", @@ -15515,7 +15360,7 @@ dependencies = [ [[package]] name = "typed-store-workspace-hack" -version = "0.0.0" +version = "0.5.0-alpha" dependencies = [ "libc", "memchr", diff --git a/Cargo.toml b/Cargo.toml index 141904a44f1..b8fdc8cecde 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -165,13 +165,11 @@ members = [ "iota-execution/v0/iota-adapter", "iota-execution/v0/iota-move-natives", "iota-execution/v0/iota-verifier", - "narwhal/network", - "narwhal/types", ] [workspace.package] # This version string will be inherited by iota-core, iota-faucet, iota-node, iota-tools, iota-sdk, iota-move-build, and iota crates. -version = "0.4.0" +version = "0.5.0-alpha" [profile.release] # debug = 1 means line charts only, which is minimum needed for good stack traces @@ -418,8 +416,8 @@ iota-rest-api = { path = "crates/iota-rest-api" } iota-rosetta = { path = "crates/iota-rosetta" } iota-rpc-loadgen = { path = "crates/iota-rpc-loadgen" } iota-sdk = { path = "crates/iota-sdk" } -# core-types with json format for REST api -iota-sdk2 = { package = "iota-rust-sdk", git = "ssh://git@github.com/iotaledger/iota-rust-sdk.git", rev = "46d46d64237e001e8e23f322caecb3211c9a8c97", features = ["hash", "serde", "schemars"] } +# core-types with json format for REST API +iota-sdk2 = { package = "iota-rust-sdk", git = "ssh://git@github.com/iotaledger/iota-rust-sdk.git", rev = "dd7b331a5ec62fd5e810051d19f31dff90ea7e3f", features = ["hash", "serde", "schemars"] } iota-simulator = { path = "crates/iota-simulator" } iota-snapshot = { path = "crates/iota-snapshot" } iota-source-validation = { path = "crates/iota-source-validation" } @@ -462,8 +460,6 @@ move-vm-config = { path = "external-crates/move/crates/move-vm-config" } move-vm-profiler = { path = "external-crates/move/crates/move-vm-profiler" } move-vm-test-utils = { path = "external-crates/move/crates/move-vm-test-utils/", features = ["tiered-gas"] } move-vm-types = { path = "external-crates/move/crates/move-vm-types" } -narwhal-network = { path = "narwhal/network" } -narwhal-types = { path = "narwhal/types" } prometheus-closure-metric = { path = "crates/prometheus-closure-metric" } shared-crypto = { path = "crates/shared-crypto" } simulacrum = { path = "crates/simulacrum" } diff --git a/apps/apps-backend/src/features/features.controller.ts b/apps/apps-backend/src/features/features.controller.ts index e1400b1d57a..e71e4b326a4 100644 --- a/apps/apps-backend/src/features/features.controller.ts +++ b/apps/apps-backend/src/features/features.controller.ts @@ -64,6 +64,12 @@ export class FeaturesController { [Feature.AccountFinder]: { defaultValue: false, }, + [Feature.WalletDashboardMigration]: { + defaultValue: false, + }, + [Feature.WalletDashboardSupplyIncreaseVesting]: { + defaultValue: false, + }, }, dateUpdated: new Date().toISOString(), }; diff --git a/apps/core/src/constants/features.enum.ts b/apps/core/src/constants/features.enum.ts index 615c80386e3..3670db4edc1 100644 --- a/apps/core/src/constants/features.enum.ts +++ b/apps/core/src/constants/features.enum.ts @@ -18,4 +18,6 @@ export enum Feature { NetworkOutageOverride = 'network-outage-override', ModuleSourceVerification = 'module-source-verification', WalletEffectsOnlySharedTransaction = 'wallet-effects-only-shared-transaction', + StardustMigration = 'migration', + SupplyIncreaseVesting = 'supply-increase-vesting', } diff --git a/apps/wallet-dashboard/app/(protected)/components/sidebar/Sidebar.tsx b/apps/wallet-dashboard/app/(protected)/components/sidebar/Sidebar.tsx index 0f49225192d..03742f9e8e4 100644 --- a/apps/wallet-dashboard/app/(protected)/components/sidebar/Sidebar.tsx +++ b/apps/wallet-dashboard/app/(protected)/components/sidebar/Sidebar.tsx @@ -4,13 +4,24 @@ import { PROTECTED_ROUTES } from '@/lib/constants/routes.constants'; import { IotaLogoMark } from '@iota/ui-icons'; import { SidebarItem } from './SidebarItem'; +import { Feature } from '@iota/core'; +import { useFeature } from '@growthbook/growthbook-react'; export function Sidebar() { + const featureFlags = { + Migrations: useFeature(Feature.StardustMigration).value, + Vesting: useFeature(Feature.SupplyIncreaseVesting).value, + }; + + const filteredRoutes = PROTECTED_ROUTES.filter(({ title }) => { + return title in featureFlags ? featureFlags[title as keyof typeof featureFlags] : true; + }); + return (