Compare commits
11 Commits
lash/funga
...
lash/more-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
109666ba1d
|
||
|
|
8ac349f092 | ||
|
|
677b742690
|
||
|
|
96a0f3beb0
|
||
|
|
1fbd94d382
|
||
|
|
1a73c0d1ed
|
||
|
|
e9b7d27670
|
||
|
|
f688cba5cc
|
||
|
|
700e668a4b
|
||
|
|
7832071512 | ||
|
|
5cfb6a7dda
|
@@ -1,3 +1,5 @@
|
||||
- 0.0.21:
|
||||
* Remove warnings from cytoolz/rlp in funga-eth
|
||||
- 0.0.15:
|
||||
* Correct inverted addess checksum check for gas cli
|
||||
- 0.0.5-unreleased:
|
||||
|
||||
@@ -53,7 +53,7 @@ logg = logging.getLogger()
|
||||
script_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
config_dir = os.path.join(script_dir, '..', 'data', 'config')
|
||||
|
||||
arg_flags = chainlib.eth.cli.argflag_std_write | chainlib.eth.cli.Flag.EXEC
|
||||
arg_flags = chainlib.eth.cli.argflag_std_write | chainlib.eth.cli.Flag.EXEC | chainlib.eth.cli.Flag.FEE
|
||||
argparser = chainlib.eth.cli.ArgumentParser(arg_flags)
|
||||
argparser.add_argument('--notx', action='store_true', help='Network send is not a transaction')
|
||||
argparser.add_argument('--signature', type=str, help='Method signature to encode')
|
||||
@@ -66,9 +66,6 @@ extra_args = {
|
||||
}
|
||||
config = chainlib.eth.cli.Config.from_args(args, arg_flags, extra_args=extra_args, default_config_dir=config_dir)
|
||||
|
||||
if not config.get('_EXEC_ADDRESS'):
|
||||
argparser.error('exec address (-e) must be defined')
|
||||
|
||||
block_all = args.ww
|
||||
block_last = args.w or block_all
|
||||
|
||||
@@ -109,19 +106,30 @@ def main():
|
||||
print(strip_0x(code))
|
||||
return
|
||||
|
||||
exec_address = add_0x(to_checksum_address(config.get('_EXEC_ADDRESS')))
|
||||
exec_address = config.get('_EXEC_ADDRESS')
|
||||
if exec_address:
|
||||
exec_address = add_0x(to_checksum_address(exec_address))
|
||||
|
||||
if signer == None or config.true('_NOTX'):
|
||||
if config.true('_RAW'):
|
||||
print(strip_0x(code))
|
||||
return
|
||||
|
||||
if not exec_address:
|
||||
argparser.error('exec address (-e) must be defined')
|
||||
|
||||
c = TxFactory(chain_spec)
|
||||
j = JSONRPCRequest(id_generator=rpc.id_generator)
|
||||
o = j.template()
|
||||
o['method'] = 'eth_call'
|
||||
gas_limit = add_0x(int.to_bytes(config.get('_FEE_LIMIT'), 8, byteorder='big').hex(), compact_value=True)
|
||||
gas_price = add_0x(int.to_bytes(config.get('_FEE_PRICE'), 8, byteorder='big').hex(), compact_value=True)
|
||||
o['params'].append({
|
||||
'to': exec_address,
|
||||
'from': signer_address,
|
||||
'value': '0x00',
|
||||
'gas': add_0x(int.to_bytes(8000000, 8, byteorder='big').hex()), # TODO: better get of network gas limit
|
||||
'gasPrice': '0x01',
|
||||
'value': '0x0',
|
||||
'gas': gas_limit, # TODO: better get of network gas limit
|
||||
'gasPrice': gas_price,
|
||||
'data': add_0x(code),
|
||||
})
|
||||
height = to_blockheight_param(config.get('_HEIGHT'))
|
||||
@@ -135,6 +143,9 @@ def main():
|
||||
sys.stderr.write('query returned an empty value ({})\n'.format(r))
|
||||
sys.exit(1)
|
||||
|
||||
if not exec_address:
|
||||
argparser.error('exec address (-e) must be defined')
|
||||
|
||||
if chain_spec == None:
|
||||
raise ValueError('chain spec must be specified')
|
||||
|
||||
|
||||
@@ -106,7 +106,7 @@ def main():
|
||||
logg.debug('sender {} balance after: {}'.format(signer_address, sender_balance))
|
||||
logg.debug('recipient {} balance after: {}'.format(recipient, recipient_balance))
|
||||
if r['status'] == 0:
|
||||
logg.critical('VM revert. Wish I could tell you more')
|
||||
logg.critical('VM revert for {}. Wish I could tell you more'.format(tx_hash_hex))
|
||||
sys.exit(1)
|
||||
print(tx_hash_hex)
|
||||
else:
|
||||
|
||||
@@ -133,6 +133,11 @@ def main():
|
||||
o = raw(args.data, id_generator=rpc.id_generator)
|
||||
if send:
|
||||
r = conn.do(o)
|
||||
if block_last:
|
||||
r = conn.wait(tx_hash_hex)
|
||||
if r['status'] == 0:
|
||||
logg.critical('VM revert for {}. Wish I could tell you more'.format(tx_hash_hex))
|
||||
sys.exit(1)
|
||||
print(r)
|
||||
else:
|
||||
print(o)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
funga-eth~=0.5.1
|
||||
funga-eth~=0.5.3
|
||||
pysha3==1.0.2
|
||||
hexathon~=0.1.0
|
||||
hexathon~=0.1.1
|
||||
websocket-client==0.57.0
|
||||
potaahto~=0.1.0
|
||||
chainlib~=0.0.14
|
||||
confini~=0.5.2
|
||||
chainlib~=0.0.17
|
||||
confini~=0.5.3
|
||||
|
||||
Reference in New Issue
Block a user