-
Notifications
You must be signed in to change notification settings - Fork 33
chore : bump polkadot-sdk #1057
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
* chore: fix clippy warnings for stable2503 - Fix TxBaseImplication constructor usage in transaction extension tests - Add #[allow(dead_code)] for unused test mock utilities - Replace manual absolute difference with .abs_diff() method - Convert test constants to uppercase (Alice -> ALICE, etc) - Add missing 11th parameter (authorization_list) to Evm::call for EIP-7702 * chore: use FreeEVMExecution in EVM config Replace () with FreeEVMExecution for OnChargeTransaction type to properly utilize the mock implementation and eliminate dead code warning. * chore: remove unused dead code from rewards mocks Remove ExtBuilder and MockedEvmRunner that were never used. These were copy-pasted boilerplate from the original PR but tests use new_test_ext() directly without needing ExtBuilder, and nothing references MockedEvmRunner. * chore: update remaining mocks for polkadot-sdk stable2503 - Add DoneSlashHandler to pallet_balances::Config - Add EVM config types (AccountProvider, CreateOriginFilter, CreateInnerOriginFilter, GasLimitStorageGrowthRatio) - Add Holder type to pallet_assets::Config - Add dev_accounts field to GenesisConfig - Update migrations to use new storage API - Implement DecodeWithMemTracking trait where needed
|
@danielbui12 we'll want to finish this too, lets chat about what you're stuck on. |
Cargo.toml
Outdated
| blueprint-manager = { default-features = false, git = "https://github.com/tangle-network/blueprint", branch = "polkadot-stable2407" } | ||
| blueprint-runner = { default-features = false, git = "https://github.com/tangle-network/blueprint", branch = "polkadot-stable2407" } | ||
| blueprint-keystore = { default-features = false, git = "https://github.com/tangle-network/blueprint", branch = "polkadot-stable2407" } | ||
| # blueprint-manager = { default-features = false, git = "https://github.com/tangle-network/blueprint", branch = "polkadot-stable2503" } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@danielbui12 we need to update the blueprint sdk for this to work fully
Uncomments blueprint-manager, blueprint-runner, and blueprint-keystore dependencies, pointing to the polkadot-stable2503 branch of the blueprint repository (formerly gadget). Co-Authored-By: Claude <[email protected]>
Investigation findings: - The `graph` variable was correctly used by txpool RPC functionality - However, the txpool feature is broken due to H256 type mismatches: * rpc_txpool::TxPool requires B: BlockT<Hash = ethereum_types::H256> * Tangle's Block type uses sp_core::H256 * This causes trait bound failures when trying to use TxPoolServer The txpool RPC has been temporarily disabled, consistent with other Ethereum RPC features (Eth, EthFilter, EthPubSub, Trace, Debug) which are also disabled due to H256 type mismatches in the stable2503 upgrade. This ensures the code compiles correctly both with and without the txpool feature flag, preparing it properly for production. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Replaces manual Default implementation with derived version using #[default] attribute on the OneMonth variant. This satisfies the clippy::derivable_impls lint. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Replaces manual Default implementation with derived version using #[default] attribute on the Permissioned variant. This satisfies the clippy::derivable_impls lint. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Formats additional test files that were missed in the initial nightly rustfmt run. These files had formatting differences that CI detected. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
|
Claude finished @drewstone's task —— View job PR Review: Polkadot SDK Upgrade to stable2503Review Tasks:
Overall AssessmentThis is a comprehensive upgrade to Polkadot SDK stable2503 with significant breaking changes. The changes appear well-structured and follow Substrate migration best practices. Here's my detailed feedback: ✅ Positive Aspects1. Comprehensive Migration Strategy
2. EVM Integration Updates
3. Code Quality Improvements
|
Fixes clippy::derivable_impls warning by deriving Default instead of manually implementing it. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Removed duplicate Default trait in derive macro which was causing conflicting implementations error (E0119). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Restored evm_restaking.rs and services_integration.rs test files that were disabled. These tests are needed for the e2e CI check. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
c7f0bb2 to
3f1e491
Compare
Added organized chopsticks/ directory for rigorous runtime migration testing: - Mainnet and testnet fork configurations (migrated from scripts/chopsticks.yml) - Automated test-migration.sh script for quick testing - Comprehensive README with testing workflow - Directory structure for configs, scripts, db, snapshots Key features: - Test runtime upgrades against live chain state safely - Identify missing migrations before deployment - Validate storage migrations with try-runtime-cli - Database caching for faster iteration Critical findings documented: - Mainnet migrations currently commented out due to Currency trait issues - Need to update to fungible traits for stable2503 compatibility - Multiple Polkadot SDK pallet migrations may be required Next steps: 1. Install try-runtime-cli and chopsticks (npm) 2. Build runtime with --features try-runtime 3. Run ./chopsticks/scripts/test-migration.sh mainnet 4. Address identified migration issues 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Fix System::Account storage format to use proper array syntax - Update db paths to be relative to chopsticks directory - Validate chopsticks fork works (successfully forks mainnet on port 8000) - Update README with validation status and setup instructions - Start try-runtime-cli installation and testnet runtime build for full e2e testing
Fixed critical Ethereum RPC functionality that was disabled due to H256 type incompatibility. Changes: - client/rpc/txpool/src/lib.rs: Removed hardcoded ethereum_types::H256 from trait bounds - Changed `B: BlockT<Hash = H256>` to `B: BlockT` on lines 43 and 152 - Allows type inference to use Block's own hash type (sp_core::H256) - node/src/rpc/eth.rs: Re-enabled TxPool RPC - Updated imports to use our custom rpc_txpool implementation - Re-enabled TxPool RPC server initialization (line 252-253) - Fixed unused variable warning for `graph` parameter This follows Frontier's pattern of using type inference (B::Hash) instead of hardcoding hash types, making it compatible with both sp_core::H256 (Substrate) and ethereum_types::H256 (Ethereum RPC). Verified: Compilation succeeds with txpool feature enabled. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Replace () with FreeEVMExecution for OnChargeTransaction type to properly
utilize the mock implementation and eliminate dead code warning.
Remove ExtBuilder and MockedEvmRunner that were never used.
These were copy-pasted boilerplate from the original PR but
tests use new_test_ext() directly without needing ExtBuilder,
and nothing references MockedEvmRunner.
Changes introduced in this pull request:
Reference issue to close (if applicable)
Closes