eth-portfolio-temp 0.0.29.dev0__cp312-cp312-win_amd64.whl → 0.0.31.dev0__cp312-cp312-win_amd64.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.

Files changed (26) hide show
  1. 295eace8438df6ec133b__mypyc.cp312-win_amd64.pyd +0 -0
  2. eth_portfolio/_argspec.cp312-win_amd64.pyd +0 -0
  3. eth_portfolio/_config.cp312-win_amd64.pyd +0 -0
  4. eth_portfolio/_loaders/_nonce.cp312-win_amd64.pyd +0 -0
  5. eth_portfolio/_loaders/balances.cp312-win_amd64.pyd +0 -0
  6. eth_portfolio/_loaders/utils.cp312-win_amd64.pyd +0 -0
  7. eth_portfolio/_shitcoins.cp312-win_amd64.pyd +0 -0
  8. eth_portfolio/_shitcoins.py +4 -0
  9. eth_portfolio/_stableish.cp312-win_amd64.pyd +0 -0
  10. eth_portfolio/_stableish.py +36 -0
  11. eth_portfolio/buckets.py +24 -20
  12. eth_portfolio/constants.cp312-win_amd64.pyd +0 -0
  13. eth_portfolio/constants.py +1 -0
  14. eth_portfolio_scripts/balances.cp312-win_amd64.pyd +0 -0
  15. eth_portfolio_scripts/docker/.grafana/dashboards/{portfolio → Portfolio}/Balances.json +23 -23
  16. eth_portfolio_scripts/docker/.grafana/dashboards/dashboards.yaml +2 -2
  17. eth_portfolio_scripts/docker/__init__.cp312-win_amd64.pyd +0 -0
  18. eth_portfolio_scripts/docker/check.cp312-win_amd64.pyd +0 -0
  19. eth_portfolio_scripts/docker/docker-compose.yaml +0 -4
  20. eth_portfolio_scripts/docker/docker_compose.cp312-win_amd64.pyd +0 -0
  21. {eth_portfolio_temp-0.0.29.dev0.dist-info → eth_portfolio_temp-0.0.31.dev0.dist-info}/METADATA +1 -1
  22. {eth_portfolio_temp-0.0.29.dev0.dist-info → eth_portfolio_temp-0.0.31.dev0.dist-info}/RECORD +25 -23
  23. {eth_portfolio_temp-0.0.29.dev0.dist-info → eth_portfolio_temp-0.0.31.dev0.dist-info}/top_level.txt +1 -1
  24. bb56d21cd75f4f6de8f2__mypyc.cp312-win_amd64.pyd +0 -0
  25. {eth_portfolio_temp-0.0.29.dev0.dist-info → eth_portfolio_temp-0.0.31.dev0.dist-info}/WHEEL +0 -0
  26. {eth_portfolio_temp-0.0.29.dev0.dist-info → eth_portfolio_temp-0.0.31.dev0.dist-info}/entry_points.txt +0 -0
