commit 6b5628cf28d931def18bb55679727bd22aaa193f
parent 5d7c5556d40b826d9b1fd39a0437a8433e877536
Author: nolash <dev@holbrook.no>
Date: Wed, 1 Sep 2021 09:38:09 +0200
Allow fee settings for read
Diffstat:
6 files changed, 44 insertions(+), 36 deletions(-)
diff --git a/chainlib/eth/cli.py b/chainlib/eth/cli.py
@@ -1,5 +1,6 @@
# standard imports
import os
+import logging
# external imports
from chainlib.cli import (
@@ -25,6 +26,9 @@ from chainlib.eth.nonce import (
OverrideNonceOracle,
RPCNonceOracle,
)
+
+logg = logging.getLogger(__name__)
+
script_dir = os.path.dirname(os.path.realpath(__file__))
@@ -57,8 +61,6 @@ class Rpc(BaseRpc):
if self.can_sign():
nonce = None
- fee_price = None
- fee_limit = None
try:
nonce = config.get('_NONCE')
except KeyError:
@@ -68,18 +70,22 @@ class Rpc(BaseRpc):
else:
self.nonce_oracle = RPCNonceOracle(self.get_sender_address(), self.conn, id_generator=self.id_generator)
- try:
- fee_price = config.get('_FEE_PRICE')
- except KeyError:
- pass
- try:
- fee_limit = config.get('_FEE_LIMIT')
- except KeyError:
- pass
- if fee_price != None or fee_limit != None:
- self.fee_oracle = OverrideGasOracle(price=fee_price, limit=fee_limit, conn=self.conn, id_generator=self.id_generator)
- else:
- self.fee_oracle = RPCGasOracle(self.conn, id_generator=self.id_generator)
+ fee_price = None
+ fee_limit = None
+ try:
+ fee_price = config.get('_FEE_PRICE')
+ except KeyError:
+ pass
+
+ try:
+ fee_limit = config.get('_FEE_LIMIT')
+ except KeyError:
+ pass
+
+ if fee_price != None or fee_limit != None:
+ self.fee_oracle = OverrideGasOracle(price=fee_price, limit=fee_limit, conn=self.conn, id_generator=self.id_generator)
+ else:
+ self.fee_oracle = RPCGasOracle(self.conn, id_generator=self.id_generator)
error_parser = None
if config.get('RPC_DIALECT') == 'openethereum':
diff --git a/chainlib/eth/data/config/config.ini b/chainlib/eth/data/config/config.ini
@@ -1,9 +1,10 @@
[rpc]
http_provider = http://localhost:8545
-http_authentication =
-http_username =
-http_password =
+provider =
+auth =
+credentials =
dialect = default
+scheme = http
[chain]
spec = evm:ethereum:1
diff --git a/chainlib/eth/runnable/get.py b/chainlib/eth/runnable/get.py
@@ -133,7 +133,8 @@ def main():
elif not is_checksum_address(address):
raise ValueError('invalid checksum address: {}'.format(address))
r = get_address(conn, address, rpc.id_generator, config.get('_HEIGHT'))
- print(r)
+ if r != None:
+ print(r)
if __name__ == '__main__':
diff --git a/chainlib/eth/runnable/raw.py b/chainlib/eth/runnable/raw.py
@@ -110,22 +110,22 @@ def main():
sys.exit(1)
return
- elif signer_address != None:
- if chain_spec == None:
- raise ValueError('chain spec must be specified')
- g = TxFactory(chain_spec, signer=rpc.get_signer(), gas_oracle=rpc.get_gas_oracle(), nonce_oracle=rpc.get_nonce_oracle())
- tx = g.template(signer_address, recipient, use_nonce=True)
- if args.data != None:
- tx = g.set_code(tx, add_0x(args.data))
-
- (tx_hash_hex, o) = g.finalize(tx, id_generator=rpc.id_generator)
-
- if send:
- r = conn.do(o)
- print(r)
- else:
- print(o)
- print(tx_hash_hex)
+ if signer_address != None:
+ if chain_spec == None:
+ raise ValueError('chain spec must be specified')
+ g = TxFactory(chain_spec, signer=rpc.get_signer(), gas_oracle=rpc.get_gas_oracle(), nonce_oracle=rpc.get_nonce_oracle())
+ tx = g.template(signer_address, exec_address, use_nonce=True)
+ if args.data != None:
+ tx = g.set_code(tx, add_0x(args.data))
+
+ (tx_hash_hex, o) = g.finalize(tx, id_generator=rpc.id_generator)
+
+ if send:
+ r = conn.do(o)
+ print(r)
+ else:
+ print(o)
+ print(tx_hash_hex)
else:
o = raw(args.data, id_generator=rpc.id_generator)
diff --git a/requirements.txt b/requirements.txt
@@ -3,5 +3,5 @@ pysha3==1.0.2
hexathon~=0.0.1a8
websocket-client==0.57.0
potaahto~=0.0.1a1
-chainlib==0.0.9a3
+chainlib==0.0.9a6
confini>=0.4.1a1,<0.5.0
diff --git a/setup.cfg b/setup.cfg
@@ -1,6 +1,6 @@
[metadata]
name = chainlib-eth
-version = 0.0.9a7
+version = 0.0.9a9
description = Ethereum implementation of the chainlib interface
author = Louis Holbrook
author_email = dev@holbrook.no