eth-portfolio-temp 0.2.1.dev0__cp310-cp310-macosx_11_0_arm64.whl → 0.2.2.dev0__cp310-cp310-macosx_11_0_arm64.whl
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.
Potentially problematic release.
This version of eth-portfolio-temp might be problematic. Click here for more details.
- 295eace8438df6ec133b__mypyc.cpython-310-darwin.so +0 -0
- eth_portfolio/_argspec.cpython-310-darwin.so +0 -0
- eth_portfolio/_config.cpython-310-darwin.so +0 -0
- eth_portfolio/_loaders/_nonce.cpython-310-darwin.so +0 -0
- eth_portfolio/_loaders/balances.cpython-310-darwin.so +0 -0
- eth_portfolio/_loaders/utils.cpython-310-darwin.so +0 -0
- eth_portfolio/_shitcoins.cpython-310-darwin.so +0 -0
- eth_portfolio/_stableish.cpython-310-darwin.so +0 -0
- eth_portfolio/constants.cpython-310-darwin.so +0 -0
- eth_portfolio_scripts/_portfolio.py +29 -26
- eth_portfolio_scripts/balances.cpython-310-darwin.so +0 -0
- eth_portfolio_scripts/balances.py +5 -1
- eth_portfolio_scripts/docker/__init__.cpython-310-darwin.so +0 -0
- eth_portfolio_scripts/docker/check.cpython-310-darwin.so +0 -0
- eth_portfolio_scripts/docker/docker_compose.cpython-310-darwin.so +0 -0
- eth_portfolio_scripts/main.py +6 -0
- {eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/METADATA +1 -1
- {eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/RECORD +21 -21
- {eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/WHEEL +0 -0
- {eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/entry_points.txt +0 -0
- {eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/top_level.txt +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -40,8 +40,10 @@ class ExportablePortfolio(Portfolio):
|
|
|
40
40
|
def __init__(
|
|
41
41
|
self,
|
|
42
42
|
addresses: Addresses,
|
|
43
|
+
*,
|
|
43
44
|
start_block: int = 0,
|
|
44
45
|
label: str = _DEFAULT_LABEL,
|
|
46
|
+
concurrency: int = 60,
|
|
45
47
|
load_prices: bool = True,
|
|
46
48
|
get_bucket: Callable[[ChecksumAddress], Awaitable[str]] = get_token_bucket,
|
|
47
49
|
num_workers_transactions: int = 1000,
|
|
@@ -51,6 +53,7 @@ class ExportablePortfolio(Portfolio):
|
|
|
51
53
|
addresses, start_block, label, load_prices, num_workers_transactions, asynchronous
|
|
52
54
|
)
|
|
53
55
|
self.get_bucket = get_bucket
|
|
56
|
+
self._semaphore = a_sync.Semaphore(concurrency)
|
|
54
57
|
|
|
55
58
|
@cached_property
|
|
56
59
|
def _data_queries(self) -> Tuple[str, str]:
|
|
@@ -88,36 +91,36 @@ class ExportablePortfolio(Portfolio):
|
|
|
88
91
|
except Exception as e:
|
|
89
92
|
log_error("Error processing %s:", dt, exc_info=True)
|
|
90
93
|
|
|
91
|
-
@a_sync.Semaphore(60)
|
|
92
94
|
async def get_data_for_export(self, block: BlockNumber, ts: datetime) -> List[victoria.Metric]:
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
for
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
await self.__process_token(ts, section, wallet, token, bals)
|
|
105
|
-
)
|
|
106
|
-
elif isinstance(section_data, RemoteTokenBalances):
|
|
107
|
-
if section == "external":
|
|
108
|
-
section = "assets"
|
|
109
|
-
for protocol, token_bals in section_data.items():
|
|
110
|
-
for token, bals in dict.items(token_bals):
|
|
95
|
+
async with self._semaphore:
|
|
96
|
+
print(f"exporting {ts} for {self.label}")
|
|
97
|
+
start = datetime.now(tz=timezone.utc)
|
|
98
|
+
|
|
99
|
+
metrics_to_export = []
|
|
100
|
+
data: PortfolioBalances = await self.describe(block, sync=False)
|
|
101
|
+
|
|
102
|
+
for wallet, wallet_data in dict.items(data):
|
|
103
|
+
for section, section_data in wallet_data.items():
|
|
104
|
+
if isinstance(section_data, TokenBalances):
|
|
105
|
+
for token, bals in dict.items(section_data):
|
|
111
106
|
metrics_to_export.extend(
|
|
112
|
-
await self.__process_token(
|
|
113
|
-
ts, section, wallet, token, bals, protocol=protocol
|
|
114
|
-
)
|
|
107
|
+
await self.__process_token(ts, section, wallet, token, bals)
|
|
115
108
|
)
|
|
116
|
-
|
|
117
|
-
|
|
109
|
+
elif isinstance(section_data, RemoteTokenBalances):
|
|
110
|
+
if section == "external":
|
|
111
|
+
section = "assets"
|
|
112
|
+
for protocol, token_bals in section_data.items():
|
|
113
|
+
for token, bals in dict.items(token_bals):
|
|
114
|
+
metrics_to_export.extend(
|
|
115
|
+
await self.__process_token(
|
|
116
|
+
ts, section, wallet, token, bals, protocol=protocol
|
|
117
|
+
)
|
|
118
|
+
)
|
|
119
|
+
else:
|
|
120
|
+
raise NotImplementedError()
|
|
118
121
|
|
|
119
|
-
|
|
120
|
-
|
|
122
|
+
print(f"got data for {ts} in {datetime.now(tz=timezone.utc) - start}")
|
|
123
|
+
return metrics_to_export
|
|
121
124
|
|
|
122
125
|
def __get_data_exists_coros(self, dt: datetime) -> Iterator[str]:
|
|
123
126
|
for query in self._data_queries:
|
|
Binary file
|
|
@@ -26,7 +26,11 @@ async def export_balances(args: Namespace) -> None:
|
|
|
26
26
|
|
|
27
27
|
interval = parse_timedelta(args.interval)
|
|
28
28
|
portfolio = ExportablePortfolio(
|
|
29
|
-
args.wallet,
|
|
29
|
+
args.wallet,
|
|
30
|
+
label=args.label,
|
|
31
|
+
start_block=args.first_tx_block,
|
|
32
|
+
concurrency=args.concurrency,
|
|
33
|
+
load_prices=False,
|
|
30
34
|
)
|
|
31
35
|
|
|
32
36
|
if export_start_block := args.export_start_block or args.first_tx_block:
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
eth_portfolio_scripts/main.py
CHANGED
|
@@ -54,6 +54,12 @@ export_parser.add_argument(
|
|
|
54
54
|
help="The time interval between datapoints. default: 6h",
|
|
55
55
|
default="6h",
|
|
56
56
|
)
|
|
57
|
+
export_parser.add_argument(
|
|
58
|
+
"--concurrency",
|
|
59
|
+
type=int,
|
|
60
|
+
help="The max number of historical blocks to export concurrently. default: 60",
|
|
61
|
+
default=60,
|
|
62
|
+
)
|
|
57
63
|
export_parser.add_argument(
|
|
58
64
|
"--first-tx-block",
|
|
59
65
|
type=int,
|
|
@@ -1,34 +1,39 @@
|
|
|
1
|
-
295eace8438df6ec133b__mypyc.cpython-310-darwin.so,sha256=
|
|
1
|
+
295eace8438df6ec133b__mypyc.cpython-310-darwin.so,sha256=Mg15CETpLdvioSLpI_2Y27Vr8aN88ERTnuNdcjLueww,668880
|
|
2
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/RECORD,,
|
|
3
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/WHEEL,sha256=11kMdE9gzbsaQG30fRcsAYxBLEVRsqJo098Y5iL60Xo,136
|
|
4
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/entry_points.txt,sha256=yqoC6X3LU1NA_-oJ6mloEYEPNmS-0hPS9OtEwgIeDGU,66
|
|
5
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/top_level.txt,sha256=CmTLi8Lvs3RulV5ZNdziaDVvF_WRsgRpM17GSMECxrg,64
|
|
6
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/METADATA,sha256=O5Y4EOxRYl5K1a1VJU_lRk_Ak1bEn-shaJLH3whBfB4,779
|
|
2
7
|
eth_portfolio/address.py,sha256=LvBh4Vp2DBC3gQ0WD-TZ6jfe9s6FZbET1krYG9_KMAA,14139
|
|
3
8
|
eth_portfolio/_cache.py,sha256=PYkR-yExjuwd_t7swv4euxL2daJ-VFwh3EMb3MciRJE,4745
|
|
4
|
-
eth_portfolio/_stableish.cpython-310-darwin.so,sha256=
|
|
9
|
+
eth_portfolio/_stableish.cpython-310-darwin.so,sha256=b7mRPA5BymTLxbRyk_ZwDnnSa_xvWFvI3HCeBbuGvSw,50656
|
|
5
10
|
eth_portfolio/_argspec.py,sha256=VzUZkbDkmOSgNUZBGbGblqtxBfDcmBAB89dY2OX0j-U,1595
|
|
6
11
|
eth_portfolio/_submodules.py,sha256=J8ht9bAAvblUXqwOGN7UIOXUPxrTiq7m1RWiB0-ObaE,2190
|
|
7
12
|
eth_portfolio/constants.py,sha256=LS9H2P_Qfcreb6z6NknErxvq6OAtIHbHykXy0spol9E,3659
|
|
8
13
|
eth_portfolio/__init__.py,sha256=0sO4cSJaLYwJfnfVOJRFw7p5_Lzhsr95YuJ1aNQM83A,500
|
|
9
|
-
eth_portfolio/_argspec.cpython-310-darwin.so,sha256=
|
|
14
|
+
eth_portfolio/_argspec.cpython-310-darwin.so,sha256=PYh_QgqlOJCWWwuBJoci4HY3hgQTpPswLVOsu-YQk1Q,50640
|
|
10
15
|
eth_portfolio/_decimal.py,sha256=nuUl6DZHCtrbBN7snwvs4LLaoJ5k7mn3dt4qmlFCkTU,4731
|
|
11
|
-
eth_portfolio/_config.cpython-310-darwin.so,sha256=
|
|
16
|
+
eth_portfolio/_config.cpython-310-darwin.so,sha256=PUIrzOkD8MckgWjlDRSpuAZyoqhlMEdXTKA_sb1ma3o,50640
|
|
12
17
|
eth_portfolio/buckets.py,sha256=QwdqWzW9iWBmRcJ2aktRtL-obvtBnND179krY5ISbhY,6695
|
|
13
|
-
eth_portfolio/_shitcoins.cpython-310-darwin.so,sha256=
|
|
18
|
+
eth_portfolio/_shitcoins.cpython-310-darwin.so,sha256=bQcf2f8iTV-hfrAXQEgIoqRvbailSuqbFUJRFstIZ6A,50656
|
|
14
19
|
eth_portfolio/_decorators.py,sha256=_ZSurUFEIwZRiMFMhLcIXkD-Ey1CqfBqGaE24hLzOuA,2815
|
|
15
20
|
eth_portfolio/_stableish.py,sha256=VTv69Q91AHxbNbbY0LB4PFwKEseHdkE4_6fLPKH1uW0,2021
|
|
16
21
|
eth_portfolio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
22
|
eth_portfolio/_shitcoins.py,sha256=FrqttZzQdheTAabdIK0oVHayqHF0UkLQLEiMz8njQe0,15563
|
|
18
|
-
eth_portfolio/constants.cpython-310-darwin.so,sha256=
|
|
23
|
+
eth_portfolio/constants.cpython-310-darwin.so,sha256=57G9OLdumlm1NIE3p-tS9-EyyfM-DsCjkws0R53b0Yg,50656
|
|
19
24
|
eth_portfolio/_config.py,sha256=mw-OA3M8rUA2hqy5wNt30AZRHkWFgR8K2sJg0o5Baxg,98
|
|
20
25
|
eth_portfolio/_exceptions.py,sha256=bw3IdXhqrWxeFqYLm7pJZqRHKZas_cCg8A5Ih1WQEqQ,2433
|
|
21
26
|
eth_portfolio/portfolio.py,sha256=KljK3FZQMtRQLs1D-HHgCN-DVoZ6ZzEdmclmF3__oz0,24243
|
|
22
27
|
eth_portfolio/_utils.py,sha256=10In2lr0QmfiavyeA4Z8wDTuujRVmjcc0cd-o71JEBg,7742
|
|
23
|
-
eth_portfolio/_loaders/_nonce.cpython-310-darwin.so,sha256=
|
|
28
|
+
eth_portfolio/_loaders/_nonce.cpython-310-darwin.so,sha256=laR5AFr6DggZcYnCkMoZGd_coDia-z1BUiGJbUD0vyA,50656
|
|
24
29
|
eth_portfolio/_loaders/transaction.py,sha256=FEYdoNDCgD6-mqZT9MuyYIEkdhG3iUwyNeMmqjpMGJw,9146
|
|
25
30
|
eth_portfolio/_loaders/__init__.py,sha256=lb45_0ak32Z7N3-Nx1CAoRKiZ1_w-_YGbmSCNuunro8,1702
|
|
26
31
|
eth_portfolio/_loaders/_nonce.py,sha256=cx0EjTAhVU2EudMKSO-7-t1jl3y4dYn6as4XiY6KyS8,6285
|
|
27
32
|
eth_portfolio/_loaders/utils.py,sha256=my3Wg2Ip5gSWuzAWcoLQQEmVmAPhIHbBzQQc0iP1iCA,2258
|
|
28
|
-
eth_portfolio/_loaders/balances.cpython-310-darwin.so,sha256=
|
|
33
|
+
eth_portfolio/_loaders/balances.cpython-310-darwin.so,sha256=AcTykvfQTqp4eYN-Eu_acBBwWInFP8wrsSKwG80eaNU,50656
|
|
29
34
|
eth_portfolio/_loaders/balances.py,sha256=BTWfkJIoSraUMe94Wuj8NPyg5EO0OByIjbXu7j6PZEo,3132
|
|
30
35
|
eth_portfolio/_loaders/token_transfer.py,sha256=MEw95D2iKBYa_9vIatCHJGe7zEJuYUEC8P1mTjjRXlo,8524
|
|
31
|
-
eth_portfolio/_loaders/utils.cpython-310-darwin.so,sha256=
|
|
36
|
+
eth_portfolio/_loaders/utils.cpython-310-darwin.so,sha256=AgvenZzlUhh3Fo_gWOlsqKNrIyUoJGB1uVf5gp8xCI4,50648
|
|
32
37
|
eth_portfolio/_ydb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
38
|
eth_portfolio/_ydb/token_transfers.py,sha256=aKaYSDnJehEcDb_c6YTmcKZxSfZ1jwHMXMOAmE8XH30,5152
|
|
34
39
|
eth_portfolio/_db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -55,27 +60,22 @@ eth_portfolio/protocols/lending/__init__.py,sha256=BZtCOglz6R12wqETlECbCEITdtIT9
|
|
|
55
60
|
eth_portfolio/protocols/lending/README.md,sha256=OhZfsW8e-aD-q02g0maG9QGgW0IietkDRZc7PBakBvc,493
|
|
56
61
|
eth_portfolio/protocols/lending/compound.py,sha256=bqnIevm7NWhk6nMfkMZUKlQuVWr-tXnuntX-4De1YZM,7252
|
|
57
62
|
eth_portfolio/protocols/lending/unit.py,sha256=7oRvIkoKUm8IOnDv59pILSSJWFNNjwr4CR1gg2psW9M,1965
|
|
58
|
-
eth_portfolio_temp-0.2.1.dev0.dist-info/RECORD,,
|
|
59
|
-
eth_portfolio_temp-0.2.1.dev0.dist-info/WHEEL,sha256=11kMdE9gzbsaQG30fRcsAYxBLEVRsqJo098Y5iL60Xo,136
|
|
60
|
-
eth_portfolio_temp-0.2.1.dev0.dist-info/entry_points.txt,sha256=yqoC6X3LU1NA_-oJ6mloEYEPNmS-0hPS9OtEwgIeDGU,66
|
|
61
|
-
eth_portfolio_temp-0.2.1.dev0.dist-info/top_level.txt,sha256=CmTLi8Lvs3RulV5ZNdziaDVvF_WRsgRpM17GSMECxrg,64
|
|
62
|
-
eth_portfolio_temp-0.2.1.dev0.dist-info/METADATA,sha256=5GTbcM4x4Qh82t2ZCdoMIFyvWiUmozo54sjQJxdp4QA,779
|
|
63
63
|
eth_portfolio_scripts/_logging.py,sha256=B_rQMYt_1PhpwCOLBRpkKK6M1ljcF0wAIgqfPIsFUGU,354
|
|
64
64
|
eth_portfolio_scripts/_args.py,sha256=k6J6XkRe1VuN1DiyGuXLCR7NBSvzH5jnVChfzodKuB8,656
|
|
65
65
|
eth_portfolio_scripts/__init__.py,sha256=TC5c4WZdzSHhTIBYuwzrAyzFuGzBmHiDX_g6ghO09jQ,261
|
|
66
|
-
eth_portfolio_scripts/balances.cpython-310-darwin.so,sha256=
|
|
67
|
-
eth_portfolio_scripts/_portfolio.py,sha256=
|
|
66
|
+
eth_portfolio_scripts/balances.cpython-310-darwin.so,sha256=HptGEwxx09pnPt6g1vneh10epa_trnhbbMxDwly8HaA,50656
|
|
67
|
+
eth_portfolio_scripts/_portfolio.py,sha256=36n8DE9OfHvdF0ez12yzWpxI7at6_eo3eno7V_YYu3A,6932
|
|
68
68
|
eth_portfolio_scripts/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
69
|
-
eth_portfolio_scripts/balances.py,sha256=
|
|
70
|
-
eth_portfolio_scripts/main.py,sha256=
|
|
69
|
+
eth_portfolio_scripts/balances.py,sha256=m0w2SbFChvOAnxUIKavgdnaq-DS01KimzDqmFV5apJs,1587
|
|
70
|
+
eth_portfolio_scripts/main.py,sha256=vafXy4JvNWrP203AgCRcSKHMsOSCC7VVj9zBd_BFYZU,3685
|
|
71
71
|
eth_portfolio_scripts/_utils.py,sha256=qyct1Mwf2-1DYj7BUWt2bocUfGKMap1l9sxUfHAjER0,2538
|
|
72
|
-
eth_portfolio_scripts/docker/docker_compose.cpython-310-darwin.so,sha256=
|
|
72
|
+
eth_portfolio_scripts/docker/docker_compose.cpython-310-darwin.so,sha256=_NNG-6SaoHlqUsPv_d7fC4jUROn0IxN5c1OhBWSyAqc,50712
|
|
73
73
|
eth_portfolio_scripts/docker/docker-compose.yaml,sha256=pQ4eesSfMtcb9muDFT5TFDqZty15BoC2Rrd8HY0LS04,1809
|
|
74
74
|
eth_portfolio_scripts/docker/docker_compose.py,sha256=K7_Y_8NeN5s0pb9WUamgfi9OppjpaU0Mlz2nDzewcRA,2226
|
|
75
|
-
eth_portfolio_scripts/docker/check.cpython-310-darwin.so,sha256=
|
|
75
|
+
eth_portfolio_scripts/docker/check.cpython-310-darwin.so,sha256=cJ15MiFW1OLa3yZBM_j68qWotTtZ1x_x_Vg5XSVkYCo,50664
|
|
76
76
|
eth_portfolio_scripts/docker/check.py,sha256=E6_Ar4dr6HfVAgpwoDPcObIolikHKQr8VFkH01sOuIM,1745
|
|
77
77
|
eth_portfolio_scripts/docker/__init__.py,sha256=ZXSIYcjp94c0O9o39BDGWju3YrCMLl4gtov7YChc9Ig,393
|
|
78
|
-
eth_portfolio_scripts/docker/__init__.cpython-310-darwin.so,sha256=
|
|
78
|
+
eth_portfolio_scripts/docker/__init__.cpython-310-darwin.so,sha256=WpVPudoea2bTi1l6XJcajZ78ZPFCIUKF32iawcHHhfI,50656
|
|
79
79
|
eth_portfolio_scripts/docker/.grafana/datasources/datasources.yml,sha256=pBE_0Nh_J7d9Fiy3Xu6vuac_HWCBcFsJJSV-ryjQR1Y,188
|
|
80
80
|
eth_portfolio_scripts/docker/.grafana/dashboards/dashboards.yaml,sha256=MynNDOk69IihoYdd2bL7j8CnRb2Co4gdqW7T4m6AaEU,202
|
|
81
81
|
eth_portfolio_scripts/docker/.grafana/dashboards/Portfolio/Balances.json,sha256=dBmjogLJRuixCHWSs4ROE0_FXb-PUbqWBHEdLoP-1MU,68788
|
|
File without changes
|
{eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{eth_portfolio_temp-0.2.1.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/top_level.txt
RENAMED
|
File without changes
|