Omniscia fetchai Audit
Compilation
Compilation
The project utilizes brownie
as its development pipeline tool, containing a wide array of tests and scripts coded in Python.
To compile the project, the compile
command needs to be issued via the brownie
CLI tool:
brownie compile
The brownie
tool automatically selects Solidity version 0.6.8
based on the pragma
statements contained within the contracts.
The project contains discrepancies with regards to the Solidity version used as the pragma
statements within the third party contracts differ greatly between them. We strongly recommend the third party contracts to be relocated outside the contracts
folder and into another folder to avoid compilation tools misbehaving.
To be able to run our suite of static analysis tools, we ported the codebase to a barebones truffle
installation to produce the proper compilation artifacts.
During compilation with the truffle
pipeline, no errors were identified that relate to the syntax or bytecode size of the contracts.