centraldogma-0.25.0
New features
-
Server
- API responses are now compressed with deflate or gzip if requested, based on the
accept-encodingheader. #211
- API responses are now compressed with deflate or gzip if requested, based on the
-
Client: Golang
-
Added watcher support to Golang library. #207
// Create a Query with a Path to watch. query := &Query{Path: "/a.json", Type: JSONPath} // Create a FileWatcher which is notified when the specific file // in the "bar" repository in the "foo" project is modified. fw, _ := c.FileWatcher("foo", "bar", query) // Create a listener which prints the value when the watcher is notified. listener := func(revision int, value interface{}) { fmt.Println(value) } // Register it. fw.Watch(listener)
-
-
Client: Java
-
Added
CentralDogmaEndpointGroupfor Armeria. #105// Build a new EndpointGroup that fetches the endpoint list from Central Dogma. final CentralDogma dogma = new LegacyCentralDogmaBuilder()...build(); final CentralDogmaEndpointGroup group = CentralDogmaEndpointGroup.of( dogma, "myProj", "myRepo", Query.ofJson("/endpoints.json") EndpointListDecoder.JSON); // Wait until the initial query succeeds. group.awaitInitialEndpoints(); // Register the group and use it in the URI. EndpointGroupRegistry.register( "mygroup", group, EndpointSelectionStrategy.WEIGHTED_ROUND_ROBIN); final HttpClient client = HttpClient.of("http://group:mygroup/"); final AggregatedHttpMessage res = client.get("/foo").aggregate().join();
-
Improvements
- Server
Bug fixes
- Server
Dependencies
- Armeria 0.63.1 -> 0.64.0