eth-portfolio-temp 0.1.8.dev0__cp311-cp311-win32.whl → 0.2.2.dev0__cp311-cp311-win32.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.cp311-win32.pyd +0 -0
- eth_portfolio/_argspec.cp311-win32.pyd +0 -0
- eth_portfolio/_config.cp311-win32.pyd +0 -0
- eth_portfolio/_loaders/_nonce.cp311-win32.pyd +0 -0
- eth_portfolio/_loaders/balances.cp311-win32.pyd +0 -0
- eth_portfolio/_loaders/utils.cp311-win32.pyd +0 -0
- eth_portfolio/_shitcoins.cp311-win32.pyd +0 -0
- eth_portfolio/_shitcoins.py +14 -0
- eth_portfolio/_stableish.cp311-win32.pyd +0 -0
- eth_portfolio/_utils.py +7 -2
- eth_portfolio/constants.cp311-win32.pyd +0 -0
- eth_portfolio_scripts/_portfolio.py +29 -26
- eth_portfolio_scripts/balances.cp311-win32.pyd +0 -0
- eth_portfolio_scripts/balances.py +5 -1
- eth_portfolio_scripts/docker/__init__.cp311-win32.pyd +0 -0
- eth_portfolio_scripts/docker/check.cp311-win32.pyd +0 -0
- eth_portfolio_scripts/docker/docker_compose.cp311-win32.pyd +0 -0
- eth_portfolio_scripts/main.py +6 -0
- {eth_portfolio_temp-0.1.8.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/METADATA +1 -1
- {eth_portfolio_temp-0.1.8.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/RECORD +23 -23
- {eth_portfolio_temp-0.1.8.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/WHEEL +0 -0
- {eth_portfolio_temp-0.1.8.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/entry_points.txt +0 -0
- {eth_portfolio_temp-0.1.8.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
|
eth_portfolio/_shitcoins.py
CHANGED
|
@@ -170,6 +170,19 @@ shitcoins: Final = {
|
|
|
170
170
|
"0xc6a76f7ad66d0e6Ccd1AaAd6e7568c9bd55Dce62",
|
|
171
171
|
"0xB4d4334eB5a251cbE5cC7Afb0Ba26119aCE62281",
|
|
172
172
|
"0xE5c5AE39B98eFd9D3c9E0F2a5457D98fFA4b0b46",
|
|
173
|
+
# Generally looks like shit (symbol ERC20)
|
|
174
|
+
"0xe37be01D1337E77aCB0b4293DDb4D410D80010a7",
|
|
175
|
+
"0x7EeAcC32C81e4D78E9705fBf0b977f5A858Bf0F3",
|
|
176
|
+
"0x90133FF815ade1977EA2f1454dBC1d309EAA33f6",
|
|
177
|
+
"0x82ff6D346E424025B1F07e4C8D6527806e50fCA5",
|
|
178
|
+
"0x7C2bc9F685e1f78e42d236Ff819D89DDA864359d",
|
|
179
|
+
"0x3ea463dD031A384DB68d6fD2f37574248E7ffCfE",
|
|
180
|
+
"0x241b047e810c70AB2bB5C567391E0888c4791cbe",
|
|
181
|
+
"0x47D1b57e5B542808eeEd0C509583Fa12d023f05e",
|
|
182
|
+
"0x8a33B3e6f5C0049Cff6dEca0564F5fbDa0eBe9f9",
|
|
183
|
+
"0x84b2e82Ef534e8bE05276DBf4F9e5474fBeD5E59",
|
|
184
|
+
"0x022b5fE59fc45a29d58a7e45a2567b69b649d623",
|
|
185
|
+
"0x178d20220c22008cc1886d2E689cAeE4A5c3239b",
|
|
173
186
|
# Tagged as well known address scam on Etherscan
|
|
174
187
|
"0x59bed83a385571ffac0FC15A43f0f6f72e66Dccb",
|
|
175
188
|
"0x2Ec109a0ceFEC70661a242a8B54cae8f45630397",
|
|
@@ -228,6 +241,7 @@ shitcoins: Final = {
|
|
|
228
241
|
"0x89D3Ac7C32Aa14bEE6Fa90E041241dc4eEbbDFB3",
|
|
229
242
|
"0x640c6fdAfbDaC9bfCe79943890fdc98f8d39bE3e",
|
|
230
243
|
"0xA04a3a553548090a7b81D2de75B8a08Ee45860e1",
|
|
244
|
+
"0x1b8F28C0d410456FE04b8f421d00d6654F66AbB6",
|
|
231
245
|
# fake DAI
|
|
232
246
|
"0xf84f908E78f9295b53883AD9ACa38F86d513f03F",
|
|
233
247
|
"0x20Dd160716b0387220Eea7B9951bDb51B3728DC4",
|
|
Binary file
|
eth_portfolio/_utils.py
CHANGED
|
@@ -47,10 +47,15 @@ if TYPE_CHECKING:
|
|
|
47
47
|
|
|
48
48
|
logger: Final = logging.getLogger(__name__)
|
|
49
49
|
|
|
50
|
-
NON_STANDARD_ERC721: Final = {
|
|
50
|
+
NON_STANDARD_ERC721: Final[List[ChecksumAddress]] = {
|
|
51
51
|
Network.Mainnet: ["0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB"], # CryptoPunks
|
|
52
52
|
}.get(CHAINID, [])
|
|
53
53
|
|
|
54
|
+
SUPPRESS_ERROR_LOGS: Final[List[ChecksumAddress]] = {
|
|
55
|
+
# put tokens here when you don't expect them to price successfully and do not want to see the associated error logs
|
|
56
|
+
}.get(CHAINID, [])
|
|
57
|
+
"""Put tokens here when you don't expect them to price successfully and do not want to see the associated error logs."""
|
|
58
|
+
|
|
54
59
|
|
|
55
60
|
async def get_buffered_chain_height() -> int:
|
|
56
61
|
"""Returns an int equal to the current height of the chain minus `_config.REORG_BUFFER`."""
|
|
@@ -131,7 +136,7 @@ async def _get_price(token: AddressOrContract, block: Optional[int] = None) -> _
|
|
|
131
136
|
elif isinstance(e.exception, NonStandardERC20):
|
|
132
137
|
# Can't get symbol for handling like other excs
|
|
133
138
|
logger.warning(f"NonStandardERC20 while fetching price for {token}")
|
|
134
|
-
elif isinstance(e.exception, PriceError):
|
|
139
|
+
elif isinstance(e.exception, PriceError) and token not in SUPPRESS_ERROR_LOGS:
|
|
135
140
|
logger.warning(
|
|
136
141
|
f"PriceError while fetching price for {await _describe_err(token, block)}"
|
|
137
142
|
)
|
|
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,22 +1,22 @@
|
|
|
1
|
-
295eace8438df6ec133b__mypyc.cp311-win32.pyd,sha256
|
|
1
|
+
295eace8438df6ec133b__mypyc.cp311-win32.pyd,sha256=-odm6XLUcskTbonOWbdPkHUJrTIvPRPOCemD2-DYtKI,228864
|
|
2
2
|
eth_portfolio/__init__.py,sha256=5GmHYzhUX2gOC4MScgXnqS8x2MawbpWOuWPmqlvCotA,525
|
|
3
|
-
eth_portfolio/_argspec.cp311-win32.pyd,sha256=
|
|
3
|
+
eth_portfolio/_argspec.cp311-win32.pyd,sha256=grtXJjKdQtSPZUgJmkfVGPvAJePevCUUOHY63TLeZco,9216
|
|
4
4
|
eth_portfolio/_argspec.py,sha256=au8ycJ56-7UzbQVzYUOoMX9sToH0QNi2tS1O820xB3A,1637
|
|
5
5
|
eth_portfolio/_cache.py,sha256=H8n8x0Xo-iHQ8Q-NPuk57mmbIG6qDj4Wal6_-tK9Pfs,4866
|
|
6
|
-
eth_portfolio/_config.cp311-win32.pyd,sha256=
|
|
6
|
+
eth_portfolio/_config.cp311-win32.pyd,sha256=EAfFj9wft7v72DtZUwEF44LURuvtqcHWlhz944DJ_XI,9216
|
|
7
7
|
eth_portfolio/_config.py,sha256=BSOvFS4D0oqgVTtBbtW2g2kpL8Mk6xiP0PipfXs_91A,102
|
|
8
8
|
eth_portfolio/_decimal.py,sha256=XhuxnVTAhJF6OILJ1MpbdwkAiy1D5NuS9jRmDRpCSYg,4886
|
|
9
9
|
eth_portfolio/_decorators.py,sha256=AvB-q69MvaFe0Ykh1os6hSewcUujURQ9onqobMaONOM,2899
|
|
10
10
|
eth_portfolio/_exceptions.py,sha256=xb5VmCtBtXy9WXu_1ofoG4j9BJsMQXMVydCJNUulrNY,2500
|
|
11
|
-
eth_portfolio/_shitcoins.cp311-win32.pyd,sha256=
|
|
12
|
-
eth_portfolio/_shitcoins.py,sha256=
|
|
13
|
-
eth_portfolio/_stableish.cp311-win32.pyd,sha256=
|
|
11
|
+
eth_portfolio/_shitcoins.cp311-win32.pyd,sha256=r2UZ2SAVXPvLxjvQXdEaJKSWwZaBuEuUy-sOVkLFgzE,9216
|
|
12
|
+
eth_portfolio/_shitcoins.py,sha256=iKDhRsq0qtSm0nal1zyJp6Ny13UAZEW4C8xU5_lfse0,15866
|
|
13
|
+
eth_portfolio/_stableish.cp311-win32.pyd,sha256=Oau-B8kCixQcmuRBRSCy99iSH1avs2zS3LX1DxDXpLA,9216
|
|
14
14
|
eth_portfolio/_stableish.py,sha256=8pdlYe2YcZ8rTzdCzg-ihRQLPtSFXBNDjtnvuTgPRcQ,2063
|
|
15
15
|
eth_portfolio/_submodules.py,sha256=zne-2YyVFoKHwkLuHx8cdz5lpcwwSDw1edJ9v8G4c1A,2263
|
|
16
|
-
eth_portfolio/_utils.py,sha256=
|
|
16
|
+
eth_portfolio/_utils.py,sha256=PlzMkvrSlR4htROT1sMP11m2A0m-CIcZlXVFfTW272w,7970
|
|
17
17
|
eth_portfolio/address.py,sha256=RrFIWSx6jSITwh16Hqs6W6S9fz1KEaebQEk1vqL3HwI,14536
|
|
18
18
|
eth_portfolio/buckets.py,sha256=pm2-_8VbGKpe6hHM6eysj17JK7Rhngr9-_gpVi-J1uA,6889
|
|
19
|
-
eth_portfolio/constants.cp311-win32.pyd,sha256=
|
|
19
|
+
eth_portfolio/constants.cp311-win32.pyd,sha256=U98c2Z4PDLtmYiwGZJj_TwHpyht5-yzugp49xEtdt4k,9216
|
|
20
20
|
eth_portfolio/constants.py,sha256=rUXWFaCGrrF_qzIdDvVzakQJsLnrGtFNn2EgRbZh8fQ,3741
|
|
21
21
|
eth_portfolio/portfolio.py,sha256=FVx4QwnJH4llTWcYln9UpDkKridHSEAENbTHCBOSq_o,24904
|
|
22
22
|
eth_portfolio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -28,13 +28,13 @@ eth_portfolio/_ledgers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
|
|
|
28
28
|
eth_portfolio/_ledgers/address.py,sha256=ZI4lVsxtXoffDHFBm0pUrSKU42KleBKThNdDHm1Nqtg,33823
|
|
29
29
|
eth_portfolio/_ledgers/portfolio.py,sha256=rAr5S1tksgLPUOK1J1FbIWgvTQNzTqrRp8oukiP2BTo,13427
|
|
30
30
|
eth_portfolio/_loaders/__init__.py,sha256=YrBeRuA48cN2Bg2R2nXiNt1CsUIG_7N6ENIpY6aISPo,1735
|
|
31
|
-
eth_portfolio/_loaders/_nonce.cp311-win32.pyd,sha256=
|
|
31
|
+
eth_portfolio/_loaders/_nonce.cp311-win32.pyd,sha256=W0gAj4UxwjKDCeRNqGgjKcjN8zqOyGjdQsXTOj0ay8Q,9216
|
|
32
32
|
eth_portfolio/_loaders/_nonce.py,sha256=bA-5fZG8ALuADgQGrnoxt6p6j7QEwI6vIGnZRF1Zx7M,6481
|
|
33
|
-
eth_portfolio/_loaders/balances.cp311-win32.pyd,sha256=
|
|
33
|
+
eth_portfolio/_loaders/balances.cp311-win32.pyd,sha256=Y9vxDAV0Xl4a0QdBjoQQWjJt26-mYdYP8WfZ_mVf9ZI,9216
|
|
34
34
|
eth_portfolio/_loaders/balances.py,sha256=_v-x1M3lzDHPt8svHmCcpxZKw0BaGHfZimhkwgphY8A,3226
|
|
35
35
|
eth_portfolio/_loaders/token_transfer.py,sha256=58NoMc28CRSjuxP-_kNmXL7jS1oEFZayTZ9VAKQcVow,8741
|
|
36
36
|
eth_portfolio/_loaders/transaction.py,sha256=WXsiNahcb5jNbXCX2-ceao3Cybfi-7_th8bnw9elmP0,9386
|
|
37
|
-
eth_portfolio/_loaders/utils.cp311-win32.pyd,sha256=
|
|
37
|
+
eth_portfolio/_loaders/utils.cp311-win32.pyd,sha256=yIF7r9uerC1D9P2d5DPtk4CnMSmR4QbeZN2_M6kZLYg,9216
|
|
38
38
|
eth_portfolio/_loaders/utils.py,sha256=_nhPmGq_h_y_JPU9vXvhzqoKAWtgLRhYy_PdJXbyUdw,2326
|
|
39
39
|
eth_portfolio/_ydb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
40
40
|
eth_portfolio/_ydb/token_transfers.py,sha256=HUTeWShcQD4IzocTHmBOreml0jbVttLcaed1fNiJ2qg,5297
|
|
@@ -58,26 +58,26 @@ eth_portfolio/typing/balance/single.py,sha256=NmtWXqCWMIkaoyvfL67Rh0wWurLf55fVaD
|
|
|
58
58
|
eth_portfolio_scripts/__init__.py,sha256=DIBnQmjmhmNL1lO9Lq4QptrZmC7u6_N3p9zRjcZ9vbY,281
|
|
59
59
|
eth_portfolio_scripts/_args.py,sha256=M33vPkja62XEJeCZAqacNSBCqbzse07wepwyBOtkvVo,682
|
|
60
60
|
eth_portfolio_scripts/_logging.py,sha256=EgW8ozQZLAgt_cUgqe5BYZLMVQwB6X-0gq0T-BvqlTY,369
|
|
61
|
-
eth_portfolio_scripts/_portfolio.py,sha256=
|
|
61
|
+
eth_portfolio_scripts/_portfolio.py,sha256=f2o1fNJLsB0Y1Qo-GCIeLaKa3t8H1LwdDjstVX6ByzE,7116
|
|
62
62
|
eth_portfolio_scripts/_utils.py,sha256=7maEWyS5i_Kp7iVaa5puf2ZyefqHDsUOqTDLz-UwIQY,2630
|
|
63
|
-
eth_portfolio_scripts/balances.cp311-win32.pyd,sha256=
|
|
64
|
-
eth_portfolio_scripts/balances.py,sha256=
|
|
65
|
-
eth_portfolio_scripts/main.py,sha256=
|
|
63
|
+
eth_portfolio_scripts/balances.cp311-win32.pyd,sha256=CIlqs54ghRK4PFxdlbAPz6mUYN9u1sqr4ihnUMbPto0,9216
|
|
64
|
+
eth_portfolio_scripts/balances.py,sha256=ApYTA5caujTRAIDxHnYmHk03CqFC9nNpTzJIDWLws8E,1640
|
|
65
|
+
eth_portfolio_scripts/main.py,sha256=upkr0Vc758qti___5kyDsE0zcfwiZju4xvAQsKsu9iw,3804
|
|
66
66
|
eth_portfolio_scripts/py.typed,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
|
|
67
|
-
eth_portfolio_scripts/docker/__init__.cp311-win32.pyd,sha256=
|
|
67
|
+
eth_portfolio_scripts/docker/__init__.cp311-win32.pyd,sha256=SaKVdrTW6JQU338cv3xNfr8n4psp_IcPmP0HLo1g6gU,9216
|
|
68
68
|
eth_portfolio_scripts/docker/__init__.py,sha256=R27uZPLUEK2--fb9IrxrDUk6R5_IVFJSv7s_ia7p5Xk,409
|
|
69
|
-
eth_portfolio_scripts/docker/check.cp311-win32.pyd,sha256
|
|
69
|
+
eth_portfolio_scripts/docker/check.cp311-win32.pyd,sha256=-txm7dsw6CmqgnqNYPauACwhouvred9lGiV-siD0N8g,9216
|
|
70
70
|
eth_portfolio_scripts/docker/check.py,sha256=JFxUxGRSz20EgjKqCLBkCqR4N1ihzO_3ykU3jPzp_UU,1801
|
|
71
71
|
eth_portfolio_scripts/docker/docker-compose.yaml,sha256=P2ZJAQBXRQX-nZ5CoNm__R2KihsA0njoTwJcIWn1_s0,1870
|
|
72
|
-
eth_portfolio_scripts/docker/docker_compose.cp311-win32.pyd,sha256=
|
|
72
|
+
eth_portfolio_scripts/docker/docker_compose.cp311-win32.pyd,sha256=t-IXxxjOWdtRIdB5nRWARCpHwbQ6Mo78TSKaBsO_CgY,9216
|
|
73
73
|
eth_portfolio_scripts/docker/docker_compose.py,sha256=tewgCWZP6g9sVFHbQnGC1au-bTnvuvXMZgTKKgpmeOc,2304
|
|
74
74
|
eth_portfolio_scripts/docker/.grafana/dashboards/dashboards.yaml,sha256=wktTI-OAdF_khhbciZFo4Gt2V9bUjbe7GLqwdzTKf0U,212
|
|
75
75
|
eth_portfolio_scripts/docker/.grafana/dashboards/Portfolio/Balances.json,sha256=XGMV8e4tDak53e9bmymwAB4uqZmAIcU5JlRT3OiwTeU,70750
|
|
76
76
|
eth_portfolio_scripts/docker/.grafana/datasources/datasources.yml,sha256=8PPH_QDhfbRRh3IidskW46rifJejloa1a9I1KCw2FTk,199
|
|
77
77
|
eth_portfolio_scripts/victoria/__init__.py,sha256=R0VvKiAC0e57zZNihcCptVkFO5CBHIbp2trFYuyY01M,2038
|
|
78
78
|
eth_portfolio_scripts/victoria/types.py,sha256=KNq8aIiNXeiDnCKL7xycmouo0YeKI-sbQkIcTymcSYk,745
|
|
79
|
-
eth_portfolio_temp-0.
|
|
80
|
-
eth_portfolio_temp-0.
|
|
81
|
-
eth_portfolio_temp-0.
|
|
82
|
-
eth_portfolio_temp-0.
|
|
83
|
-
eth_portfolio_temp-0.
|
|
79
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/METADATA,sha256=nszEgqdcwJnICtDLL2x8XAJNfNj4Eo3_b_-EqWwJcfI,804
|
|
80
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/WHEEL,sha256=Ri8zddKrjGdgjlj1OpSsvpDnvHfnQhMQWi3E_v2pqng,97
|
|
81
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/entry_points.txt,sha256=yqoC6X3LU1NA_-oJ6mloEYEPNmS-0hPS9OtEwgIeDGU,66
|
|
82
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/top_level.txt,sha256=CmTLi8Lvs3RulV5ZNdziaDVvF_WRsgRpM17GSMECxrg,64
|
|
83
|
+
eth_portfolio_temp-0.2.2.dev0.dist-info/RECORD,,
|
|
File without changes
|
{eth_portfolio_temp-0.1.8.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{eth_portfolio_temp-0.1.8.dev0.dist-info → eth_portfolio_temp-0.2.2.dev0.dist-info}/top_level.txt
RENAMED
|
File without changes
|