helius-python 0.0.1__tar.gz → 0.0.2__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.
@@ -169,7 +169,7 @@ Skeleton:
169
169
  import json
170
170
  import httpx
171
171
  import respx
172
- from helius import HeliusClient
172
+ from helius.client import HeliusClient
173
173
 
174
174
  @respx.mock
175
175
  def test_get_balance():
@@ -105,6 +105,12 @@ basedpyright src
105
105
  Make sure your change at least imports cleanly and the method you added
106
106
  actually works against a real Helius endpoint.
107
107
 
108
+ Run the test suite with the local `src` package on the import path:
109
+
110
+ ```bash
111
+ PYTHONPATH=src .venv/bin/pytest
112
+ ```
113
+
108
114
  ## Pull Requests
109
115
 
110
116
  - Keep PRs focused. One method, one bug fix, or one refactor per PR.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: helius-python
3
- Version: 0.0.1
3
+ Version: 0.0.2
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
@@ -10,6 +10,9 @@ License-File: LICENSE
10
10
  Classifier: Operating System :: OS Independent
11
11
  Classifier: Programming Language :: Python :: 3
12
12
  Requires-Python: >=3.9
13
+ Requires-Dist: httpx
14
+ Requires-Dist: pydantic
15
+ Requires-Dist: python-dotenv
13
16
  Provides-Extra: dev
14
17
  Requires-Dist: pytest; extra == 'dev'
15
18
  Requires-Dist: respx; extra == 'dev'
@@ -61,12 +64,21 @@ type checking.
61
64
  pip install helius-python
62
65
  ```
63
66
 
67
+ This installs the runtime dependencies automatically:
68
+
69
+ - `httpx` for HTTP transport
70
+ - `pydantic` for typed response models and argument validation
71
+ - `python-dotenv` for optional `.env` loading of `HELIUS_API_KEY`
72
+
73
+ You do not need to install these separately unless your environment disables
74
+ dependency installation.
75
+
64
76
  ## Authentication
65
77
 
66
78
  Pass your Helius API key explicitly:
67
79
 
68
80
  ```python
69
- from helius import HeliusClient
81
+ from helius.client import HeliusClient
70
82
 
71
83
  client = HeliusClient(api_key="YOUR_HELIUS_API_KEY")
72
84
  ```
@@ -79,7 +91,7 @@ HELIUS_API_KEY=your_helius_api_key
79
91
  ```
80
92
 
81
93
  ```python
82
- from helius import HeliusClient
94
+ from helius.client import HeliusClient
83
95
 
84
96
  client = HeliusClient() # reads HELIUS_API_KEY from .env
85
97
  ```
@@ -89,7 +101,7 @@ client = HeliusClient() # reads HELIUS_API_KEY from .env
89
101
  ### As a context manager (recommended)
90
102
 
91
103
  ```python
92
- from helius import HeliusClient
104
+ from helius.client import HeliusClient
93
105
 
94
106
  with HeliusClient(api_key="YOUR_HELIUS_API_KEY") as client:
95
107
  balance = client.get_balance("So11111111111111111111111111111111111111112")
@@ -109,7 +121,7 @@ If a `with` block doesn't fit your code structure (e.g. the client lives on
109
121
  a long-lived object), call `close()` yourself when you're done:
110
122
 
111
123
  ```python
112
- from helius import HeliusClient
124
+ from helius.client import HeliusClient
113
125
 
114
126
  client = HeliusClient(api_key="YOUR_HELIUS_API_KEY")
115
127
  try:
@@ -207,7 +219,7 @@ docstring that is the source of truth for that symbol. You can read it
207
219
  straight from a REPL:
208
220
 
209
221
  ```python
210
- from helius import HeliusClient
222
+ from helius.client import HeliusClient
211
223
  help(HeliusClient.get_balance)
212
224
  ```
213
225
 
@@ -44,12 +44,21 @@ type checking.
44
44
  pip install helius-python
45
45
  ```
46
46
 
47
+ This installs the runtime dependencies automatically:
48
+
49
+ - `httpx` for HTTP transport
50
+ - `pydantic` for typed response models and argument validation
51
+ - `python-dotenv` for optional `.env` loading of `HELIUS_API_KEY`
52
+
53
+ You do not need to install these separately unless your environment disables
54
+ dependency installation.
55
+
47
56
  ## Authentication
48
57
 
49
58
  Pass your Helius API key explicitly:
50
59
 
51
60
  ```python
52
- from helius import HeliusClient
61
+ from helius.client import HeliusClient
53
62
 
54
63
  client = HeliusClient(api_key="YOUR_HELIUS_API_KEY")
55
64
  ```
@@ -62,7 +71,7 @@ HELIUS_API_KEY=your_helius_api_key
62
71
  ```
63
72
 
64
73
  ```python
65
- from helius import HeliusClient
74
+ from helius.client import HeliusClient
66
75
 
67
76
  client = HeliusClient() # reads HELIUS_API_KEY from .env
68
77
  ```
@@ -72,7 +81,7 @@ client = HeliusClient() # reads HELIUS_API_KEY from .env
72
81
  ### As a context manager (recommended)
73
82
 
74
83
  ```python
75
- from helius import HeliusClient
84
+ from helius.client import HeliusClient
76
85
 
77
86
  with HeliusClient(api_key="YOUR_HELIUS_API_KEY") as client:
78
87
  balance = client.get_balance("So11111111111111111111111111111111111111112")
@@ -92,7 +101,7 @@ If a `with` block doesn't fit your code structure (e.g. the client lives on
92
101
  a long-lived object), call `close()` yourself when you're done:
93
102
 
94
103
  ```python
95
- from helius import HeliusClient
104
+ from helius.client import HeliusClient
96
105
 
97
106
  client = HeliusClient(api_key="YOUR_HELIUS_API_KEY")
98
107
  try:
@@ -190,7 +199,7 @@ docstring that is the source of truth for that symbol. You can read it
190
199
  straight from a REPL:
191
200
 
192
201
  ```python
193
- from helius import HeliusClient
202
+ from helius.client import HeliusClient
194
203
  help(HeliusClient.get_balance)
195
204
  ```
196
205
 
@@ -10,13 +10,18 @@ build-backend = "hatchling.build"
10
10
 
11
11
  [project]
12
12
  name = "helius-python"
13
- version = "0.0.1"
13
+ version = "0.0.2"
14
14
  authors = [
15
15
  { name="Markos Narinian", email="manarinian@gmail.com" },
16
16
  ]
17
17
  description = "Typed Python client for the Helius API"
18
18
  readme = "README.md"
19
19
  requires-python = ">=3.9"
20
+ dependencies = [
21
+ "httpx",
22
+ "pydantic",
23
+ "python-dotenv",
24
+ ]
20
25
  classifiers = [
21
26
  "Programming Language :: Python :: 3",
22
27
  "Operating System :: OS Independent",
File without changes
File without changes
File without changes