Binary file
Binary file
@@ -89,6 +89,8 @@ shitcoins: Final = {
89
89
  "0xF01f7A348681776c1FC9A066c6973882B693cdC6",
90
90
  "0x0e1CD6d2715432e4DBedFE969b0Eb2867FF61d5b",
91
91
  # Generally looks like shit
92
+ "0xDFC01a7956C0d151ae197274B974fA7527EbAFB9",
93
+ "0xE256CF1C7caEff4383DabafEe6Dd53910F97213D",
92
94
  "0x7CD6143B8781dC7e0667e50DB02Eb6539799722F",
93
95
  "0x174Cd3359C6a4E6B64D2995Da4E2E4631379526E",
94
96
  "0x85E199607eb8aEef775Ae6424b42d20616267852",
@@ -222,12 +224,14 @@ shitcoins: Final = {
222
224
  # fake USDT
223
225
  "0x9257Cf49802E00048A30a6429e9c4d86210F4253",
224
226
  "0x6b1b80b4b3228060EA21C292a3b9c576691Ca6cC",
227
+ "0xfCDFf724385Dcb47f2E62f7F2E383a7822Ed9718",
225
228
  # fake ETH
226
229
  "0x225795bb6D20773a4A34c682Ae8457D00C80F955",
227
230
  "0x25741E94782d3EaA7fb0A02D78256bf065AEC3B9",
228
231
  # fake AERO
229
232
  "0x3C78E3391C47fB9310BDB9085955934E1622442f",
230
233
  "0x1f186De364a56e741Fcb188d37a393d409D08AeA",
234
+ "0xDd62542e9Be4390147f8c1f5b417f50ec4F834B7",
231
235
  ],
232
236
  Network.Fantom: [
233
237
  # generally looks like shit
@@ -0,0 +1,36 @@
1
+ from collections import defaultdict
2
+ from typing import DefaultDict, Final, Set
3
+
4
+ from eth_typing import ChecksumAddress
5
+ from y import Network, convert
6
+
7
+ stableish: Final = {
8
+ Network.Mainnet: [
9
+ "0x674C6Ad92Fd080e4004b2312b45f796a192D27a0", # USDN
10
+ "0x1456688345527bE1f37E9e627DA0837D6f08C925", # USDP
11
+ "0x865377367054516e17014CcdED1e7d814EDC9ce4", # DOLA
12
+ "0x5f98805A4E8be255a32880FDeC7F6728C6568bA0", # LUSD
13
+ "0x4Fabb145d64652a948d72533023f6E7A623C7C53", # BUSD
14
+ "0x853d955aCEf822Db058eb8505911ED77F175b99e", # FRAX
15
+ "0x5BC25f649fc4e26069dDF4cF4010F9f706c23831", # DUSD
16
+ "0x99D8a9C45b2ecA8864373A26D1459e3Dff1e17F3", # MIM
17
+ "0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd", # GUSD
18
+ "0x03ab458634910AaD20eF5f1C8ee96F1D6ac54919", # RAI
19
+ "0x2A8e1E676Ec238d8A992307B495b45B3fEAa5e86", # OUSD
20
+ "0x57Ab1ec28D129707052df4dF418D58a2D46d5f51", # sUSD
21
+ "0xe2f2a5C287993345a840Db3B0845fbC70f5935a5", # mUSD
22
+ "0x5B3b5DF2BF2B6543f78e053bD91C4Bdd820929f1", # USDM
23
+ "0xdF574c24545E5FfEcb9a659c229253D4111d87e1", # HUSD
24
+ "0xa47c8bf37f92aBed4A126BDA807A7b7498661acD", # UST
25
+ ],
26
+ }
27
+
28
+ STABLEISH_COINS: DefaultDict[int, Set[ChecksumAddress]] = defaultdict(set)
29
+ """
30
+ A dictionary that contains, for each chain, a set of 'stable-ish' coins that are considered stable by the wider market but not by ypriceamgic.
31
+
32
+ These coins, and wrapper tokens that contain them, will be considered stablecoins on all dashboards.
33
+ """
34
+
35
+ for chain, tokens in stableish.items():
36
+ STABLEISH_COINS[chain].update(convert.to_address(token) for token in tokens)
eth_portfolio/buckets.py CHANGED
@@ -3,19 +3,23 @@ from typing import Optional, Set
3
3
 
4
4
  from a_sync import igather
5
5
  from async_lru import alru_cache
6
- from brownie import chain
7
- from y.constants import STABLECOINS, WRAPPED_GAS_COIN
6
+ from eth_typing import ChecksumAddress
7
+ from y.constants import CHAINID, STABLECOINS, WRAPPED_GAS_COIN
8
+ from y.convert import to_address
8
9
  from y.datatypes import Address, AnyAddressType
10
+ from y.exceptions import ContractNotVerified
9
11
  from y.prices.lending.aave import aave
10
12
  from y.prices.lending.compound import CToken, compound
11
13
  from y.prices.stable_swap.curve import curve
12
14
  from y.prices.yearn import YearnInspiredVault, is_yearn_vault
13
15
 
14
16
  from eth_portfolio.constants import BTC_LIKE, ETH_LIKE, INTL_STABLECOINS
17
+ from eth_portfolio._stableish import STABLEISH_COINS
15
18
 
16
19
  logger = logging.getLogger(__name__)
17
20
 
18
- OTHER_LONG_TERM_ASSETS: Set[Address] = {}.get(chain.id, set())
21
+ STABLEISH = STABLEISH_COINS[CHAINID]
22
+ OTHER_LONG_TERM_ASSETS: Set[Address] = {}.get(CHAINID, set())
19
23
 
20
24
 
21
25
  async def get_token_bucket(token: AnyAddressType) -> str:
@@ -53,27 +57,25 @@ async def get_token_bucket(token: AnyAddressType) -> str:
53
57
  - :func:`_unwrap_token`
54
58
  - :func:`_is_stable`
55
59
  """
56
- token = str(token)
60
+ token_address = to_address(token)
57
61
  try:
58
- token = str(await _unwrap_token(token))
59
- except ValueError as e:
60
- if str(e).startswith("Source for") and str(e).endswith("has not been verified"):
61
- return "Other short term assets"
62
- raise
62
+ token_address = await _unwrap_token(token_address)
63
+ except ContractNotVerified as e:
64
+ return "Other short term assets"
63
65
 
64
- if _is_stable(token):
66
+ if _is_stable(token_address):
65
67
  return "Cash & cash equivalents"
66
- if token in ETH_LIKE:
68
+ if token_address in ETH_LIKE:
67
69
  return "ETH"
68
- if token in BTC_LIKE:
70
+ if token_address in BTC_LIKE:
69
71
  return "BTC"
70
- if token in OTHER_LONG_TERM_ASSETS:
72
+ if token_address in OTHER_LONG_TERM_ASSETS:
71
73
  return "Other long term assets"
72
74
  return "Other short term assets"
73
75
 
74
76
 
75
77
  @alru_cache(maxsize=None)
76
- async def _unwrap_token(token) -> str:
78
+ async def _unwrap_token(token) -> ChecksumAddress:
77
79
  """
78
80
  Recursively unwrap a token to its underlying asset.
79
81
 
@@ -158,18 +160,19 @@ def _pool_bucket(pool_tokens: set) -> Optional[str]:
158
160
  return list(INTL_STABLECOINS)[0] if pool_tokens < INTL_STABLECOINS else None
159
161
 
160
162
 
161
- def _is_stable(token: Address) -> bool:
163
+ def _is_stable(token: ChecksumAddress) -> bool:
162
164
  """
163
- Check if a token is a stablecoin.
165
+ Check if a token is a stablecoin or stable-ish coin.
164
166
 
165
- This function checks if a given token is present in the :data:`STABLECOINS` or
166
- :data:`INTL_STABLECOINS` sets, indicating that it is a stablecoin.
167
+ This function checks if a given token is present in the :data:`STABLECOINS`,
168
+ :data:`INTL_STABLECOINS`, or :data:`STABLEISH_COINS` sets, indicating that it is
169
+ a stablecoin or considered stable by the wider market.
167
170
 
168
171
  Args:
169
172
  token: The address of the token to check.
170
173
 
171
174
  Example:
172
- Check if a token is a stablecoin:
175
+ Check if a token is a stablecoin or stable-ish coin:
173
176
 
174
177
  >>> _is_stable("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48")
175
178
  True
@@ -177,5 +180,6 @@ def _is_stable(token: Address) -> bool:
177
180
  See Also:
178
181
  - :data:`STABLECOINS`
179
182
  - :data:`INTL_STABLECOINS`
183
+ - :data:`STABLEISH_COINS`
180
184
  """
181
- return token in STABLECOINS or token in INTL_STABLECOINS
185
+ return token in STABLECOINS or token in INTL_STABLECOINS or token in STABLEISH
Binary file
@@ -52,6 +52,7 @@ INTL_STABLECOINS: Final = {
52
52
  "0xC581b735A1688071A1746c968e0798D642EDE491", # EURT
53
53
  "0xdB25f211AB05b1c97D595516F45794528a807ad8", # EURS
54
54
  "0x96E61422b6A9bA0e068B6c5ADd4fFaBC6a4aae27", # ibEUR
55
+ "0x9fcf418B971134625CdF38448B949C8640971671", # EURN
55
56
  "0x269895a3dF4D73b077Fc823dD6dA1B95f72Aaf9B", # sKRW
56
57
  "0x3F1B0278A9ee595635B61817630cC19DE792f506", # sAUD
57
58
  "0x97fe22E7341a0Cd8Db6F6C021A24Dc8f4DAD855F", # sGBP
@@ -103,7 +103,7 @@
103
103
  {
104
104
  "id": "calculateField",
105
105
  "options": {
106
- "alias": "yfi price",
106
+ "alias": "YFI Price",
107
107
  "binary": {
108
108
  "left": "YFI Value",
109
109
  "operator": "/",
@@ -125,7 +125,7 @@
125
125
  "left": "yvYFI Value",
126
126
  "operator": "/",
127
127
  "reducer": "sum",
128
- "right": "yfi price"
128
+ "right": "YFI Price"
129
129
  },
130
130
  "mode": "binary",
131
131
  "reduce": {
@@ -653,15 +653,15 @@
653
653
  "targets": [
654
654
  {
655
655
  "exemplar": true,
656
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket!=\"YFI\", bucket!=\"Other long term assets\"}) by (bucket)",
656
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket!=\"YFI\", bucket!=\"Other long term assets\"}) by (Bucket)",
657
657
  "hide": false,
658
658
  "interval": "",
659
- "legendFormat": "{{bucket}}",
659
+ "legendFormat": "{{Bucket}}",
660
660
  "refId": "A"
661
661
  },
662
662
  {
663
663
  "exemplar": true,
664
- "expr": "sum(my_portfolio_assets{param=\"usd value\",token=\"YFI\"}) by (bucket)",
664
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",token=\"YFI\"}) by (Bucket)",
665
665
  "hide": true,
666
666
  "interval": "",
667
667
  "legendFormat": "",
@@ -746,9 +746,9 @@
746
746
  "targets": [
747
747
  {
748
748
  "exemplar": true,
749
- "expr": "sum(my_portfolio_debt{param=\"usd value\"}) by (token)",
749
+ "expr": "sum(my_portfolio_debt{param=\"usd value\"}) by (Token)",
750
750
  "interval": "",
751
- "legendFormat": "{{token}}",
751
+ "legendFormat": "{{Token}}",
752
752
  "refId": "A"
753
753
  }
754
754
  ],
@@ -1048,10 +1048,10 @@
1048
1048
  "targets": [
1049
1049
  {
1050
1050
  "exemplar": true,
1051
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Cash & cash equivalents\"}) by (token)",
1051
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Cash & cash equivalents\"}) by (Token)",
1052
1052
  "hide": false,
1053
1053
  "interval": "",
1054
- "legendFormat": "{{token}}",
1054
+ "legendFormat": "{{Token}}",
1055
1055
  "refId": "A"
1056
1056
  }
1057
1057
  ],
@@ -1168,10 +1168,10 @@
1168
1168
  "targets": [
1169
1169
  {
1170
1170
  "exemplar": true,
1171
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"ETH\"}) by (token)",
1171
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"ETH\"}) by (Token)",
1172
1172
  "hide": false,
1173
1173
  "interval": "",
1174
- "legendFormat": "{{token}}",
1174
+ "legendFormat": "{{Token}}",
1175
1175
  "refId": "A"
1176
1176
  }
1177
1177
  ],
@@ -1288,10 +1288,10 @@
1288
1288
  "targets": [
1289
1289
  {
1290
1290
  "exemplar": true,
1291
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"BTC\"}) by (token)",
1291
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"BTC\"}) by (Token)",
1292
1292
  "hide": false,
1293
1293
  "interval": "",
1294
- "legendFormat": "{{token}}",
1294
+ "legendFormat": "{{Token}}",
1295
1295
  "refId": "A"
1296
1296
  }
1297
1297
  ],
@@ -1408,10 +1408,10 @@
1408
1408
  "targets": [
1409
1409
  {
1410
1410
  "exemplar": true,
1411
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Other short term assets\", token=\"yvCurve-sdCRVv2-f\", token=\"OGV\", token=\"NEWO\", token=\"yvCurve-pUSD-FRAXBP-f\", token=\"yvCurve-yETH-f\", token=\"GUSD\"}) by (token)",
1411
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Other short term assets\", token=\"yvCurve-sdCRVv2-f\", token=\"OGV\", token=\"NEWO\", token=\"yvCurve-pUSD-FRAXBP-f\", token=\"yvCurve-yETH-f\", token=\"GUSD\"}) by (Token)",
1412
1412
  "hide": false,
1413
1413
  "interval": "",
1414
- "legendFormat": "{{token}}",
1414
+ "legendFormat": "{{Token}}",
1415
1415
  "refId": "A"
1416
1416
  }
1417
1417
  ],
@@ -1528,10 +1528,10 @@
1528
1528
  "targets": [
1529
1529
  {
1530
1530
  "exemplar": true,
1531
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Cash & cash equivalents\"}) by (token,wallet)",
1531
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Cash & cash equivalents\"}) by (Token,Wallet)",
1532
1532
  "hide": false,
1533
1533
  "interval": "",
1534
- "legendFormat": "{{token}} | {{wallet}}",
1534
+ "legendFormat": "{{Token}} | {{Wallet}}",
1535
1535
  "refId": "A"
1536
1536
  }
1537
1537
  ],
@@ -1648,10 +1648,10 @@
1648
1648
  "targets": [
1649
1649
  {
1650
1650
  "exemplar": true,
1651
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"ETH\"}) by (token,wallet)",
1651
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"ETH\"}) by (Token,Wallet)",
1652
1652
  "hide": false,
1653
1653
  "interval": "",
1654
- "legendFormat": "{{token}} | {{wallet}}",
1654
+ "legendFormat": "{{Token}} | {{Wallet}}",
1655
1655
  "refId": "A"
1656
1656
  }
1657
1657
  ],
@@ -1768,10 +1768,10 @@
1768
1768
  "targets": [
1769
1769
  {
1770
1770
  "exemplar": true,
1771
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"BTC\"}) by (token, wallet)",
1771
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"BTC\"}) by (Token,Wallet)",
1772
1772
  "hide": false,
1773
1773
  "interval": "",
1774
- "legendFormat": "{{token}} | {{wallet}}",
1774
+ "legendFormat": "{{Token}} | {{Wallet}}",
1775
1775
  "refId": "A"
1776
1776
  }
1777
1777
  ],
@@ -1888,10 +1888,10 @@
1888
1888
  "targets": [
1889
1889
  {
1890
1890
  "exemplar": true,
1891
- "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Other short term assets\", token=\"yvCurve-sdCRVv2-f\", token=\"OGV\", token=\"NEWO\", token=\"yvCurve-pUSD-FRAXBP-f\", token=\"yvCurve-yETH-f\", token=\"GUSD\"}) by (token, wallet)",
1891
+ "expr": "sum(my_portfolio_assets{param=\"usd value\",bucket=\"Other short term assets\", token=\"yvCurve-sdCRVv2-f\", token=\"OGV\", token=\"NEWO\", token=\"yvCurve-pUSD-FRAXBP-f\", token=\"yvCurve-yETH-f\", token=\"GUSD\"}) by (Token,Wallet)",
1892
1892
  "hide": false,
1893
1893
  "interval": "",
1894
- "legendFormat": "{{token}} | {{wallet}}",
1894
+ "legendFormat": "{{Token}} | {{Wallet}}",
1895
1895
  "refId": "A"
1896
1896
  }
1897
1897
  ],
@@ -2,9 +2,9 @@ apiVersion: 1
2
2
 
3
3
  providers:
4
4
  - name: 'Portfolio dashboards'
5
- folder: 'portfolio'
5
+ folder: 'Portfolio'
6
6
  type: file
7
7
  disableDeletion: true
8
8
  editable: false
9
9
  options:
10
- path: /etc/grafana/provisioning/dashboards/portfolio
10
+ path: /etc/grafana/provisioning/dashboards/Portfolio
@@ -1,9 +1,6 @@
1
1
  networks:
2
2
  eth_portfolio:
3
3
 
4
- volumes:
5
- grafana_data: {}
6
-
7
4
  services:
8
5
  grafana:
9
6
  image: grafana/grafana:10.2.0
@@ -22,7 +19,6 @@ services:
22
19
  #command: >
23
20
  # sh -c "grafana-cli plugins install frser-sqlite-datasource && /run.sh"
24
21
  volumes:
25
- - grafana_data:/var/lib/grafana
26
22
  - ./.grafana/:/etc/grafana/provisioning/
27
23
  networks:
28
24
  - eth_portfolio
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: eth_portfolio_temp
3
- Version: 0.0.29.dev0
3
+ Version: 0.0.31.dev0
4
4
  Summary: eth-portfolio makes it easy to analyze your portfolio.
5
5
  Home-page: https://github.com/BobTheBuidler/eth-portfolio
6
6
  Author: BobTheBuidler
@@ -1,21 +1,23 @@
1
- bb56d21cd75f4f6de8f2__mypyc.cp312-win_amd64.pyd,sha256=w0oUvnvKU_9-TMowsu7-egKuIxuk822YM76GmjYPyHc,294400
1
+ 295eace8438df6ec133b__mypyc.cp312-win_amd64.pyd,sha256=4M5lH-35I2jw_Myw1ofGDYqkWOhbYz-EdLnV_RG7azg,300544
2
2
  eth_portfolio/__init__.py,sha256=5GmHYzhUX2gOC4MScgXnqS8x2MawbpWOuWPmqlvCotA,525
3
- eth_portfolio/_argspec.cp312-win_amd64.pyd,sha256=AldCTP2OQZ-GVRozFmZdh_j7aUTFC1AmA8wfWZbigR0,10752
3
+ eth_portfolio/_argspec.cp312-win_amd64.pyd,sha256=wgSErMn1YaxH71GvqIb8cXcdFM3SYEJnu9OeQhweojI,10752
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.cp312-win_amd64.pyd,sha256=zgMJ0DxBL1l8D9Y_l0CU3yT_-ZfIcOQlJGqtq0PmMXc,10752
6
+ eth_portfolio/_config.cp312-win_amd64.pyd,sha256=CniFi9gKay34TVjnKmZ0wb37TWhxW0OqEOZ9gxzHMbw,10752
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.cp312-win_amd64.pyd,sha256=kNxxMYuFV_ND-0oAya6lg7Z6j8B72OsHdUppTSkWpHo,10752
12
- eth_portfolio/_shitcoins.py,sha256=ZjJP4npptjjaIvK1npHB_P2jofUjQRkQYmUZ-0FpI2E,14054
11
+ eth_portfolio/_shitcoins.cp312-win_amd64.pyd,sha256=1aI3BfVliLvuNnG-YtXl4Hxen1BvbmvcSGPingnjlyc,10752
12
+ eth_portfolio/_shitcoins.py,sha256=Kx7OpfbV5SytD0EQdJLjd4LBlAIRcrsCH2kf-xmUZgA,14274
13
+ eth_portfolio/_stableish.cp312-win_amd64.pyd,sha256=8dUomFpAEjCy4xXh4gyc0-3qplWX65MzR2uRcVzqbuM,10752
14
+ eth_portfolio/_stableish.py,sha256=lcRQHwDztfFHKV0CbfSLBoR3AYaBjKapnXytx944pU0,1680
13
15
  eth_portfolio/_submodules.py,sha256=zne-2YyVFoKHwkLuHx8cdz5lpcwwSDw1edJ9v8G4c1A,2263
14
16
  eth_portfolio/_utils.py,sha256=LQtg467tXBCQh7sGFepOe440XgTOu9bqJsY9qSg-Xs8,7583
15
17
  eth_portfolio/address.py,sha256=m8BE6Tk12mXDGYD_X-ctLGcWszwd0MC9uNP32OVxLJc,14487
16
- eth_portfolio/buckets.py,sha256=_75U2su7rKn2Rx6FVQmYGqoovJaXSQSWFGSxtWu0R98,6074
17
- eth_portfolio/constants.cp312-win_amd64.pyd,sha256=_Cd_CKzwlk0fpM2WwZvSvWPAn7KayT-_V8wMI3CTJL4,10752
18
- eth_portfolio/constants.py,sha256=akMKnQYnTCPTmwzb1orPRMP8bY4vK0T87MCRH8VdlFE,2461
18
+ eth_portfolio/buckets.py,sha256=B_-WjIcHyDBgNlpJdyhHnOscegUp2K6bUrPFbAQ92uU,6412
19
+ eth_portfolio/constants.cp312-win_amd64.pyd,sha256=fMIqbcTnEOGpj1A0sZxOB8W5Cg4LnES2BPkfXPKK3SU,10752
20
+ eth_portfolio/constants.py,sha256=fSSVRyWVy4JjE9-ZVwpFXnGmeCg_BxZGjd5F6Flv5Zo,2524
19
21
  eth_portfolio/portfolio.py,sha256=FVx4QwnJH4llTWcYln9UpDkKridHSEAENbTHCBOSq_o,24904
20
22
  eth_portfolio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
23
  eth_portfolio/_db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -26,13 +28,13 @@ eth_portfolio/_ledgers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
26
28
  eth_portfolio/_ledgers/address.py,sha256=ZI4lVsxtXoffDHFBm0pUrSKU42KleBKThNdDHm1Nqtg,33823
27
29
  eth_portfolio/_ledgers/portfolio.py,sha256=rAr5S1tksgLPUOK1J1FbIWgvTQNzTqrRp8oukiP2BTo,13427
28
30
  eth_portfolio/_loaders/__init__.py,sha256=YrBeRuA48cN2Bg2R2nXiNt1CsUIG_7N6ENIpY6aISPo,1735
29
- eth_portfolio/_loaders/_nonce.cp312-win_amd64.pyd,sha256=YxQB5oidcKeE7dPGgkOTjc-QbppPr8rdoWMVDbcG1NE,10752
31
+ eth_portfolio/_loaders/_nonce.cp312-win_amd64.pyd,sha256=pOfq8YQFyNLyy1uZ4yy1RUlIOIdX5dJ0cGDvbaUUENE,10752
30
32
  eth_portfolio/_loaders/_nonce.py,sha256=S9x7SA-VgRD-KJMgbKS-X2Cq-51kxLNyeWa1LjeAxHk,6435
31
- eth_portfolio/_loaders/balances.cp312-win_amd64.pyd,sha256=wOzl6tjTQ8n3HTzImKAYG9A1D6bn5zH7pPJomUoyBW0,10752
33
+ eth_portfolio/_loaders/balances.cp312-win_amd64.pyd,sha256=uPMYTEb8kzWdFD3-GVXFj_4PLGYiNEbAarJBujzGu0Q,10752
32
34
  eth_portfolio/_loaders/balances.py,sha256=_v-x1M3lzDHPt8svHmCcpxZKw0BaGHfZimhkwgphY8A,3226
33
35
  eth_portfolio/_loaders/token_transfer.py,sha256=58NoMc28CRSjuxP-_kNmXL7jS1oEFZayTZ9VAKQcVow,8741
34
36
  eth_portfolio/_loaders/transaction.py,sha256=WXsiNahcb5jNbXCX2-ceao3Cybfi-7_th8bnw9elmP0,9386
35
- eth_portfolio/_loaders/utils.cp312-win_amd64.pyd,sha256=B4ik3Q7CGodZgv9e-L8eoGt9Nv13hBWCtyPI5TDTy5E,10752
37
+ eth_portfolio/_loaders/utils.cp312-win_amd64.pyd,sha256=GNL3-NcVCp2w-d_Ix4qfBOTMWykbbixZ0ksOcqxLK7I,10752
36
38
  eth_portfolio/_loaders/utils.py,sha256=_nhPmGq_h_y_JPU9vXvhzqoKAWtgLRhYy_PdJXbyUdw,2326
37
39
  eth_portfolio/_ydb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
40
  eth_portfolio/_ydb/token_transfers.py,sha256=ECxnrYSIZZ2ZbOBLZnZ8DIxOsM8fKdyt8ztMPZZdYxQ,5139
@@ -58,24 +60,24 @@ eth_portfolio_scripts/_args.py,sha256=M33vPkja62XEJeCZAqacNSBCqbzse07wepwyBOtkvV
58
60
  eth_portfolio_scripts/_logging.py,sha256=EgW8ozQZLAgt_cUgqe5BYZLMVQwB6X-0gq0T-BvqlTY,369
59
61
  eth_portfolio_scripts/_portfolio.py,sha256=LIFug8lsfnbr67-93DWWD4Mj0QMvbqlgivY69uOAKbU,6821
60
62
  eth_portfolio_scripts/_utils.py,sha256=7maEWyS5i_Kp7iVaa5puf2ZyefqHDsUOqTDLz-UwIQY,2630
61
- eth_portfolio_scripts/balances.cp312-win_amd64.pyd,sha256=ExBAnbq-3qFr0p5gpc0EqUDTzrT1p53w6AhlRRxklE8,10752
63
+ eth_portfolio_scripts/balances.cp312-win_amd64.pyd,sha256=apoOeoFhooTMCI4u1rzehRsBiuf-8I-PUztawJtPrmY,10752
62
64
  eth_portfolio_scripts/balances.py,sha256=reli3W6K9-8F8I_n0tIwS9SuUykpPJnbiMsnJgY9N_w,1573
63
65
  eth_portfolio_scripts/main.py,sha256=vSYt6Ajq2wZ1ErSoEdLaLQmfpZnFcN6S-kSYaKQ0KEY,3633
64
66
  eth_portfolio_scripts/py.typed,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
65
- eth_portfolio_scripts/docker/__init__.cp312-win_amd64.pyd,sha256=pjf6Jt7_cjCFK8G7TUWosJdEAWrENZFhKRFB64Ys0q8,10752
67
+ eth_portfolio_scripts/docker/__init__.cp312-win_amd64.pyd,sha256=evbPoeCkcmSgXvKLxznAllb17An7DB9kxpcUjBQ6rRY,10752
66
68
  eth_portfolio_scripts/docker/__init__.py,sha256=R27uZPLUEK2--fb9IrxrDUk6R5_IVFJSv7s_ia7p5Xk,409
67
- eth_portfolio_scripts/docker/check.cp312-win_amd64.pyd,sha256=jE1EDnzTFYqUMMBC4nhO219x9kdZeF7VWAsC1Ik-mR4,10752
69
+ eth_portfolio_scripts/docker/check.cp312-win_amd64.pyd,sha256=8v7f9NuRVS8hwKmup1Iie8PFrJueQC-rDNlco0q4HUY,10752
68
70
  eth_portfolio_scripts/docker/check.py,sha256=JFxUxGRSz20EgjKqCLBkCqR4N1ihzO_3ykU3jPzp_UU,1801
69
- eth_portfolio_scripts/docker/docker-compose.yaml,sha256=ntdCvEJtYwpiDlt1xsHGKhuA488XJOziQVeIMPBiMR0,1940
70
- eth_portfolio_scripts/docker/docker_compose.cp312-win_amd64.pyd,sha256=aprZFk7zR2NgvIJBxftcG7pPW6GSXOjVyHwRdcALBoI,10752
71
+ eth_portfolio_scripts/docker/docker-compose.yaml,sha256=vx1HGuqBoB7Tpu2-J322oMtMWW46O7knDGtys99mYb4,1869
72
+ eth_portfolio_scripts/docker/docker_compose.cp312-win_amd64.pyd,sha256=F5SCf4j1TtF_1n9SrHUbUQ1GHBegTd8GoM6DUhPjuw4,10752
71
73
  eth_portfolio_scripts/docker/docker_compose.py,sha256=tewgCWZP6g9sVFHbQnGC1au-bTnvuvXMZgTKKgpmeOc,2304
72
- eth_portfolio_scripts/docker/.grafana/dashboards/dashboards.yaml,sha256=de_p2tgIaQr802iOle8xb6QTmpR6aen-yF0U7ANKRoU,212
73
- eth_portfolio_scripts/docker/.grafana/dashboards/portfolio/Balances.json,sha256=6Duh3LNaf9s01nzuQ8sNa-KRvkQjNbMItRxDg_qojxM,70752
74
+ eth_portfolio_scripts/docker/.grafana/dashboards/dashboards.yaml,sha256=wktTI-OAdF_khhbciZFo4Gt2V9bUjbe7GLqwdzTKf0U,212
75
+ eth_portfolio_scripts/docker/.grafana/dashboards/Portfolio/Balances.json,sha256=XGMV8e4tDak53e9bmymwAB4uqZmAIcU5JlRT3OiwTeU,70750
74
76
  eth_portfolio_scripts/docker/.grafana/datasources/datasources.yml,sha256=8PPH_QDhfbRRh3IidskW46rifJejloa1a9I1KCw2FTk,199
75
77
  eth_portfolio_scripts/victoria/__init__.py,sha256=LcTK1HO42JEWMJ20NVIneKCmXtXPYEhLxsvvC9HBoVs,1992
76
78
  eth_portfolio_scripts/victoria/types.py,sha256=KNq8aIiNXeiDnCKL7xycmouo0YeKI-sbQkIcTymcSYk,745
77
- eth_portfolio_temp-0.0.29.dev0.dist-info/METADATA,sha256=yeBwocUJcymFGYgwhtHryem0cFsqdf_fDjP2f_dbBr0,800
78
- eth_portfolio_temp-0.0.29.dev0.dist-info/WHEEL,sha256=8UP9x9puWI0P1V_d7K2oMTBqfeLNm21CTzZ_Ptr0NXU,101
79
- eth_portfolio_temp-0.0.29.dev0.dist-info/entry_points.txt,sha256=yqoC6X3LU1NA_-oJ6mloEYEPNmS-0hPS9OtEwgIeDGU,66
80
- eth_portfolio_temp-0.0.29.dev0.dist-info/top_level.txt,sha256=RFDADjpLoCyoOexqChHlvRDt5rzZtjEscRPIISyJCRc,64
81
- eth_portfolio_temp-0.0.29.dev0.dist-info/RECORD,,
79
+ eth_portfolio_temp-0.0.31.dev0.dist-info/METADATA,sha256=1MRQ739fislZAsPqj-dZKGB1WZzUg3FnqlsIlXzHAxs,800
80
+ eth_portfolio_temp-0.0.31.dev0.dist-info/WHEEL,sha256=8UP9x9puWI0P1V_d7K2oMTBqfeLNm21CTzZ_Ptr0NXU,101
81
+ eth_portfolio_temp-0.0.31.dev0.dist-info/entry_points.txt,sha256=yqoC6X3LU1NA_-oJ6mloEYEPNmS-0hPS9OtEwgIeDGU,66
82
+ eth_portfolio_temp-0.0.31.dev0.dist-info/top_level.txt,sha256=CmTLi8Lvs3RulV5ZNdziaDVvF_WRsgRpM17GSMECxrg,64
83
+ eth_portfolio_temp-0.0.31.dev0.dist-info/RECORD,,
@@ -1,3 +1,3 @@
1
- bb56d21cd75f4f6de8f2__mypyc
1
+ 295eace8438df6ec133b__mypyc
2
2
  eth_portfolio
3
3
  eth_portfolio_scripts