github ory/keto v0.14.0

3 days ago

We're excited to announce the release of ORY Keto v0.14.0! This update builds on our commitment to providing a robust, flexible, and high-performance authorization server by introducing new features, important fixes, and several improvements that enhance both user and developer experiences.


  • New Features & Enhancements
    • Batched and Chunked Operations: Improve performance with batched and chunked insertion and deletion of relation tuples and UUID mappings by @alnr.
    • GRPC Server Options: Configure your gRPC server with additional options for more fine-tuned control, thanks to @Demonsthere’s contribution.
    • Listen Files Update: The server now writes listen files with the actual address, allowing for better test setups by using port 0, contributed by @zepatrik.
    • Inspect Option: Easily inspect registry details with the new Inspect option added by @alnr.
  • Fixes & Corrections
    • Fixed HTTP request metrics and various smaller bugs to ensure smoother operations.
    • Resolved issues with persister initialization when operating without a network, courtesy of @alnr.
  • Quality Improvements & Automation
    • Introduced new dependency updates and security fixes, including upgrades to critical libraries like Cobra, gRPC, and OpenTelemetry.
    • Integrated a kubescape image scanner to enhance security checks, contributed by @Demonsthere.

A warm welcome to our new contributors:

  • @BenjaminNolan – for their first contribution in fixing a typo in our validation module.
  • @patrickduffy95 – for their inaugural contribution in introducing batch checks for relations.
  • @eroznik – for their first contribution, enhancing HTTP request metrics.

We appreciate your contributions and the fresh perspectives you bring to ORY Keto!


For a complete list of changes, please see the full changelog.

Thank you for being part of the ORY community. We’re excited to see how these updates help you build even more secure and scalable solutions.

Happy coding!

Bug Fixes

  • Add not to docs (#1530) (3b3b768)

  • Http request metrics(#1611) (#1612) (b2e6d34)

  • Missing persister when initializing without network (#1525) (e675d5b):

    • fix: missing persister when initializing without network
    • chore: ignore CVE-2024-3154
  • Typo in error message (#1520) (4a35588)

  • Unused order (#1590) (47548c0):

    We filter for nid = ? so there is no point in ordering by nid.

    Column shard_id is the prefix (CONSTRAINT keto_relation_tuples_uuid_pkey PRIMARY KEY (shard_id ASC, nid ASC)) so it should not impact the query planner.

Code Generation

  • Pin v0.14.0 release commit (613779b)

Features

  • Add ContextKeyDialFunc (#1534) (567ceb9)

  • Add grpc server opts config (#1524) (7278e44):

    • feat: add grpc server opts config
    • chore: bump base image
    • chore: temp ignore cve
  • Add Inspect option to registry (#1523) (213cfa5):

    • chore: add alnr to codeowners
    • feat: add Inspect option
  • Batch check relations (#1521) (d670d50):

    • batch check relations
    • rename path
    • shared parallelized function. batch size and parallelization configurable
    • move check to engine
    • fail individual requests
    • move parallelization factor to be request parameter
    • document and update configurable max batch size
    • end to end tests
    • unit tests
    • cleanup
    • run make format
    • fix pipeline failures
    • PR Feedback: move parallelization factor to config. Use err group
  • Batched and chunked insertion+deletion of relation tuples (#1631) (c01b9c3)

  • Check migration status in readiness probes (#1643) (e270279)

  • Deduplicate UUID mappings before database insert (#1654) (ac812ee)

  • Write listen files with actual address (#1607) (0ba58c7):

    This change improves spinning up test Keto servers that use port 0. A new config value enables to set a file path where the server writes the actual address it listens on after it was assigned a random free port by the OS.

Changelog

Artifacts can be verified with cosign using this public key.

Don't miss a new keto release

NewReleases is sending notifications on new releases.