fix(engine)!: allow multiple create components in one call #1046
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
.with_public_key_address
to component builderwith_public_key_address
in account templateMotivation and Context
Previously you could not create multiple components in one call without explicitly allocating an address.
This PR changes the default behaviour to generate a unique address, thereby fixing the bug when creating multiple components in a single call.
Some components need the address to be derived ahead of time using a public key can do this by optionally specifying a public key address on the component.
How Has This Been Tested?
New multiple component creation test. Existing account tests. Manually
What process can a PR reviewer use to test or verify this change?
Use a template that creates multiple components. Create an account that does not exist for another public key.
Breaking Changes
BREAKING CHANGE: caller context calls have an additional
arg
field, so templates using these need to be recompiled.