Skip to content
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

chore(deps): bump blockifier from 0.8.0 to 0.14.0-rc0 #488

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jbcaron
Copy link
Member

@jbcaron jbcaron commented Feb 3, 2025

Based on the provided diff, I'll write a comprehensive PR documentation that describes the changes:

Upgrade Blockifier to v0.14.0-rc.0 and related dependency updates

Pull Request type

This PR includes:

  • Code refactoring (major internal changes to align with new Blockifier API)
  • Dependency updates

Current behavior

Currently, Madara uses Blockifier v0.8.0 which has an older API design and transaction model. The codebase relies on outdated structs and methods that are changed in newer versions.

New behavior

  • Upgrades Blockifier to v0.14.0-rc.0
  • Updates cairo dependencies to match compatible versions:
    • cairo-lang-starknet-classes = "2.10.0-rc.1"
    • cairo-lang-utils = "2.10.0-rc.1"
  • Major refactoring throughout the codebase to align with new Blockifier APIs
  • Removes deprecated code paths and updates to new transaction models
  • Updates versioned constants and configuration files
  • (Removes visited_segments fields which are no longer used)

Key changes include:

  • Transaction handling now uses new Blockifier API models
  • Removed manual cloning of transactions in favor of derived Clone
  • Updated gas cost calculations and resource management
  • Simplified transaction execution flags
  • Improved integration with StarkNet API types

Breaking changes

Yes, this introduces breaking changes:

  • API changes in how transactions are processed and validated
  • Changes to how gas costs are calculated and tracked
  • Removal of visited segments tracking
  • Updates to transaction execution models
  • Changes in how contract classes are handled and compiled

Migration and Compatibility

This is a major update that requires careful testing and migration:

  • Custom transaction handling may need modifications
  • Gas calculation logic may need adjustments

Testing

The PR includes updates to all affected tests. All test suites have been modified to work with the new APIs and validation models.

@jbcaron jbcaron self-assigned this Feb 3, 2025
@jbcaron jbcaron added this to the V0.13.4 milestone Feb 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

1 participant