sharpapi 0.3.3__tar.gz → 0.4.0__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.
- {sharpapi-0.3.3 → sharpapi-0.4.0}/CHANGELOG.md +22 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/PKG-INFO +1 -1
- {sharpapi-0.3.3 → sharpapi-0.4.0}/pyproject.toml +1 -1
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/__init__.py +1 -1
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/models.py +9 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/.gitignore +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/LICENSE +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/README.md +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/SECURITY.md +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/_base.py +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/_utils.py +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/async_client.py +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/client.py +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/exceptions.py +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/py.typed +0 -0
- {sharpapi-0.3.3 → sharpapi-0.4.0}/src/sharpapi/streaming.py +0 -0
|
@@ -2,6 +2,28 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to the `sharpapi` Python SDK are documented here.
|
|
4
4
|
|
|
5
|
+
## 0.4.0 — 2026-06-02
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- `OddsLine.timestamp` / `ArbitrageLeg.timestamp` documented as the **delivery /
|
|
10
|
+
last-refreshed** feed-freshness timestamp (advances every ingest cycle),
|
|
11
|
+
matching OpticOdds' `timestamp` — NOT a price-last-changed time. The API now
|
|
12
|
+
populates this field (previously always `null`). The removed
|
|
13
|
+
`odds_changed_at` / `last_seen_at` / `wire_received_at` were never modeled by
|
|
14
|
+
this SDK, so no model change is needed. (SHA-1048)
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- `OddsLine.is_active` (bool, default `True`). `False` indicates the market is
|
|
19
|
+
suspended/closed with the price frozen — mirrors OpticOdds `locked-odds` but
|
|
20
|
+
as a queryable field. Absent on the wire is treated as `True`.
|
|
21
|
+
|
|
22
|
+
### Backward compatibility
|
|
23
|
+
|
|
24
|
+
- Additive optional field with a `True` default — existing code is unaffected,
|
|
25
|
+
and older API servers that omit the key parse as active.
|
|
26
|
+
|
|
5
27
|
## 0.3.2 — 2026-05-07
|
|
6
28
|
|
|
7
29
|
### Changed
|
|
@@ -219,8 +219,15 @@ class OddsLine(BaseModel):
|
|
|
219
219
|
probability: float
|
|
220
220
|
line: float | None = None
|
|
221
221
|
event_start_time: str | None = None
|
|
222
|
+
# ISO 8601 — when SharpAPI last refreshed this odd through its pipeline
|
|
223
|
+
# (advances every ingest cycle). A feed-freshness / delivery signal matching
|
|
224
|
+
# OpticOdds' `timestamp`; NOT a price-last-changed time. (SHA-1048)
|
|
222
225
|
timestamp: str | None = None
|
|
223
226
|
is_live: bool = False
|
|
227
|
+
# True (default) = market open and bettable; False = market suspended/closed
|
|
228
|
+
# with the price frozen (mirrors OpticOdds locked-odds). Absent on the wire
|
|
229
|
+
# is treated as True. SHA-3803.
|
|
230
|
+
is_active: bool = True
|
|
224
231
|
deep_link: str | None = None
|
|
225
232
|
player_name: str | None = None
|
|
226
233
|
stat_category: str | None = None
|
|
@@ -311,6 +318,8 @@ class ArbitrageLeg(BaseModel):
|
|
|
311
318
|
odds_decimal: float
|
|
312
319
|
implied_probability: float | None = None
|
|
313
320
|
stake_percent: float
|
|
321
|
+
# ISO 8601 last-refreshed (feed-freshness) timestamp for this leg's odd —
|
|
322
|
+
# see OddsLine.timestamp. (SHA-1048)
|
|
314
323
|
timestamp: str | None = None
|
|
315
324
|
external_event_id: str | None = None
|
|
316
325
|
selection_id: str | None = None
|
|
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
|