Skip to content

Commit 8954d5a

Browse files
committed
fix some other things
1 parent 48c51cb commit 8954d5a

File tree

3 files changed

+19
-7
lines changed

3 files changed

+19
-7
lines changed

populus/packages/backends/index.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,5 +207,5 @@ def get_package_index_factory(self, web3):
207207

208208
return web3.eth.contract(
209209
abi=package_index_abi,
210-
base_contract_factory_class=BasePackageIndexFactory,
210+
ContractFactoryClass=BasePackageIndexFactory,
211211
)

populus/packages/build.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,4 +195,14 @@ def construct_contract_type_object(contract_data,
195195
yield 'natspec', natspec
196196

197197
if 'runtime_bytecode' in contract_data or 'bytecode' in contract_data:
198-
yield 'compiler', contract_data['meta']
198+
yield 'compiler', construct_compiler_object(contract_data['metadata'])
199+
200+
201+
@to_dict
202+
def construct_compiler_object(metadata):
203+
yield 'type', 'solc'
204+
yield 'version', metadata['compiler']['version']
205+
yield 'settings', {
206+
'optimize': metadata['settings']['optimizer']['enabled'],
207+
'optimize_runs': metadata['settings']['optimizer']['runs'],
208+
}

populus/utils/compile.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -164,9 +164,11 @@ def process_compiler_output(name_from_compiler, data_from_compiler):
164164
return contract_name, contract_data
165165

166166

167-
@to_dict
168167
def normalize_contract_metadata(metadata):
169-
if is_string(metadata):
170-
metadata = json.loads(metadata)
171-
172-
return metadata
168+
# TODO: tests
169+
if not metadata:
170+
return None
171+
elif is_string(metadata):
172+
return json.loads(metadata)
173+
else:
174+
raise ValueError("Unknown metadata format '{0}'".format(metadata))

0 commit comments

Comments
 (0)