Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Expose block number in seal_random #8329

Merged
10 commits merged into from
Mar 23, 2021
Merged

Expose block number in seal_random #8329

10 commits merged into from
Mar 23, 2021

Conversation

athei
Copy link
Member

@athei athei commented Mar 11, 2021

Fixes #8297

  • Allow to specify the wasm module when defining a contract callable function
  • Add new version of seal_random (by scoping it under seal1) that returns the block number in addition to the seed
  • Deprecate the old version

In the long term we should convert define_env! to a proc macro. This stuff is becoming ugly.

The new contract callable function has the same name seal_random but is scoped under another wasm module. The module of the function is seal1 in contrast to the old module seal0 that hosts the original function.

@Robbepop ink! should switch to the new interface and make the block number available to its users. It is not a breaking change, though. The old version remains to be supported indefinitely.

@athei athei added A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. labels Mar 11, 2021
@athei athei requested review from andresilva and gui1117 March 11, 2021 12:28
@Robbepop
Copy link
Contributor

* Add new version of `seal_random` that returns the block number in addition to the seed

Can you elaborate on this change in design?

@athei
Copy link
Member Author

athei commented Mar 11, 2021

* Add new version of `seal_random` that returns the block number in addition to the seed

Can you elaborate on this change in design?

Updated the initial post.

@athei athei added the D3-trivial 🧸 PR contains trivial changes in a runtime directory that do not require an audit label Mar 22, 2021
Copy link
Contributor

@gui1117 gui1117 left a comment

Choose a reason for hiding this comment

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

I'm not 100% familiar with this part of the code, but all changes looks good to me

@athei athei added D2-notlive 💤 PR contains changes in a runtime directory that is not deployed to a chain that requires an audit. and removed D3-trivial 🧸 PR contains trivial changes in a runtime directory that do not require an audit labels Mar 23, 2021
@Robbepop
Copy link
Contributor

Robbepop commented Mar 23, 2021

ink! master already merged support for this API.

@athei
Copy link
Member Author

athei commented Mar 23, 2021

bot merge

@ghost
Copy link

ghost commented Mar 23, 2021

Missing approval from the project owner or a minimum of core developers.

Merge can be attempted if:

  • The PR has approval from two core-devs (or one if the PR is labelled insubstantial).
  • The PR has approval from a member of substrateteamleads.
  • The PR is attached to a project column and has approval from the project owner.

See https://github.com/paritytech/parity-processbot#faq

@athei
Copy link
Member Author

athei commented Mar 23, 2021

bot merge

@ghost
Copy link

ghost commented Mar 23, 2021

Trying merge.

@ghost ghost merged commit 36d77bc into master Mar 23, 2021
@ghost ghost deleted the at-seal-random branch March 23, 2021 13:48
hirschenberger pushed a commit to hirschenberger/substrate that referenced this pull request Apr 14, 2021
* Allow contract callable functions to specify the module

* Add new version of `seal_random`

* Fix overlong lines

* Fix benchmarking code

* Update README.md

* Replace Module by Pallet
This pull request was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A0-please_review Pull request needs code review. B0-silent Changes should not be mentioned in any release notes C1-low PR touches the given topic and has a low impact on builders. D2-notlive 💤 PR contains changes in a runtime directory that is not deployed to a chain that requires an audit.
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

Expose block number in seal_random
4 participants