Skip to content

Fix CREATE_CONTRACT annotations

Mehdi Bouaziz requested to merge mehdi@fix_create_contract_annotation into master

Context

While investigating #2707 (closed) I found that CREATE_CONTRACT was losing parameter and storage type annotations because they were parsed before being unparsed.

While we still want to typecheck internally originated contract inside the factory contract, we just want to reuse the code as is, except for the data parts (code, storage value, and views code -- reminder: code is lambda value) that needs to be normalized (see #843 (closed) and !3842 (merged)).

At lot of duplication of work was done during internal originations, I had to simplify stuff to make sure I wasn't breaking anything.

Manually testing the MR

See added test that fails on master and works afterwards.

Checklist

  • [ ] Document the interface of any function added or modified (see the coding guidelines)
  • [ ] Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Mehdi Bouaziz

Merge request reports

Loading