Skip to content

Full DFS

ChiaChi Tsai requested to merge marigold/tezos:cc@dfs2 into master

Context

Currently, the evaluation flow of operations execution of Tezos was designed in BFS (named after the breadth-first search algorithm) order. However, the DFS (named after the depth-first search algorithm) provides more intuitiveness for contract developers to design contracts. Therefore, this MR propose to fully switch from BFS to DFS.

reference: https://forum.tezosagora.org/t/concurrency-bfs-vs-dfs-and-a-proposal/1994

TZIP: https://gitlab.com/tzip/tzip/-/merge_requests/111

Manually testing the MR

The following is for manually running test cases of this change.

poetry run pytest tests_alpha/test_contract.py -k TestExecutionOrdering

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Provide automatic testing (see the testing guide).
  • Add item in the Development Version section of CHANGES.md (only for new features and bug fixes).

Reviewers

@galfour

Edited by ChiaChi Tsai

Merge request reports