Skip to content

chore: wasm opt#6

Merged
fmorency merged 5 commits intomanifest-network:mainfrom
fmorency:wasm-opt
Sep 9, 2025
Merged

chore: wasm opt#6
fmorency merged 5 commits intomanifest-network:mainfrom
fmorency:wasm-opt

Conversation

@fmorency
Copy link
Contributor

@fmorency fmorency commented Sep 9, 2025

This pull request restructures the workspace to support multiple contracts, centralizes dependency management, and enhances the build and CI processes for WASM artifacts. The main changes include moving the converter contract into a new contracts directory, consolidating dependencies in the workspace, optimizing WASM builds, and updating CI workflows for improved artifact handling and optimization.

Workspace and Dependency Management:

  • Migrated the converter contract from the root to contracts/converter, and removed the old converter/Cargo.toml in favor of a new one in the contracts directory. Dependencies are now managed centrally in the workspace for easier maintenance and consistency. [1] [2] [3]
  • Added a [workspace.dependencies] section to Cargo.toml to unify dependency versions and features across all contracts.

Build and Release Optimization:

  • Updated .cargo/config.toml to strip symbols from WASM builds using rustflags, reducing artifact size.
  • Added release profile optimizations in Cargo.toml for smaller, faster builds (lto, opt-level, etc.).

Continuous Integration and Artifact Handling:

  • Enhanced .github/workflows/ci.yml to build and optimize all WASM targets, install necessary tools (protoc, wasm-opt), and upload optimized artifacts for all contracts, not just converter.

These changes make the repository more scalable for multiple contracts, ensure consistent dependency management, and produce smaller, optimized WASM artifacts for deployment.

@fmorency fmorency requested a review from Copilot September 9, 2025 19:11
@fmorency fmorency self-assigned this Sep 9, 2025
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR restructures the workspace to support multiple contracts by moving the converter contract to a contracts directory, centralizes dependency management through workspace configuration, and optimizes WASM build processes with artifact compression and CI enhancements.

  • Migrated converter contract from root to contracts/converter directory structure
  • Implemented workspace-level dependency management for consistent versioning
  • Added WASM optimization tools and build configurations for smaller artifacts

Reviewed Changes

Copilot reviewed 5 out of 20 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
converter/Cargo.toml Removed old converter manifest from root directory
contracts/converter/Cargo.toml New converter manifest using workspace dependencies
Cargo.toml Added workspace dependencies and release optimizations
.github/workflows/ci.yml Enhanced CI with WASM optimization and artifact handling
.cargo/config.toml Added rustflags for WASM size optimization

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@codecov
Copy link

codecov bot commented Sep 9, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@fmorency fmorency merged commit d92d4d3 into manifest-network:main Sep 9, 2025
5 checks passed
@fmorency fmorency deleted the wasm-opt branch September 9, 2025 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants