Skip to content

Releases: apigee/registry

v0.5.6

06 Sep 17:26
86315f3
Compare
Choose a tag to compare

New configuration for registry tool, database-related improvements to registry-server

This release adds a new configuration mechanism to the registry tool that is modeled after the gcloud command. See the documentation for pkg/connection or run registry help config for details.

This release also includes database-related improvements to registry-server that include:

  • performing all mutable actions in transactions #700).
  • returning appropriate (and retryable) gRPC status codes for many database-related errors (#682, #714).
  • setting limits on connection counts to avoid overloading database backends (#725).

There were also semantic improvements to the core API:

Additionally, numerous improvements were made to the registry tool related to API scoring. See commit notes for details.

Changelog

  • 86315f3 Set limits on the number and lifetime of connections. (#725)
  • 8e82f10 deprecation warning for client env var use (#721)
  • f1e9153 Lock the table of affected entities during update operations. (#720)
  • f641fbe #711 ensure environment variables are scoped to the script (#716)
  • 68842b0 prevent deletion of the last deployment revision (#718)
  • 952753d Registry server: report AlreadyExists errors in updates as Abort to cause them to be retried (#715)
  • 0a574b1 Registry server: wrap mutating actions in transactions (#700)
  • e9c6f8c Add handlers for more possible errors that can arise during load-testing. (#714)
  • 1777bc2 Support max-actions flag in resolve (#710)
  • d172582 Remove check for specName while performing linting (#711)
  • 76088d4 Update logging interceptor to print all gRPC status codes. (#713)
  • e65afe0 #701 Update windows auth file to use registry configurations (#712)
  • 7ae47d6 fix readme formatting (#707)
  • e4ecf46 use more simple and efficient gorm upsert for save (#705)
  • 8f052b4 lint fix - simplify (#704)
  • 0ee1a0d Registry tool: Use registry config instead of env vars for scripts (#699)
  • 7bf958e improve create entity validation and efficiency (#694)
  • b108d39 disallow delete of only SpecRevision (#698)
  • 8bd4082 clone active w/ flags on config create (#695)
  • 8029db1 Add documentation to config and auth commands (#696)
  • 1343f69 Add information about server conformance and benchmark tests to the top-level README. (#690)
  • 33decc7 Fix out of range error for scores (#689)
  • 999f425 Remove cmd/registry/cmd/util.go (#687)
  • 8f8da52 Expand handling of database error codes (#682)
  • 0382b31 add project, location config and allow short names (#683)
  • a22d4ca ignore ext APG_REGISTRY vars in config tests (#685)
  • ba99327 Registry tool: add auth handling (#681)

v0.5.5

10 Aug 17:02
8b58a46
Compare
Choose a tag to compare

Ordering Support in List Methods

This release adds support for order_by fields in all list operations. For details, see comments alongside the new field declarations (example).

Additionally:

  • Core server tests can be run against remote installations.
  • registry tool configuration is now persisted in a configuration file and managed with registry tool commands.
  • Additional data is included in API style conformance reports.

Changelog

  • 8b58a46 Add metadata to conformance report (#680)
  • 213371d Update timestamp condition in scoring logic (#679)
  • 6ff58d9 Add CLI commands to manage config file (#671)
  • 7935c83 Support ordering in list operations (#674)
  • e7f9deb Replace filtering.Field type with maps (#678)
  • dfc3189 Bump protoc version to 3.21.3 (#673)
  • 9bf1213 Update timestamp condition to figure out resource regeneration (#653)
  • 4718fe1 Minor cleanup to CI tests (#670)
  • 4c73c4a Reorganize CI testing to move standalone tests later. (#669)
  • a14cd98 Update test proxy to allow core tests to run against remote hosted servers (#664)
  • 2c94ac7 replace NewClient with NewRegistryClient (#665)
  • 62bdd9f Add simple tests for the MigrateDatabase admin rpc. (#655)
  • 19c5ef3 Explicitly test listing artifacts of all parent types. (#656)
  • a7a3a44 Enable config file usage and flags (#659)

v0.5.4

21 Jul 01:41
7bc06ba
Compare
Choose a tag to compare

Improved error handling in registry-server plus controller and testing improvements

This release also includes structs in pkg/models that can be used to create YAML structures from import with the registry tool.

Changelog

  • 7bc06ba YAML structs (#657)
  • d377e31 Update wipeout test to use an auto-started server when necessary. (#654)
  • 50d5ceb Remove unencessary env vars (#648)
  • 9e1531c refactor: move /connection to /pkg/connection (#652)
  • ba2e6aa Wipeout test (#639)
  • 96abc4d Registry server: reuse PubSub client (#638)
  • aeb9ce9 Ensure that when artifacts are deleted, the deployment id matches. (#637)
  • 48a4496 Minimal initial benchmarks (#631)
  • b8aac2d Add --jobs flag to limit the number of parallel workers in the controller (#634)
  • 82c6230 Registry server: reuse db connections (#627)
  • c180a8e Fix gzip validation for UpdateApiSpec (#628)
  • 40ba2cb Use an embedded registry instance for unit tests (#610)
  • 4701f38 Add new low-level db.create() method that properly returns "AlreadyExists" (#615)
  • a6d7045 improve filtering coverage (#621)
  • 3b7533f Registry server: remove client mutex (#620)

v0.5.3

21 Jun 22:12
3bc985f
Compare
Choose a tag to compare

This contains a small update to registry-server that measures and logs lock acquisition delay in update methods, primarily to inform future improvements.

There are also a few changes to the registry tool related to work-in-progress related to style guides and scoring. Commit titles include:

  • Fix mime_type while uploading scorecards
  • Start using official styleguide protos in v1
  • Implement the behavior of "refresh" field in manifest definition

v0.5.2

14 Jun 21:46
257aefd
Compare
Choose a tag to compare

registry tool and server improvements

registry tool improvements:

  • YAML I/O is improved to run in parallel for import/export of entire projects.
  • YAML I/O supports additional artifact types (apihub extensions, used to add features to the API hub application).
  • Registry tool supports two new sub commands, registry compute score and registry compute scorecards.

registry-server improvements:

  • When the accept-encoding header is received and includes gzip, get spec contents requests return gzipped spec bodies. This allows specs to be stored that exceed the maximum gRPC message size (when uncompressed). It was already possible to upload these specs by sending them gzipped, but prior to this change, the spec getContents API would always attempt to return uncompressed specs.
  • When a postgresql create operation fails due to a unique_key violation, the API now returns the gRPC AlreadyExists status. Previously it returned Internal, suggesting that that was an internal error in registry-server.

v0.5.1

19 May 19:58
b90411a
Compare
Choose a tag to compare

Consolidated registry tool

This release contains a client-side change that moves the subcommands of the automatically-generated apg tool into the main registry tool. These methods are now available under the registry rpc subcoommand.

v0.5.0

09 May 22:58
d114442
Compare
Choose a tag to compare

Public Preview

This is a re-tagging of v0.4.6 that corresponds to the first public preview of the hosted Apigee Registry API.

v0.4.6

21 Apr 23:50
d114442
Compare
Choose a tag to compare

Go 1.18 builds, release binaries of the registry tool

Changelog

Improved performance, YAML resource upload

13 Apr 20:02
fac7198
Compare
Choose a tag to compare

This release adds significant performance improvements to listings of large collections and a new support for wildcards when listing revisions (this allows spec and deployment revisions to be listed across multiple versions and APIs). Along with other small bug fixes and general cleanup, it includes a new apply subcommand of the registry tool that is designed to work like kubectl apply. This allows APIs and artifacts to be uploaded to a registry from YAML source files, and will likely be extended to directly support all resource types (currently deployments, versions, and specs can be uploaded as subresources of APIs).

One field in specs was removed: revision_tags, which returns the tags used to tag a particular revision. We found this costly to maintain and rarely (if ever) used, so we've removed that and are open to discussions of alternate ways to obtain this information.

Revision ordering bug fix

01 Mar 17:07
9e6bb1a
Compare
Choose a tag to compare

This release contains a bug fix #468 that fixes causes the most recent revision of a spec to be returned by calls to GetSpec and similarly, the most recent revision of a deployment is now returned by GetDeployment.