Skip to content

v2.3.1

Latest

Choose a tag to compare

@github-actions github-actions released this 12 Aug 02:06
v2.3.1
07e76bf

What's new

v2.3.1 is a focused fix for the automatic Profil Zaufany relogin flow: it no longer retries forever after repeated failures, and the dashboard now tells you clearly when it's given up and is waiting on you.

Profil Zaufany relogin

  • Consecutive-failure cap: an automatic Profil Zaufany login submits a real saved password and, on a rejected SMS code, a real failed one-time-code attempt. Retrying that unattended forever — the previous behavior, on an hourly-capped backoff — risked tripping a temporary lockout on the identity provider's own side. Automatic attempts now stop outright after 3 consecutive failures instead of continuing to retry; a manual retry (Settings → "Get new session now") still always works and clears the counter on success.
  • Dashboard indicator: when automatic retries are paused this way, the dashboard now shows "Session expired — manual retry required" with a pointer to Settings, instead of looking identical to the ordinary "still retrying on its own" state. Previously the only sign was a single notification that was easy to miss.
  • One-time alert: a desktop + phone notification fires the moment the cap is first crossed, on top of the per-failure alert already sent.

QR-wording fixes

Every place that could trigger or describe a relogin — Settings' "Get new session now", the login screen, restart flows — was hardcoded to say "QR login"/"scan the QR" regardless of the configured method. These now correctly say "Profil Zaufany login" for accounts using that method, since it authenticates with a saved username/password and an SMS code, not a QR code.

Validation

  • 367 automated tests passed locally, with 3 OpenSSL-dependent tests skipped.
  • CI passed on Python 3.9, 3.11, and 3.13, including the installed-wheel smoke test.
  • PyInstaller builds succeeded for Windows, macOS, and Linux.