helius-python 0.3.0__tar.gz → 0.3.1__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.
- {helius_python-0.3.0 → helius_python-0.3.1}/PKG-INFO +1 -1
- {helius_python-0.3.0 → helius_python-0.3.1}/pyproject.toml +1 -1
- helius_python-0.3.1/src/helius/admin/__init__.py +15 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/laserstream/websockets.py +1 -1
- helius_python-0.3.1/src/helius/solana_rpc/__init__.py +51 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/unit/admin/test_admin.py +10 -9
- helius_python-0.3.0/src/helius/solana_rpc/__init__.py +0 -5
- {helius_python-0.3.0 → helius_python-0.3.1}/.editorconfig +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/.github/workflows/python-package.yml +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/.github/workflows/python-publish.yml +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/.gitignore +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/AGENTS.md +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/CLAUDE.md +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/CONTRIBUTING.md +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/LICENSE +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/README.md +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/TODO.md +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/block_explorer.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/devnet_airdrop.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/network_status.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/priority_fees.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/stake_overview.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/token_inspector.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/transaction_inspector.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/examples/wallet_tracker.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/requirements.txt +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/__init__.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/admin/admin.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/rpc/__init__.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/rpc/json_rpc_request.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/solana_rpc/client.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/src/helius/solana_rpc/models.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/fixtures/account.json +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/fixtures/supply.json +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/unit/lasterstream/test_websockets.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/unit/rpc/test_json_rpc_request.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/unit/solana_rpc/test_client.py +0 -0
- {helius_python-0.3.0 → helius_python-0.3.1}/tests/unit/solana_rpc/test_models.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: helius-python
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.1
|
|
4
4
|
Summary: Typed Python client for the Helius API
|
|
5
5
|
Project-URL: Homepage, https://github.com/markosnarinian/helius-python
|
|
6
6
|
Project-URL: Issues, https://github.com/markosnarinian/helius-python/issues
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from helius.admin.admin import (
|
|
2
|
+
AccountManagementClient,
|
|
3
|
+
BillingCycle,
|
|
4
|
+
ProjectUsage,
|
|
5
|
+
SubscriptionDetails,
|
|
6
|
+
Usage,
|
|
7
|
+
)
|
|
8
|
+
|
|
9
|
+
__all__ = [
|
|
10
|
+
"AccountManagementClient",
|
|
11
|
+
"BillingCycle",
|
|
12
|
+
"ProjectUsage",
|
|
13
|
+
"SubscriptionDetails",
|
|
14
|
+
"Usage",
|
|
15
|
+
]
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
from helius.solana_rpc.client import SolanaRpcClient
|
|
2
|
+
from helius.solana_rpc.models import (
|
|
3
|
+
Account,
|
|
4
|
+
Block,
|
|
5
|
+
BlockCommitment,
|
|
6
|
+
ClusterNode,
|
|
7
|
+
EpochInfo,
|
|
8
|
+
EpochSchedule,
|
|
9
|
+
InflationGovernor,
|
|
10
|
+
InflationRate,
|
|
11
|
+
InflationReward,
|
|
12
|
+
LamportAccount,
|
|
13
|
+
PerformanceSample,
|
|
14
|
+
ProgramAccount,
|
|
15
|
+
Rewards,
|
|
16
|
+
SignatureStatus,
|
|
17
|
+
Supply,
|
|
18
|
+
TokenAccount,
|
|
19
|
+
TokenAccountBalance,
|
|
20
|
+
TokenSupply,
|
|
21
|
+
Transaction,
|
|
22
|
+
TransactionMetadata,
|
|
23
|
+
TransactionSignature,
|
|
24
|
+
VotingAccount,
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
__all__ = [
|
|
28
|
+
"Account",
|
|
29
|
+
"Block",
|
|
30
|
+
"BlockCommitment",
|
|
31
|
+
"ClusterNode",
|
|
32
|
+
"EpochInfo",
|
|
33
|
+
"EpochSchedule",
|
|
34
|
+
"InflationGovernor",
|
|
35
|
+
"InflationRate",
|
|
36
|
+
"InflationReward",
|
|
37
|
+
"LamportAccount",
|
|
38
|
+
"PerformanceSample",
|
|
39
|
+
"ProgramAccount",
|
|
40
|
+
"Rewards",
|
|
41
|
+
"SignatureStatus",
|
|
42
|
+
"SolanaRpcClient",
|
|
43
|
+
"Supply",
|
|
44
|
+
"TokenAccount",
|
|
45
|
+
"TokenAccountBalance",
|
|
46
|
+
"TokenSupply",
|
|
47
|
+
"Transaction",
|
|
48
|
+
"TransactionMetadata",
|
|
49
|
+
"TransactionSignature",
|
|
50
|
+
"VotingAccount",
|
|
51
|
+
]
|
|
@@ -2,8 +2,7 @@ import httpx
|
|
|
2
2
|
import pytest
|
|
3
3
|
import respx
|
|
4
4
|
|
|
5
|
-
from helius.admin
|
|
6
|
-
|
|
5
|
+
from helius.admin import AccountManagementClient, ProjectUsage
|
|
7
6
|
|
|
8
7
|
PROJECT_USAGE_RESPONSE = {
|
|
9
8
|
"creditsRemaining": 487500,
|
|
@@ -41,9 +40,9 @@ def test_project_usage_parses_docs_response():
|
|
|
41
40
|
|
|
42
41
|
@respx.mock
|
|
43
42
|
def test_get_project_usage_sends_api_key_and_project_id():
|
|
44
|
-
route = respx.get(
|
|
45
|
-
|
|
46
|
-
)
|
|
43
|
+
route = respx.get(
|
|
44
|
+
"https://admin-api.helius.xyz/v0/admin/projects/{id}/usage/"
|
|
45
|
+
).mock(return_value=httpx.Response(200, json=PROJECT_USAGE_RESPONSE))
|
|
47
46
|
|
|
48
47
|
with AccountManagementClient(api_key="test") as client:
|
|
49
48
|
usage = client.get_project_usage("project-1")
|
|
@@ -57,11 +56,13 @@ def test_get_project_usage_sends_api_key_and_project_id():
|
|
|
57
56
|
|
|
58
57
|
@respx.mock
|
|
59
58
|
def test_get_project_usage_uses_default_project_id():
|
|
60
|
-
route = respx.get(
|
|
61
|
-
|
|
62
|
-
)
|
|
59
|
+
route = respx.get(
|
|
60
|
+
"https://admin-api.helius.xyz/v0/admin/projects/{id}/usage/"
|
|
61
|
+
).mock(return_value=httpx.Response(200, json=PROJECT_USAGE_RESPONSE))
|
|
63
62
|
|
|
64
|
-
with AccountManagementClient(
|
|
63
|
+
with AccountManagementClient(
|
|
64
|
+
api_key="test", project_id="default-project"
|
|
65
|
+
) as client:
|
|
65
66
|
client.get_project_usage()
|
|
66
67
|
|
|
67
68
|
assert route.calls.last.request.url.params["id"] == "default-project"
|
|
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
|