abstract-solana 0.0.2.97__tar.gz → 0.0.2.99__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.
Potentially problematic release.
This version of abstract-solana might be problematic. Click here for more details.
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/PKG-INFO +1 -1
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/setup.py +1 -1
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/get_api_gui.py +0 -6
- abstract_solana-0.0.2.99/src/abstract_solana/abstract_utils/genesis_functions.py +35 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/keypair_utils.py +0 -1
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/log_message_functions.py +1 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/PKG-INFO +1 -1
- abstract_solana-0.0.2.97/src/abstract_solana/abstract_utils/genesis_functions.py +0 -14
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/README.md +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/pyproject.toml +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/setup.cfg +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/__init__.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/__init__.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/db_templates.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/get_body.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/rate_limiter.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/solana_rpc_client.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/__init__.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/account_key_utils.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/constants.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/index_utils.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/price_utils.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/pubkey_utils.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/signature_data_parse.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/utils.py +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/SOURCES.txt +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/dependency_links.txt +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/requires.txt +0 -0
- {abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/top_level.txt +0 -0
|
@@ -102,7 +102,6 @@ def get_var_inputs():
|
|
|
102
102
|
return [inputs]
|
|
103
103
|
def clear_inputs(window):
|
|
104
104
|
for i in range(get_longest(get_list_vars())):
|
|
105
|
-
print(i)
|
|
106
105
|
window[f'var_{i}'].update(value='')
|
|
107
106
|
window[f'input_{i}'].update(value='')
|
|
108
107
|
def get_dict_from_vars(values, function):
|
|
@@ -156,7 +155,6 @@ def second_window():
|
|
|
156
155
|
# Get function by its name dynamically
|
|
157
156
|
|
|
158
157
|
try:
|
|
159
|
-
print(revsa)
|
|
160
158
|
# Pass filtered arguments
|
|
161
159
|
result = get_result(function,dictsa)
|
|
162
160
|
params =result.get('params',[])
|
|
@@ -175,12 +173,10 @@ def second_window():
|
|
|
175
173
|
|
|
176
174
|
|
|
177
175
|
|
|
178
|
-
print(params)
|
|
179
176
|
except TypeError as e:
|
|
180
177
|
print(f"Error calling function: {e}")
|
|
181
178
|
result = {}
|
|
182
179
|
results[lowered] = result
|
|
183
|
-
print(results)
|
|
184
180
|
window = sg.Window('Script launcher', layout)
|
|
185
181
|
results = {}
|
|
186
182
|
while True:
|
|
@@ -205,10 +201,8 @@ def second_window():
|
|
|
205
201
|
|
|
206
202
|
try:
|
|
207
203
|
filtered_values = get_dict_from_vars(values, function)
|
|
208
|
-
print(filtered_values)
|
|
209
204
|
# Pass filtered arguments
|
|
210
205
|
result = get_result(function,dictsa)
|
|
211
|
-
print(result)
|
|
212
206
|
except TypeError as e:
|
|
213
207
|
print(f"Error calling function: {e}")
|
|
214
208
|
result = {}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
|
|
2
|
+
from abstract_solcatcher import call_solcatcher_db
|
|
3
|
+
import asyncio
|
|
4
|
+
def get_block_time_from_txn(txnData):
|
|
5
|
+
return int(get_any_value(txnData,'blockTime') or 0)
|
|
6
|
+
def get_error_message_from_txn(txnData):
|
|
7
|
+
return make_list(get_any_value(txnData,'err'))[0]
|
|
8
|
+
def get_errorless_txn_from_signature_array(signatureArray):
|
|
9
|
+
return [sig for sig in signatureArray if get_error_message_from_txn(sig) == None]
|
|
10
|
+
def return_oldest_from_signature_array(signatureArray,errorless=False):
|
|
11
|
+
if errorless:
|
|
12
|
+
signatureArray = get_errorless_txn_from_signature_array(signatureArray)
|
|
13
|
+
if signatureArray and isinstance(signatureArray,list):
|
|
14
|
+
if get_block_time_from_txn(signatureArray[0])<get_block_time_from_txn(signatureArray[-1]):
|
|
15
|
+
return signatureArray[0].get('signature')
|
|
16
|
+
return signatureArray[-1].get('signature')
|
|
17
|
+
def return_oldest_last_and_original_length_from_signature_array(signatureArray):
|
|
18
|
+
return {"oldest":return_oldest_from_signature_array(signatureArray),
|
|
19
|
+
"oldestValid":return_oldest_from_signature_array(signatureArray,errorless=True),
|
|
20
|
+
"length":len(signatureArray)}
|
|
21
|
+
async def getGenesisSignature(address, limit=1000, before=None,encoding='jsonParsed',commitment=0,errorProof=True):
|
|
22
|
+
method = "getGenesisSignature"
|
|
23
|
+
validBefore=None
|
|
24
|
+
while True:
|
|
25
|
+
signatureArray = await async_call_solcatcher_py('make_limited_rpc_call',method ="getSignaturesForAddress",params=[address, {"limit":limit, "until":before}],solcatcherSettings={"getResult":None})
|
|
26
|
+
original_length = len(signatureArray)
|
|
27
|
+
signature_array_data = return_oldest_last_and_original_length_from_signature_array(signatureArray)
|
|
28
|
+
oldest = signature_array_data.get('oldest')
|
|
29
|
+
validOldest = signature_array_data.get('oldestValid')
|
|
30
|
+
if original_length < limit or original_length == 0 or (original_length>0 and (oldest == validOldest or oldest == before) and last_sig != None):
|
|
31
|
+
return validOldest
|
|
32
|
+
|
|
33
|
+
response = call_solcatcher_db('get-genesis-signature',address='3WLwz1F5Engos6ehdCdWeZxKAomiszyZgXY3PGs3niJy')
|
|
34
|
+
|
|
35
|
+
input(response)
|
|
@@ -4,6 +4,7 @@ from .price_utils import *
|
|
|
4
4
|
from .signature_data_parse import get_log_messages_from_txn,get_instructions_from_txn,get_inner_instructions_from_txn
|
|
5
5
|
from .account_key_utils import get_all_account_keys
|
|
6
6
|
from .constants import TOKEN_PROGRAM_ID
|
|
7
|
+
input(TOKEN_PROGRAM_ID)
|
|
7
8
|
def ifListGetSection(list_obj,i=0):
|
|
8
9
|
if list_obj and isinstance(list_obj,list) and len(list_obj)>i:
|
|
9
10
|
list_obj = list_obj[i]
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
from .signature_data_parse import get_error_message_from_txn,get_block_time_from_txn
|
|
2
|
-
def get_errorless_txn_from_signature_array(signatureArray):
|
|
3
|
-
return [sig for sig in signatureArray if get_error_message_from_txn(sig) == None]
|
|
4
|
-
def return_oldest_from_signature_array(signatureArray,errorless=False):
|
|
5
|
-
if errorless:
|
|
6
|
-
signatureArray = get_errorless_txn_from_signature_array(signatureArray)
|
|
7
|
-
if signatureArray and isinstance(signatureArray,list):
|
|
8
|
-
if get_block_time_from_txn(signatureArray[0])<get_block_time_from_txn(signatureArray[-1]):
|
|
9
|
-
return signatureArray[0].get('signature')
|
|
10
|
-
return signatureArray[-1].get('signature')
|
|
11
|
-
def return_oldest_last_and_original_length_from_signature_array(signatureArray):
|
|
12
|
-
return {"oldest":return_oldest_from_signature_array(signatureArray),
|
|
13
|
-
"oldestValid":return_oldest_from_signature_array(signatureArray,errorless=True),
|
|
14
|
-
"length":len(signatureArray)}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_rpcs/get_body.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana/abstract_utils/utils.py
RENAMED
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/requires.txt
RENAMED
|
File without changes
|
{abstract_solana-0.0.2.97 → abstract_solana-0.0.2.99}/src/abstract_solana.egg-info/top_level.txt
RENAMED
|
File without changes
|