Repository navigation
Releases: ChocoTonic/renpho-py
Release list
v1.3.0 — renpho-py
Changes in 1.3.0
- Fix Renpho login decryption failure and verify request headers (#5) by @ChocoTonic, @aarogozin
- Document consistent release naming and publishing steps (#6) by @ChocoTonic
- Bound measurement requests and reject stalled or incomplete pagination (#7) by @ChocoTonic
- Add validated account login and strict measurement profile collection (#8) by @ChocoTonic
- Automatically publish releases after validated main changes (#9) by @ChocoTonic
- Respect the ignored lockfile during automatic releases (#10) by @ChocoTonic
v1.2.1 — renpho-py
Security patch release from validated source 66bfe23.
Requires certifi>=2026.10.19 so new installations use the updated CA bundle following the eMudhra certificate-authority compromise. This release also delivers the security dependency updates already merged and tested on main.
Validation: 61 offline tests, Ruff, mypy, source and wheel builds locally; hosted Python 3.10–3.13 test matrix and lint pass on both the release PR and merged main revision.
v1.2.0 — renpho-py
Additive release — public API stays a superset of 1.1.0 (guarded by a contract test).
Added
Measurementdataclass (from renpho import Measurement) — opt-in typed access over the raw dicts:Measurement.from_dict(m)maps common camelCase keys to snake_case attributes and keeps the full payload on.raw. Client methods still return dicts.renpho.__version__.
Changed (internal, no API change)
client.pysplit into focused modules:exceptions,metrics, and atransport.Transportclass. Import surface unchanged.
Tooling
- CI now runs ruff + mypy alongside the test matrix;
make lint/typecheck/checkfor local parity.
See CHANGELOG.md.
v1.1.0 — renpho-py
Hardening of the multi-account feature — all additive, public API unchanged.
Added
- Concurrent shard discovery via
max_workers=ondiscover_user_tables()/get_all_measurements()(thread-safe; each worker uses its own session). Default stays serial. - Discovery caching per user id, with
refresh=and a newclear_table_cache().
Changed
- Probe failures are isolated — a flaky request on one shard (or one extra account) is skipped, not fatal, so data already fetched survives.
discover_user_tables()logs in if no token is set.- Tighter typing:
extra_user_ids: list[str] | None, newUserIdalias.
See docs/multi-account.md for the full analysis, and CHANGELOG.md.
v1.0.0 — renpho-py
First release of renpho-py, an independently maintained continuation of the abandoned renpho-api (MIT).
Migration
Drop-in — the import name is unchanged:
pip uninstall renpho-api && pip install renpho-pyYour existing from renpho import RenphoClient code keeps working.
Highlights
- Multiple Renpho accounts on one email —
get_all_measurements(extra_user_ids=[...])probes all sharded measurement tables, merges, and dedupes by recordid. Newdiscover_user_tables()helper. - Public API is a superset of
renpho-api— no removals, no signature breaks. - Ships type hints (
py.typed, PEP 561).
See CHANGELOG.md for full details.
Unofficial. Not affiliated with or endorsed by Renpho.