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

Mint transaction rework #1269

Closed
xgreenx opened this issue Jul 31, 2023 · 2 comments · Fixed by #1407
Closed

Mint transaction rework #1269

xgreenx opened this issue Jul 31, 2023 · 2 comments · Fixed by #1407
Assignees

Comments

@xgreenx
Copy link
Collaborator

xgreenx commented Jul 31, 2023

Rework the Mint transaction to not produce a new UTXO per each block. Instead, we can use contract's account-based model.

@xgreenx xgreenx self-assigned this Aug 7, 2023
@Voxelot
Copy link
Member

Voxelot commented Aug 22, 2023

related: FuelLabs/fuel-specs#511

@xgreenx xgreenx removed their assignment Aug 29, 2023
@xgreenx
Copy link
Collaborator Author

xgreenx commented Aug 29, 2023

This change is better to do on top of FuelLabs/fuel-vm#533

@xgreenx xgreenx assigned xgreenx and unassigned bvrooman Sep 18, 2023
xgreenx added a commit that referenced this issue Oct 18, 2023
Closes #1269

This PR also adapts `fuel-core` to use `fuel-vm 0.39`.
- The recipient is a `ContractId` instead of `Address`. The block
producer should deploy its contract to receive the transaction fee. The
collected fee is zero until the recipient contract is set.
- The `Mint` transaction is reworked with new fields to support the
account-base model. It affects serialization and deserialization of the
transaction and also affects GraphQL schema.
- I limited the number of selected transactions from the TxPool to
`u16::MAX` to avoid overflow.
- The `Mint` transaction is the last transaction in the block instead of
the first.
- Applied changes for `BlockHeight` to use `succ` and `pred` functions.
crypto523 added a commit to crypto523/fuel-core that referenced this issue Oct 7, 2024
Closes FuelLabs/fuel-core#1269

This PR also adapts `fuel-core` to use `fuel-vm 0.39`.
- The recipient is a `ContractId` instead of `Address`. The block
producer should deploy its contract to receive the transaction fee. The
collected fee is zero until the recipient contract is set.
- The `Mint` transaction is reworked with new fields to support the
account-base model. It affects serialization and deserialization of the
transaction and also affects GraphQL schema.
- I limited the number of selected transactions from the TxPool to
`u16::MAX` to avoid overflow.
- The `Mint` transaction is the last transaction in the block instead of
the first.
- Applied changes for `BlockHeight` to use `succ` and `pred` functions.
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 a pull request may close this issue.

3 participants