Skip to content

v0.21.1 — SDK Bug Fixes

Choose a tag to compare

@github-actions github-actions released this 20 Mar 17:43
· 63 commits to main since this release
df740f4

Bug Fixes

  • Truthiness bug in mutual exclusion guards — if user_id and meeting_id: silently failed when user_id=0 in issues, headlines, and scorecard operations (sync + async). Replaced with proper is not None checks.
  • Goal update() overwrites owner — Previously always defaulted accountable_user to the current user, silently overwriting the existing owner when only updating title or status. Now truly optional — if not provided, the existing owner is preserved.
  • Meeting details() only found user's own meetings — Rewrote to call GET L10/{id} directly instead of filtering from list(). Fields start_date_utc, created_date, and organization_id are now populated from the API.
  • Goals Origins[0] unsafe access — Crash on empty or malformed Origins arrays in goal transforms.
  • Headline create DetailsUrl=None crash — Fixed null handling for DetailsUrl in headline create (sync + async).
  • Whitespace-only API key accepted — Configuration now strips whitespace from API keys, rejecting whitespace-only values.
  • Todo create naive datetime fallback — Changed datetime.now() to datetime.now(UTC) for timezone-aware fallback.
  • Metrics transform zero-ID filtering — if not measurable_id incorrectly filtered out ID=0; fixed to is None check.

Testing

  • Added 134 integration tests validated against the real Bloom Growth API
  • Added 185 adversarial tests for edge cases and malformed data
  • Updated existing tests for new meeting details and goal update behavior
  • Total: 197 → 516 tests, coverage 95% → 98%

CI

  • Integration tests excluded from CI with -m "not integration" (require API key)
  • Registered integration pytest marker in pyproject.toml

Full Changelog: v0.21.0...v0.21.1