Skip to content

1.0.0 — first release

Choose a tag to compare

@rmi-wilhelm rmi-wilhelm released this 14 Sep 16:43
· 4 commits to main since this release

First public release of the Populi API2 client extracted from an in-house Django application.

Built around the ways Populi fails open: a request the server cannot read is answered with HTTP 200 and quietly ignored, so most of the defensive code here exists because a silent failure got to production first.

Highlights

  • Bearer-auth transport with error-object detection regardless of HTTP status
  • Paged reads that verify the page echo and refuse a short read
  • PopuliFilter, which refuses an empty filter or group — both of which Populi ignores, and an ignored filter matches everyone
  • Per-caller rate pacing against a budget re-read per request, so a long run widens itself at the Pacific boundary
  • Framework-free: importing the client loads zero Django modules

See the CHANGELOG for the undocumented behaviours this client works around, each of which was a defect before it was a paragraph.