openfga @ v1.8.0
integrity
- size
- 687.8 KiB
- downloaded
- last checked
- overlays
- go
- detected
- go module github.com/openfga/openfga
release notes
Added
- Added
start_timeparameter toReadChangesAPI to allow filtering by specific time #2020 - Added support for Contextual Tuples in the
ExpandAPI. #2045 - Added a flag
OPENFGA_CONTEXT_PROPAGATION_TO_DATASTOREto control propagation of a request's context to the datastore. #1838 - Added OTEL measurement for access control store check latency and write latency due to authorization #2069
- Added
BatchCheckAPI which allows multiple check operations to be performed in a single request. It requires a uniquecorrelation_idassociated with each individual check to map each result to its associated tuple. For more details, see batch check docs #2039.
Performance
- Improve
Checkperformance in the case that the query involves resolving nested userset with type bound public access. Enable via experimental flagenable-check-optimizations. #2063
Breaking changes
- The storage adapter
ReadChanges's parameter ReadChangesOptions allows filtering byStartTime#2020. As a part of the implementation, a new server setting calledWithContinuationTokenSerializerwas introduced. If you are using OpenFGA as a library, you will need to pass in eitherStringContinuationTokenSerializer, orSQLContinuationTokenSerializer, or implement your own (if you also have your own storage adapter) - The storage adapter
ReadPagereturn parameters changed from([]*openfgav1.Tuple, []byte, error)to([]*openfgav1.Tuple, string, error)#2064 If you are using a custom storage adapter or consumeReadPagefunc in your code, you will need to update the return type and/or handling of theReadPagefunction. ErrMismatchObjectTypeerror type removed fromopenfgapackage #2064 as storage is not validating this anymore. Validation moved toReadChangesQueryimplementation.
download
unix · zip
curl -fL -o v1.8.0.zip https://ratatoskr.space/pkg/openfga/v1.8.0.zip
printf '%s %s\n' '6da08f8fa2104126430ac35fa63d2f8d00935d06b96deb568655ef49025b0f5b' 'v1.8.0.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/openfga/v1.8.0.zip"
$out = "v1.8.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "6da08f8fa2104126430ac35fa63d2f8d00935d06b96deb568655ef49025b0f5b") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1.8.0.tar.gz https://ratatoskr.space/pkg/openfga/v1.8.0.tar.gz
printf '%s %s\n' 'b2f7476f111ec699b81147c1c15c304eb88caf8e70c700e8bc4aa540ddef4276' 'v1.8.0.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/openfga/v1.8.0.tar.gz"
$out = "v1.8.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "b2f7476f111ec699b81147c1c15c304eb88caf8e70c700e8bc4aa540ddef4276") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v1.8.0.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga/v1.8.0.zip
printf '%s %s\n' '6da08f8fa2104126430ac35fa63d2f8d00935d06b96deb568655ef49025b0f5b' 'v1.8.0.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga/v1.8.0.zip"
$out = "v1.8.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "6da08f8fa2104126430ac35fa63d2f8d00935d06b96deb568655ef49025b0f5b") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1.8.0.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga/v1.8.0.tar.gz
printf '%s %s\n' 'b2f7476f111ec699b81147c1c15c304eb88caf8e70c700e8bc4aa540ddef4276' 'v1.8.0.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga/v1.8.0.tar.gz"
$out = "v1.8.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "b2f7476f111ec699b81147c1c15c304eb88caf8e70c700e8bc4aa540ddef4276") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v1.8.0.zip | zip | 689.3 KiB |
blake3-24 b0658fe767fb50051e9eb702607adf5a1928a837054ae2d9
sha256 6da08f8fa2104126430ac35fa63d2f8d00935d06b96deb568655ef49025b0f5b
sha1 fc1d070e89fa13fc24b2498d8e05839e5343c065
|
| v1.8.0.tar.gz | tar.gz | 516.4 KiB |
blake3-24 d16aa95c1edbf0e270aa03fff15209f9d1e8a928876b2fe8
sha256 b2f7476f111ec699b81147c1c15c304eb88caf8e70c700e8bc4aa540ddef4276
sha1 ca329621405eb8563711da414b9fb756a849f0fc
|
go module archive
module zip with the module path rewritten to this mirror; fetched by go get through the
GOPROXY route
| artifact | format | size | hashes |
|---|---|---|---|
| v1.8.0.zip | zip | 698.5 KiB |
blake3-24 ba84261d20a7c50c9afa81d5c37c6cc12579469fa5c40af5
sha256 11e0e68cb63441e4a8bddb17dd4d5b3521b4fbb8ddf53471317f0a68d628cf6f
sha1 87bf905c6998b7485a0a1ee7a7961d88a0c56c41
|
install
bazel
http_archive(
name = "openfga",
urls = ["https://ratatoskr.space/pkg/openfga/v1.8.0.tar.gz"],
integrity = "sha256-svdHbxEexpm4EUfBwVwwTriMr45wxwDovEqlQN3vQnY=",
strip_prefix = "openfga-v1.8.0",
)
zig
.url = "https://ratatoskr.space/pkg/openfga/v1.8.0.tar.gz",
go
GOPROXY=https://ratatoskr.space GOSUMDB=off go get ratatoskr.space/pkg/openfga@v1.8.0
install via yggdrasil mesh
bazel
http_archive(
name = "openfga",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga/v1.8.0.tar.gz"],
integrity = "sha256-svdHbxEexpm4EUfBwVwwTriMr45wxwDovEqlQN3vQnY=",
strip_prefix = "openfga-v1.8.0",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga/v1.8.0.tar.gz",
go
GOPROXY=http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg GOSUMDB=off GOINSECURE=14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/* go get 14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/openfga@v1.8.0