py-geth 5.0.0__tar.gz → 5.0.0b1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {py_geth-5.0.0/py_geth.egg-info → py_geth-5.0.0b1}/PKG-INFO +8 -9
- {py_geth-5.0.0 → py_geth-5.0.0b1}/README.md +4 -4
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/__init__.py +0 -11
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/genesis.json +1 -1
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/install.py +15 -31
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/types.py +1 -7
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/validation.py +1 -8
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/wrapper.py +0 -3
- {py_geth-5.0.0 → py_geth-5.0.0b1/py_geth.egg-info}/PKG-INFO +8 -9
- {py_geth-5.0.0 → py_geth-5.0.0b1}/py_geth.egg-info/SOURCES.txt +6 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/py_geth.egg-info/requires.txt +2 -3
- {py_geth-5.0.0 → py_geth-5.0.0b1}/setup.py +4 -5
- py_geth-5.0.0b1/tests/core/accounts/projects/test-01/geth/nodekey +1 -0
- py_geth-5.0.0b1/tests/core/accounts/projects/test-02/geth/LOCK +0 -0
- py_geth-5.0.0b1/tests/core/accounts/projects/test-02/geth/nodekey +1 -0
- py_geth-5.0.0b1/tests/core/accounts/projects/test-03/geth/LOCK +0 -0
- py_geth-5.0.0b1/tests/core/accounts/projects/test-03/geth/nodekey +1 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/utility/test_validation.py +2 -14
- py_geth-5.0.0b1/tests/core/waiting/conftest.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/LICENSE +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/MANIFEST.in +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/accounts.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/chain.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/default_blockchain_password +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/exceptions.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/main.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/mixins.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/process.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/py.typed +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/reset.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/__init__.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/encoding.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/filesystem.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/networking.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/proc.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/thread.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/geth/utils/timeout.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/py_geth.egg-info/dependency_links.txt +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/py_geth.egg-info/not-zip-safe +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/py_geth.egg-info/top_level.txt +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/pyproject.toml +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/setup.cfg +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/conftest.py +0 -0
- /py_geth-5.0.0/tests/core/waiting/conftest.py → /py_geth-5.0.0b1/tests/core/accounts/projects/test-01/geth/LOCK +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/projects/test-01/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2 +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2 +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-00.716418819Z--e8e085862a8d951dd78ec5ea784b3e22ee1ca9c6 +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-04.748321142Z--0da70f43a568e88168436be52ed129f4a9bbdaf5 +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/test_account_list_parsing.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/test_create_geth_account.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/accounts/test_geth_accounts.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/running/test_running_dev_chain.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/running/test_running_mainnet_chain.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/running/test_running_sepolia_chain.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/running/test_running_with_logging.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/running/test_use_as_a_context_manager.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/test_import_and_version.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/test_library_files.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/utility/test_constructing_test_chain_kwargs.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/utility/test_geth_version.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/utility/test_is_live_chain.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/utility/test_is_sepolia_chain.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/waiting/test_waiting_for_ipc_socket.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/core/waiting/test_waiting_for_rpc_connection.py +0 -0
- {py_geth-5.0.0 → py_geth-5.0.0b1}/tests/installation/test_geth_installation.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: py-geth
|
3
|
-
Version: 5.0.
|
3
|
+
Version: 5.0.0b1
|
4
4
|
Summary: py-geth: Run Go-Ethereum as a subprocess
|
5
5
|
Home-page: https://github.com/ethereum/py-geth
|
6
6
|
Author: The Ethereum Foundation
|
@@ -20,11 +20,9 @@ Classifier: Programming Language :: Python :: 3.12
|
|
20
20
|
Requires-Python: >=3.8, <4
|
21
21
|
Description-Content-Type: text/markdown
|
22
22
|
License-File: LICENSE
|
23
|
-
Requires-Dist: eval_type_backport>=0.1.0; python_version < "3.10"
|
24
|
-
Requires-Dist: pydantic>=2.6.0
|
25
|
-
Requires-Dist: requests>=2.23
|
26
23
|
Requires-Dist: semantic-version>=2.6.0
|
27
|
-
Requires-Dist:
|
24
|
+
Requires-Dist: pydantic>=2.6.0
|
25
|
+
Requires-Dist: eval_type_backport>=0.1.0; python_version < "3.10"
|
28
26
|
Requires-Dist: typing-extensions>=4.0.1
|
29
27
|
Provides-Extra: dev
|
30
28
|
Requires-Dist: build>=0.9.0; extra == "dev"
|
@@ -32,6 +30,7 @@ Requires-Dist: bumpversion>=0.5.3; extra == "dev"
|
|
32
30
|
Requires-Dist: ipython; extra == "dev"
|
33
31
|
Requires-Dist: mypy==1.10.0; extra == "dev"
|
34
32
|
Requires-Dist: pre-commit>=3.4.0; extra == "dev"
|
33
|
+
Requires-Dist: requests>=2.20; extra == "dev"
|
35
34
|
Requires-Dist: tox>=4.0.0; extra == "dev"
|
36
35
|
Requires-Dist: twine; extra == "dev"
|
37
36
|
Requires-Dist: wheel; extra == "dev"
|
@@ -166,19 +165,19 @@ the current list of supported versions.
|
|
166
165
|
Installation can be done via the command line:
|
167
166
|
|
168
167
|
```bash
|
169
|
-
$ python -m geth.install v1.14.
|
168
|
+
$ python -m geth.install v1.14.5
|
170
169
|
```
|
171
170
|
|
172
171
|
Or from python using the `install_geth` function.
|
173
172
|
|
174
173
|
```python
|
175
174
|
>>> from geth import install_geth
|
176
|
-
>>> install_geth('v1.14.
|
175
|
+
>>> install_geth('v1.14.5')
|
177
176
|
```
|
178
177
|
|
179
178
|
The installed binary can be found in the `$HOME/.py-geth` directory, under your
|
180
|
-
home directory. The `v1.14.
|
181
|
-
`$HOME/.py-geth/geth-v1.14.
|
179
|
+
home directory. The `v1.14.5` binary would be located at
|
180
|
+
`$HOME/.py-geth/geth-v1.14.5/bin/geth`.
|
182
181
|
|
183
182
|
## About `DevGethProcess`
|
184
183
|
|
@@ -118,19 +118,19 @@ the current list of supported versions.
|
|
118
118
|
Installation can be done via the command line:
|
119
119
|
|
120
120
|
```bash
|
121
|
-
$ python -m geth.install v1.14.
|
121
|
+
$ python -m geth.install v1.14.5
|
122
122
|
```
|
123
123
|
|
124
124
|
Or from python using the `install_geth` function.
|
125
125
|
|
126
126
|
```python
|
127
127
|
>>> from geth import install_geth
|
128
|
-
>>> install_geth('v1.14.
|
128
|
+
>>> install_geth('v1.14.5')
|
129
129
|
```
|
130
130
|
|
131
131
|
The installed binary can be found in the `$HOME/.py-geth` directory, under your
|
132
|
-
home directory. The `v1.14.
|
133
|
-
`$HOME/.py-geth/geth-v1.14.
|
132
|
+
home directory. The `v1.14.5` binary would be located at
|
133
|
+
`$HOME/.py-geth/geth-v1.14.5/bin/geth`.
|
134
134
|
|
135
135
|
## About `DevGethProcess`
|
136
136
|
|
@@ -20,14 +20,3 @@ from .process import (
|
|
20
20
|
)
|
21
21
|
|
22
22
|
__version__ = __version("py-geth")
|
23
|
-
|
24
|
-
__all__ = (
|
25
|
-
"install_geth",
|
26
|
-
"get_geth_version",
|
27
|
-
"InterceptedStreamsMixin",
|
28
|
-
"LoggingMixin",
|
29
|
-
"MainnetGethProcess",
|
30
|
-
"SepoliaGethProcess",
|
31
|
-
"TestnetGethProcess",
|
32
|
-
"DevGethProcess",
|
33
|
-
)
|
@@ -24,6 +24,6 @@
|
|
24
24
|
"extraData": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
25
25
|
"gasLimit": "0x47e7c4",
|
26
26
|
"difficulty": "0x0",
|
27
|
-
"
|
27
|
+
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
28
28
|
"alloc": {}
|
29
29
|
}
|
@@ -17,13 +17,6 @@ from typing import (
|
|
17
17
|
Generator,
|
18
18
|
)
|
19
19
|
|
20
|
-
import requests
|
21
|
-
from requests.exceptions import (
|
22
|
-
ConnectionError,
|
23
|
-
HTTPError,
|
24
|
-
Timeout,
|
25
|
-
)
|
26
|
-
|
27
20
|
from geth.exceptions import (
|
28
21
|
PyGethException,
|
29
22
|
PyGethKeyError,
|
@@ -39,9 +32,6 @@ V1_14_2 = "v1.14.2"
|
|
39
32
|
V1_14_3 = "v1.14.3"
|
40
33
|
V1_14_4 = "v1.14.4"
|
41
34
|
V1_14_5 = "v1.14.5"
|
42
|
-
V1_14_6 = "v1.14.6"
|
43
|
-
V1_14_7 = "v1.14.7"
|
44
|
-
V1_14_8 = "v1.14.8"
|
45
35
|
|
46
36
|
|
47
37
|
LINUX = "linux"
|
@@ -219,27 +209,29 @@ DOWNLOAD_SOURCE_CODE_URI_TEMPLATE = (
|
|
219
209
|
)
|
220
210
|
|
221
211
|
|
222
|
-
def download_source_code_release(identifier: str) ->
|
212
|
+
def download_source_code_release(identifier: str) -> int:
|
223
213
|
download_uri = DOWNLOAD_SOURCE_CODE_URI_TEMPLATE.format(identifier)
|
224
214
|
source_code_archive_path = get_source_code_archive_path(identifier)
|
225
215
|
|
226
216
|
ensure_parent_dir_exists(source_code_archive_path)
|
227
|
-
try:
|
228
|
-
response = requests.get(download_uri)
|
229
|
-
response.raise_for_status()
|
230
|
-
with open(source_code_archive_path, "wb") as f:
|
231
|
-
f.write(response.content)
|
232
|
-
|
233
|
-
print(f"Downloading source code release from {download_uri}")
|
234
217
|
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
218
|
+
command = [
|
219
|
+
"wget",
|
220
|
+
download_uri,
|
221
|
+
"-c", # resume previously incomplete download.
|
222
|
+
"-O",
|
223
|
+
source_code_archive_path,
|
224
|
+
]
|
225
|
+
|
226
|
+
return check_subprocess_call(
|
227
|
+
command,
|
228
|
+
message=f"Downloading source code release from {download_uri}",
|
229
|
+
)
|
239
230
|
|
240
231
|
|
241
232
|
def extract_source_code_release(identifier: str) -> None:
|
242
233
|
source_code_archive_path = get_source_code_archive_path(identifier)
|
234
|
+
|
243
235
|
source_code_extract_path = get_source_code_extract_path(identifier)
|
244
236
|
ensure_path_exists(source_code_extract_path)
|
245
237
|
|
@@ -330,9 +322,7 @@ install_v1_14_2 = functools.partial(install_from_source_code_release, V1_14_2)
|
|
330
322
|
install_v1_14_3 = functools.partial(install_from_source_code_release, V1_14_3)
|
331
323
|
install_v1_14_4 = functools.partial(install_from_source_code_release, V1_14_4)
|
332
324
|
install_v1_14_5 = functools.partial(install_from_source_code_release, V1_14_5)
|
333
|
-
|
334
|
-
install_v1_14_7 = functools.partial(install_from_source_code_release, V1_14_7)
|
335
|
-
install_v1_14_8 = functools.partial(install_from_source_code_release, V1_14_8)
|
325
|
+
|
336
326
|
|
337
327
|
INSTALL_FUNCTIONS = {
|
338
328
|
LINUX: {
|
@@ -341,9 +331,6 @@ INSTALL_FUNCTIONS = {
|
|
341
331
|
V1_14_3: install_v1_14_3,
|
342
332
|
V1_14_4: install_v1_14_4,
|
343
333
|
V1_14_5: install_v1_14_5,
|
344
|
-
V1_14_6: install_v1_14_6,
|
345
|
-
V1_14_7: install_v1_14_7,
|
346
|
-
V1_14_8: install_v1_14_8,
|
347
334
|
},
|
348
335
|
OSX: {
|
349
336
|
V1_14_0: install_v1_14_0,
|
@@ -351,9 +338,6 @@ INSTALL_FUNCTIONS = {
|
|
351
338
|
V1_14_3: install_v1_14_3,
|
352
339
|
V1_14_4: install_v1_14_4,
|
353
340
|
V1_14_5: install_v1_14_5,
|
354
|
-
V1_14_6: install_v1_14_6,
|
355
|
-
V1_14_7: install_v1_14_7,
|
356
|
-
V1_14_8: install_v1_14_8,
|
357
341
|
},
|
358
342
|
}
|
359
343
|
|
@@ -37,7 +37,6 @@ class GethKwargsTypedDict(TypedDict, total=False):
|
|
37
37
|
suffix_args: list[str] | None
|
38
38
|
suffix_kwargs: dict[str, str] | None
|
39
39
|
tx_pool_global_slots: str | None
|
40
|
-
tx_pool_lifetime: str | None
|
41
40
|
tx_pool_price_limit: str | None
|
42
41
|
verbosity: str | None
|
43
42
|
ws_addr: str | None
|
@@ -49,17 +48,12 @@ class GethKwargsTypedDict(TypedDict, total=False):
|
|
49
48
|
|
50
49
|
class GenesisDataTypedDict(TypedDict, total=False):
|
51
50
|
alloc: dict[str, dict[str, Any]]
|
52
|
-
baseFeePerGas: str
|
53
|
-
blobGasUsed: str
|
54
51
|
coinbase: str
|
55
52
|
config: dict[str, Any]
|
56
53
|
difficulty: str
|
57
|
-
excessBlobGas: str
|
58
54
|
extraData: str
|
59
55
|
gasLimit: str
|
60
|
-
|
61
|
-
mixHash: str
|
56
|
+
mixhash: str
|
62
57
|
nonce: str
|
63
|
-
number: str
|
64
58
|
parentHash: str
|
65
59
|
timestamp: str
|
@@ -46,7 +46,6 @@ class GethKwargs(BaseModel):
|
|
46
46
|
suffix_args: list[str] | None = None
|
47
47
|
suffix_kwargs: dict[str, str] | None = None
|
48
48
|
tx_pool_global_slots: str | None = None
|
49
|
-
tx_pool_lifetime: str | None = None
|
50
49
|
tx_pool_price_limit: str | None = None
|
51
50
|
verbosity: str | None = None
|
52
51
|
ws_addr: str | None = None
|
@@ -71,7 +70,6 @@ def validate_geth_kwargs(geth_kwargs: GethKwargsTypedDict) -> None:
|
|
71
70
|
|
72
71
|
|
73
72
|
class GenesisDataConfig(BaseModel):
|
74
|
-
chainId: int = 0
|
75
73
|
ethash: dict[str, Any] = {} # so that geth treats config as PoW -> PoS transition
|
76
74
|
homesteadBlock: int = 0
|
77
75
|
daoForkBlock: int = 0
|
@@ -99,20 +97,15 @@ class GenesisDataConfig(BaseModel):
|
|
99
97
|
|
100
98
|
class GenesisData(BaseModel):
|
101
99
|
alloc: dict[str, dict[str, Any]] = {}
|
102
|
-
baseFeePerGas: str = "0x0"
|
103
|
-
blobGasUsed: str = "0x0"
|
104
100
|
coinbase: str = "0x3333333333333333333333333333333333333333"
|
105
101
|
config: dict[str, Any] = GenesisDataConfig().model_dump()
|
106
102
|
difficulty: str = "0x0"
|
107
|
-
excessBlobGas: str = "0x0"
|
108
103
|
extraData: str = (
|
109
104
|
"0x0000000000000000000000000000000000000000000000000000000000000000"
|
110
105
|
)
|
111
106
|
gasLimit: str = "0x47e7c4"
|
112
|
-
|
113
|
-
mixHash: str = "0x0000000000000000000000000000000000000000000000000000000000000000"
|
107
|
+
mixhash: str = "0x0000000000000000000000000000000000000000000000000000000000000000"
|
114
108
|
nonce: str = "0x0"
|
115
|
-
number: str = "0x0"
|
116
109
|
parentHash: str = (
|
117
110
|
"0x0000000000000000000000000000000000000000000000000000000000000000"
|
118
111
|
)
|
@@ -219,9 +219,6 @@ def construct_popen_command(**geth_kwargs: Unpack[GethKwargsTypedDict]) -> list[
|
|
219
219
|
if gk.tx_pool_global_slots is not None:
|
220
220
|
builder.extend(("--txpool.globalslots", gk.tx_pool_global_slots))
|
221
221
|
|
222
|
-
if gk.tx_pool_lifetime is not None:
|
223
|
-
builder.extend(("--txpool.lifetime", gk.tx_pool_lifetime))
|
224
|
-
|
225
222
|
if gk.tx_pool_price_limit is not None:
|
226
223
|
builder.extend(("--txpool.pricelimit", gk.tx_pool_price_limit))
|
227
224
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: py-geth
|
3
|
-
Version: 5.0.
|
3
|
+
Version: 5.0.0b1
|
4
4
|
Summary: py-geth: Run Go-Ethereum as a subprocess
|
5
5
|
Home-page: https://github.com/ethereum/py-geth
|
6
6
|
Author: The Ethereum Foundation
|
@@ -20,11 +20,9 @@ Classifier: Programming Language :: Python :: 3.12
|
|
20
20
|
Requires-Python: >=3.8, <4
|
21
21
|
Description-Content-Type: text/markdown
|
22
22
|
License-File: LICENSE
|
23
|
-
Requires-Dist: eval_type_backport>=0.1.0; python_version < "3.10"
|
24
|
-
Requires-Dist: pydantic>=2.6.0
|
25
|
-
Requires-Dist: requests>=2.23
|
26
23
|
Requires-Dist: semantic-version>=2.6.0
|
27
|
-
Requires-Dist:
|
24
|
+
Requires-Dist: pydantic>=2.6.0
|
25
|
+
Requires-Dist: eval_type_backport>=0.1.0; python_version < "3.10"
|
28
26
|
Requires-Dist: typing-extensions>=4.0.1
|
29
27
|
Provides-Extra: dev
|
30
28
|
Requires-Dist: build>=0.9.0; extra == "dev"
|
@@ -32,6 +30,7 @@ Requires-Dist: bumpversion>=0.5.3; extra == "dev"
|
|
32
30
|
Requires-Dist: ipython; extra == "dev"
|
33
31
|
Requires-Dist: mypy==1.10.0; extra == "dev"
|
34
32
|
Requires-Dist: pre-commit>=3.4.0; extra == "dev"
|
33
|
+
Requires-Dist: requests>=2.20; extra == "dev"
|
35
34
|
Requires-Dist: tox>=4.0.0; extra == "dev"
|
36
35
|
Requires-Dist: twine; extra == "dev"
|
37
36
|
Requires-Dist: wheel; extra == "dev"
|
@@ -166,19 +165,19 @@ the current list of supported versions.
|
|
166
165
|
Installation can be done via the command line:
|
167
166
|
|
168
167
|
```bash
|
169
|
-
$ python -m geth.install v1.14.
|
168
|
+
$ python -m geth.install v1.14.5
|
170
169
|
```
|
171
170
|
|
172
171
|
Or from python using the `install_geth` function.
|
173
172
|
|
174
173
|
```python
|
175
174
|
>>> from geth import install_geth
|
176
|
-
>>> install_geth('v1.14.
|
175
|
+
>>> install_geth('v1.14.5')
|
177
176
|
```
|
178
177
|
|
179
178
|
The installed binary can be found in the `$HOME/.py-geth` directory, under your
|
180
|
-
home directory. The `v1.14.
|
181
|
-
`$HOME/.py-geth/geth-v1.14.
|
179
|
+
home directory. The `v1.14.5` binary would be located at
|
180
|
+
`$HOME/.py-geth/geth-v1.14.5/bin/geth`.
|
182
181
|
|
183
182
|
## About `DevGethProcess`
|
184
183
|
|
@@ -37,10 +37,16 @@ tests/core/accounts/conftest.py
|
|
37
37
|
tests/core/accounts/test_account_list_parsing.py
|
38
38
|
tests/core/accounts/test_create_geth_account.py
|
39
39
|
tests/core/accounts/test_geth_accounts.py
|
40
|
+
tests/core/accounts/projects/test-01/geth/LOCK
|
41
|
+
tests/core/accounts/projects/test-01/geth/nodekey
|
40
42
|
tests/core/accounts/projects/test-01/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2
|
43
|
+
tests/core/accounts/projects/test-02/geth/LOCK
|
44
|
+
tests/core/accounts/projects/test-02/geth/nodekey
|
41
45
|
tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2
|
42
46
|
tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-00.716418819Z--e8e085862a8d951dd78ec5ea784b3e22ee1ca9c6
|
43
47
|
tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-04.748321142Z--0da70f43a568e88168436be52ed129f4a9bbdaf5
|
48
|
+
tests/core/accounts/projects/test-03/geth/LOCK
|
49
|
+
tests/core/accounts/projects/test-03/geth/nodekey
|
44
50
|
tests/core/running/test_running_dev_chain.py
|
45
51
|
tests/core/running/test_running_mainnet_chain.py
|
46
52
|
tests/core/running/test_running_sepolia_chain.py
|
@@ -1,7 +1,5 @@
|
|
1
|
-
pydantic>=2.6.0
|
2
|
-
requests>=2.23
|
3
1
|
semantic-version>=2.6.0
|
4
|
-
|
2
|
+
pydantic>=2.6.0
|
5
3
|
typing-extensions>=4.0.1
|
6
4
|
|
7
5
|
[:python_version < "3.10"]
|
@@ -13,6 +11,7 @@ bumpversion>=0.5.3
|
|
13
11
|
ipython
|
14
12
|
mypy==1.10.0
|
15
13
|
pre-commit>=3.4.0
|
14
|
+
requests>=2.20
|
16
15
|
tox>=4.0.0
|
17
16
|
twine
|
18
17
|
wheel
|
@@ -11,6 +11,7 @@ extras_require = {
|
|
11
11
|
"ipython",
|
12
12
|
"mypy==1.10.0",
|
13
13
|
"pre-commit>=3.4.0",
|
14
|
+
"requests>=2.20",
|
14
15
|
"tox>=4.0.0",
|
15
16
|
"twine",
|
16
17
|
"wheel",
|
@@ -37,7 +38,7 @@ with open("./README.md") as readme:
|
|
37
38
|
setup(
|
38
39
|
name="py-geth",
|
39
40
|
# *IMPORTANT*: Don't manually change the version here. Use the 'bumpversion' utility.
|
40
|
-
version="5.0.0",
|
41
|
+
version="5.0.0-beta.1",
|
41
42
|
description="""py-geth: Run Go-Ethereum as a subprocess""",
|
42
43
|
long_description_content_type="text/markdown",
|
43
44
|
long_description=long_description,
|
@@ -47,11 +48,9 @@ setup(
|
|
47
48
|
include_package_data=True,
|
48
49
|
py_modules=["geth"],
|
49
50
|
install_requires=[
|
50
|
-
"eval_type_backport>=0.1.0; python_version < '3.10'",
|
51
|
-
"pydantic>=2.6.0",
|
52
|
-
"requests>=2.23",
|
53
51
|
"semantic-version>=2.6.0",
|
54
|
-
"
|
52
|
+
"pydantic>=2.6.0",
|
53
|
+
"eval_type_backport>=0.1.0; python_version < '3.10'",
|
55
54
|
"typing-extensions>=4.0.1",
|
56
55
|
],
|
57
56
|
python_requires=">=3.8, <4",
|
@@ -0,0 +1 @@
|
|
1
|
+
46cf87d2c3661d137fa3901cfeff7f58b74a4f118d004199580fd588eba10b5e
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
9fb3c3964107a7f76a2474221384c21dc0288552d59ef9aa3317c4e3a1e2045e
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
b0352dc57ebd8601c833b6079e0140a38174c58f13b24f292e0fccc708fe2e4d
|
@@ -104,11 +104,8 @@ def test_validate_genesis_data_bad(genesis_data):
|
|
104
104
|
},
|
105
105
|
{
|
106
106
|
"alloc": {},
|
107
|
-
"baseFeePerGas": "0x0",
|
108
|
-
"blobGasUsed": "0x0",
|
109
107
|
"coinbase": "0x3333333333333333333333333333333333333333",
|
110
108
|
"config": {
|
111
|
-
"chainId": 0,
|
112
109
|
"ethash": {},
|
113
110
|
"homesteadBlock": 0,
|
114
111
|
"daoForkBlock": 0,
|
@@ -130,13 +127,10 @@ def test_validate_genesis_data_bad(genesis_data):
|
|
130
127
|
"cancunTime": 0,
|
131
128
|
},
|
132
129
|
"difficulty": "0x00012131",
|
133
|
-
"excessBlobGas": "0x0",
|
134
130
|
"extraData": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
135
131
|
"gasLimit": "0x47e7c4",
|
136
|
-
"
|
137
|
-
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
132
|
+
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
138
133
|
"nonce": "abc",
|
139
|
-
"number": "0x0",
|
140
134
|
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
141
135
|
"timestamp": "1234",
|
142
136
|
},
|
@@ -156,11 +150,8 @@ def test_validate_genesis_data_bad(genesis_data):
|
|
156
150
|
},
|
157
151
|
{
|
158
152
|
"alloc": {},
|
159
|
-
"baseFeePerGas": "0x0",
|
160
|
-
"blobGasUsed": "0x0",
|
161
153
|
"coinbase": "0x3333333333333333333333333333333333333333",
|
162
154
|
"config": {
|
163
|
-
"chainId": 0,
|
164
155
|
"ethash": {},
|
165
156
|
"homesteadBlock": 5,
|
166
157
|
"daoForkBlock": 1,
|
@@ -182,13 +173,10 @@ def test_validate_genesis_data_bad(genesis_data):
|
|
182
173
|
"cancunTime": 0,
|
183
174
|
},
|
184
175
|
"difficulty": "0x00012131",
|
185
|
-
"excessBlobGas": "0x0",
|
186
176
|
"extraData": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
187
177
|
"gasLimit": "0x47e7c4",
|
188
|
-
"
|
189
|
-
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
178
|
+
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
190
179
|
"nonce": "abc",
|
191
|
-
"number": "0x0",
|
192
180
|
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", # noqa: E501
|
193
181
|
"timestamp": "0x0",
|
194
182
|
},
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|