Skip to content

livetennisapi 1.0.1

Choose a tag to compare

@bensynapse bensynapse released this 19 Jul 00:31
· 19 commits to main since this release

Bug-fix release from an adversarial review of 1.0.0. No API changes.

Fixed

  • WebSocket backoff never grew against a flapping server. The retry counter reset on a successful subscribe, so a server that accepted then immediately dropped pinned the delay at step one forever and max_reconnect_attempts was never reached. It now resets only after a connection survives 60s.
  • WebSocket leaked a socket per failed handshake — the subscribe exchange was outside any try, so a recv timeout escaped with the socket still open, once per reconnect attempt.
  • livetennis --json worked on only 3 of 8 subcommands, and livetennis live --json was an argparse error. Fixed both.
  • format_score used zip, silently dropping the in-progress set. Now zip_longest, matching the JS client.
  • AsyncLiveScoreStream was advertised but never existed. LiveScoreStream and ScoreUpdate are exported instead.
  • mypy could not run: python_version = "3.9" is rejected by mypy ≥1.18.
pip install --upgrade livetennisapi