- openfga: service methods return (result, error) instead of (result, *Response, error); use OnResponse for raw response access.
- models: add strongly-typed model schema and DSL-aligned builders
- config: load FGA_* via os.Getenv, dropping caarlos0/env
- models: ReadModelsOptions and ReadAuthorizationModelsResponse are renamed to ListModelsOptions and ListAuthorizationModelsResponse.
- add chunking/parallelism request options and bounded worker helper (3265164)
- add WithDefaultConsistency client option (f6261b2)
- API-token and OAuth2 client-credentials auth (2f2144e)
- AssertionsService (write/read) (815e137)
- AuthorizationModelsService (write/list/get/read-latest) (c2027dc)
- auto-paginating iterators (Go 1.23 range-over-func) (c202b57)
- Client constructor, options, and service wiring (1f2accc)
- client: composable transport, custom token source, and observer (3632ded)
- client: ergonomic helpers, typed responses, and error context (3b7d88e)
- client: make env loading opt-in via NewClientFromEnv/EnvOptions (87b2179)
- client: seed NewClient from FGA_* environment via config.Load (373e940)
- client: validate merged config once in NewClient (f5785e1)
- client: version the default User-Agent and add default setters/getters (f79f3f3)
- config: add internal/config with env-decoding Load (4878dff)
- config: load FGA_* via os.Getenv, dropping caarlos0/env (ee2e6a3)
- config: normalize token issuer into an OAuth2 token URL (1120f5a)
- Do and BareDo request execution (5ce2d04)
- dsl: add DSL<->JSON model transformer as a nested module (7a8051e)
- expose Client.BaseURL (3334017)
- models: add strongly-typed model schema and DSL-aligned builders (87b8e3a)
- openfga: return (result, error) and add OnResponse (6307e4c)
- private-key JWT (RFC 7523) auth (6e8c1b2)
- relationships: add client-side BatchCheckAll chunking helper (2f06def)
- relationships: add ListRelations built on BatchCheckAll (d37f773)
- relationships: return partial results from BatchCheckAll on failure (f905023)
- RelationshipsService (check/batch-check/expand/list-objects/list-users) (486506d)
- request core (NewRequest, Response, request options) (4f4c57f)
- response: add QueryDuration and time-boxed fuzzing (c6b1387)
- retry transport (429 default, backoff, Retry-After) (d8090f0)
- static-header transport (86d67a2)
- StoresService (create/list/get/delete) (c881264)
- stores: support the name filter in ListStores (73ce293)
- StreamedListObjects NDJSON iterator (e6feb6a)
- tuples: add bulk WriteTuples/DeleteTuples with per-tuple results (4e1f425)
- tuples: add on_duplicate/on_missing write-conflict options (63f035f)
- tuples: report bulk partial failures via Failed and FirstError (7cc9bb2)
- TuplesService (write/read/changes) (259e669)
- typed API errors and response classifier (4906a67)
- address foundation code-review (errors.As Unwrap, JWT status check, retry request clone, gofmt, tests) (6d7321e)
- avoid mutating caller request structs in TuplesService; test start_time (ec8a798)
- cancellable retry backoff, WithHTTPClient docs, godoc examples (7a0ccbc)
- client: drain nil-body responses so connections can be reused (16e90bf)
- client: harden retry and header transports (0a7ffa3)
- encode FGAObjectRelation as OpenFGA's structured object (f162cce)
- errors: guard Retry-After against negative and overflowing values (bbaf5d4)
- relationships: use valid correlation IDs in ListRelations (ec37fc3)
- stop ChangesAll once the changes feed is drained (833ee9f)
- auth: store credential specs and build transport in NewClient (4fc1f56)
- client: layer env as options and extract NewClient assembly phases (3c0642b)
- client: split validate into URL, ID, and retry checks (1cf3cf6)
- models: rename Read* model types to the List* convention (f874dc7)
- add Expand and ListUsers runtime tests (014f06b)
- cover AuthorizationModels.All and Tuples.ChangesAll iterators (ed7ab92)
- godog check scenarios against live OpenFGA (119d8be)
- implement OPENFGA_IMAGE override and drop dead suite state (0c1f23d)
- integration module scaffold with testcontainers OpenFGA (3ace3fd)
- integration: add shared harness scaffolding and migrate check scenarios (77d329a)
- integration: cover assertions write and read round-trip (2f267ff)
- integration: cover authorization model write, get, read-latest, list, validation (1f507eb)
- integration: cover batch-check, expand, list-objects, streamed-list-objects (61cbfff)
- integration: cover check inheritance, group membership, contextual tuples (0d94dc2)
- integration: cover list-users (448bf6c)
- integration: cover ListRelations and bulk write/delete chunking (76bf968)
- integration: cover per-request overrides, consistency, headers, unbound-store error (6eb13ed)
- integration: cover store create, get, list-all, delete (d618021)
- integration: cover tuple write, read, delete, changes, validation (8ec9a31)
- openfga: add fuzz targets for response, codec, and header parsing (17819d7)
- openfga: cover error types, options, JWT token, and unmarshal paths (45d2887)
- use valid ULIDs for IDs passed through NewClient (4f291f4)
- add contributing guide, code of conduct and security policy (7e3c507)
- add pull request and issue templates (c57b25e)
- add README (17a2843)
- add README banner and drop retired Go Report Card badge (#6) (3ebb292)
- add table of contents, section emojis, and query/bootstrap/ABAC examples to README (42a95c0)
- center the badge row in README (301e89d)
- center the go-openfga title in README (22f604a)
- cover env config, errors, extensibility, and testing (f74a79b)
- document bulk helpers, batch-check chunking, conflict options, and dsl module (3b31b73)
- document dsl module layout and two-module release ordering (1be6713)
- document typed model authoring and bulk partial-failure helpers (e3e5f79)
- drop the go-github design comparison from the README intro (d9532a9)
- expand README badges and add NOTICE (9239ab7)
- update the code of conduct reporting link (eb99831)
- add golangci-lint, commitlint, editorconfig and pre-commit config (f0ed411)
- expand Makefile with lint, coverage, vuln and tooling targets (4272e29)
- integration: update test harness dependencies (7f42479)
- raise Go floor to 1.25 and update dependencies (1795398)
All notable changes to this project are documented in this file.
Releases and the entries below are generated by
release-please from
Conventional Commits. Until v1.0.0 the
public API may change between minor versions.