0.2.0 - 2026-05-22

Changed

  • Breaking: require explicit API keys in PolarExpress.client/1 and PolarExpress.client/2 instead of reading global application config (0.2.0)
  • Breaking: make PolarExpress.client/0 raise with explicit credential guidance instead of building a config-backed client (0.2.0)
  • Breaking: require applications to supervise the default Finch pool explicitly with PolarExpress.child_spec/1 or pass a custom :finch pool (0.2.0)
  • Breaking: require PolarExpress.WebhookPlug to receive an explicit :secret instead of reading :webhook_secret from global application config (0.2.0)
  • Return raw response maps from CSV export service functions instead of JSON-decoding export bodies (0.2.0)
  • Resolve polymorphic response variants only when raw JSON keys identify exactly one variant (0.2.0)

Added

  • Add PolarExpress.child_spec/1 for supervising the default PolarExpress.Finch pool (0.2.0)
  • Add public response_data and raw_response response types on PolarExpress.Client (0.2.0)
  • Add :invalid_response_error for successful HTTP responses with invalid JSON bodies (0.2.0)
  • Add ExSlop to the Credo quality gate for generated-code slop checks (0.2.0)

Removed

  • Breaking: remove the auto-started PolarExpress.Application callback from package startup (0.2.0)

Fixed

  • Fix Client.request/4 to report non-JSON 2xx responses as errors instead of ambiguous %{"raw" => body} successes (0.2.0)
  • Fix Client.request/4 specs to include nil for 204 No Content responses (0.2.0)
  • Fix Client.raw_request/4 to return PolarExpress.Error for non-2xx API responses (0.2.0)
  • Tighten Deserializer.cast/2 specs so Dialyzer can detect request return-shape mismatches (0.2.0)
  • Generate Client.raw_request/4 calls for OpenAPI operations that return non-JSON success bodies (0.2.0)

0.1.6 - 2026-04-16

Changed

  • Split customer schemas into individual and team variants for reads, creates, and state responses (7d439c2)
  • Rename generated OwnerCreate and ListResource_ schemas to match the latest OpenAPI names (7d439c2)
  • Expand generated presentment_currency enum values from the latest OpenAPI spec (7d439c2)

Added

  • Add customer-portal email-change endpoints, members external-id lookups, metrics dashboards, and metrics export support (7d439c2)
  • Add generated subscription update, order voided, payment failure, organization legal-entity, meter, seat-tier, tax, and settings schemas (7d439c2)
  • Add expanded generated API coverage for benefits, custom fields, discounts, events, meters, organizations, and subscriptions (7d439c2)

Fixed

  • Fix generated schema property merging across oneOf and anyOf branches (dc300f2)
  • Add rustyjson to Dialyzer PLT applications so analysis can run cleanly (66d43a5)

0.1.5 - 2026-03-03

Changed

  • Sync the generated SDK with Polar's multi-currency OpenAPI update (4b19808)
  • Decouple client and deserializer tests from generated schemas using stable fixtures (f7d11a7)

Added

  • Add the membersessions JavaScript SDK parity alias while it is absent from the public OpenAPI spec (4b19808)

Fixed

  • Fix CI failures from upstream removal of CustomerWithMembers and ProductPriceSeatBased.recurring_interval (f7d11a7)

0.1.4 - 2026-02-17

Changed

0.1.3 - 2026-02-16

Fixed

0.1.2 - 2026-02-12

Added

  • Add generated oneOf, anyOf, prefixItems, typed-map, polymorphic, and nested-array support (0d0e648)
  • Add missing generated CustomerPortalOAuthAccount schema support for oauth_accounts fields (0d0e648)

Fixed

  • Fix generated enum modules so large value lists are not truncated (0d0e648)
  • Fix compiler warnings in generator logic (0d0e648)

0.1.1 - 2026-02-11

Changed

  • Wire webhook event deserialization through the generated EventTypes registry (dd54197)
  • Add typed modules and typed event data fields for generated webhook events (dd54197)

Removed

  • Remove unused Stripe-derived registry and generator code from the Polar SDK (dd54197)

Fixed

  • Fix Standard Webhooks verification behavior in webhook handling (c4e7f55)
  • Fix package metadata issues that prevented Hex publication (430c39a)
  • Fix CI to call mix polar_express.generate instead of the old task name (0df0843)
  • Fix generator paths that still emitted registry files under lib/stripe/ (dd54197)

0.1.0 - 2026-02-11

Initial release.

Added

  • Add generated Polar API services, resources, params, schemas, and event modules with JavaScript SDK parity (693a87e)
  • Add list pagination, raw requests, streaming requests, retries, telemetry, OAuth, webhooks, and test stubs (693a87e)
  • Add Finch-backed HTTP client and RustyJSON-backed JSON decoding (693a87e)