Compiler Information field not stored in package manifest
See original GitHub issueElevator pitch:
Add compiler settings and version information to manifest for publishing use cases
Value:
Publishing a manifest, publishing files from a project (e.g. Etherscan verification)
Dependencies:
Contract manifest requires compiler to be filled in to be more useful and for contract verification https://github.com/ApeWorX/ape/issues/81
Design approach:
EIP-2678 defines an array of CompilerInformation
objects that are referenced by Source
objects within the same manifest. These objects are used to determine which compiler types, versions, and settings that should be used to compile the (sub-)set of sources for a given manifest.
Using EIP-2678 (or adapting for our needs via #794), add support for obtaining the information for this field in ProjectManager
and CompilerAPI
so that we have it for later use. The current structure may be inadequate for our purposes, requiring a breaking change to ethpm-types
that should be targeted for v0.3.0 if possible.
Task list:
- Identify compilation process for projects
- Obtain compiler version and setting information for each (sub-)set of files to be compiled
- Leverage this information for calling each compiler (in series) to obtain the various results
Estimated completion date:
TBD
Design review:
Do not signoff unless:
-
- agreed the tasks and design approach will achieve acceptance, and
-
- the work can be completed by one person within the SLA. Design reviewers should consider simpler approaches to achieve goals.
(Please leave a comment to sign off)
Issue Analytics
- State:
- Created a year ago
- Comments:6 (6 by maintainers)
Top GitHub Comments
p.s. next time use
Work Item
issue template for this kind of thingrequires tests to be merged.