ape: manifest produced by `ape compile` does not contain compiler info
Environment information
- OS: macOS
- Python Version: 3.10
apeand plugin versions:
$ ape --version
0.6.15 # I also tried 0.6.16.dev9+gabe4e96b
$ ape plugins list
Installed Plugins:
solidity 0.6.7
hardhat 0.6.12
vyper 0.6.9
- Contents of your
ape-config.yaml(NOTE: do not post anything private like RPC urls or secrets!):
$ cat ape-config.yaml
name: yearn-v3
plugins:
- name: solidity
version: 0.6.7
- name: vyper
version: 0.6.9
- name: hardhat
version: 0.6.12
default_ecosystem: ethereum
dependencies:
- name: openzeppelin
github: OpenZeppelin/openzeppelin-contracts
version: 4.7.3
solidity:
import_remapping:
- "@openzeppelin/contracts=openzeppelin/v4.7.3"
ethereum:
local:
default_provider: hardhat
What went wrong?
I am trying to parse the build manifest for ape support in https://github.com/crytic/crytic-compile, but the compiler info is missing Reproduce with:
$ git clone https://github.com/0xalpharush/yearn-vaults-v3 && cd yearn-vaults-v3
$ python3 -m venv venv
$ source venv/bin/activate
$ python3 -m pip install -r requirements.txt
$ yarn
$ ape plugins install .
$ ape compile
$ cat .build/__local__.json | jq 'keys'
[
"contractTypes",
"manifest",
"sources"
]
With python:
$ python
>>> from ethpm_types import PackageManifest
>>> import json
>>> print(PackageManifest.parse_obj(json.load(open(".build/__local__.json"))).compilers)
None
This field is missing https://github.com/ApeWorX/ethpm-types/blob/dffcb6b2fe17f858c95d07499aafe1d66e939dfa/ethpm_types/manifest.py#L124
How can it be fixed?
I think it may need to be added here https://github.com/ApeWorX/ape/blob/abe4e96bc3ce7132e486913a7b0a4a19394f3015/src/ape/managers/project/types.py#L177
About this issue
- Original URL
- State: open
- Created a year ago
- Comments: 16 (13 by maintainers)
No worries! Thank you for working on all of this, we appreciate your contributions!
I will look into this as soon as the remove functionality implementation is done. Just bear with me.