Releases: raystack/stencil
Releases · raystack/stencil
v0.2.0
What's Changed
- feat: stencil cli for namespace and schema by @ishanarya0 in #97
- docs: migrate to docusaurus for docs by @ravisuhag in #98
- feat: add refresh strategy to stencil client by @harikrishnakanchi in #99
- feat!: group server commands by @ravisuhag in #100
- feat(cli): cli cleanup by @ishanarya0 in #103
- refactor(cli): delete graph and print cmd files by @ishanarya0 in #106
- feat: diff between 2 schema versions by @NNcrawler in #104
- feat(api): add search API by @ramey in #96
- docs: update stencil docs by @harikrishnakanchi in #107
- feat(js-client): add refresh strategy to JS client by @harikrishnakanchi in #108
- docs: update server start instructions by @ravisuhag in #109
- ci: add releaser and linter by @ravisuhag in #101
- chore: release 0.2 by @ravisuhag in #110
- fix(server): capture metrics for custom handlers by @harikrishnakanchi in #111
- ci: fix release workflow by @harikrishnakanchi in #112
New Contributors
- @NNcrawler made their first contribution in #104
Full Changelog: v0.1.6...v0.2.0
v0.1.6
v0.1.6 (2022-01-11)
⚠ BREAKING CHANGES
- java-client: removed
String getAppName()
andboolean shouldAutoRefreshCache()
methods from StencilClient interface - java-client: changed protoUpdateListener to schemaUpdateListener interface.
Moved statsDClient and schemaUpdateListener to Stencil Config. Removed redundant stencilClientFactory methods. - java-client: Cache is updated on every refresh Regardless of the change in schema.
Introduced version based schema refresh, it utilizes versions API that returns list of available versions provided by stencil server, uses versioned URL to download descriptor.
This versioned URL returns immutable schema.
By default previous long polling refresh strategy will be used. - java-client: Clients need to construct
org.apache.http.Header
object, then add it to the list.
This way clients can have full control over what headers being sent to stencil server.
For example setting bearer token in previous version would be
StencilConfig config = StencilConfig.builder().fetchAuthBearerToken(token).build();
Above snippet will be changed to
Header authHeader = new BasicHeader(HttpHeaders.AUTHORIZATION, "Bearer " + token);
List<Header> headers = new ArrayList<Header>();
headers.add(authHeader);
StencilConfig config = StencilConfig.builder().fetchHeaders(headers).build();
- java-client: removed parser package
- java-client: DescriptorAndTypeName model was used to keep type name and descriptor together.
However one can easily generate type name from descriptor by prefixing "." infront of it's fullname
Features
- java-client: add parse method to StencilClient (38a88c4)
- java-client: add Parser interface (acd3cda)
- java-client: add version based schema refresh (8573f0c)
- java-client: enable toBuilder for StencilConfig (7caae92)
- java-client: modify apache http library as API (e24c2ae)
- java-client: move statsDClient, schemaUpdateListener to stencil config (06b24fa)
- java-client: remove DescriptorAndTypeName model (7800ecf)
- java-client: remove fetchAuthHeader config and add generic fetchHeaders config. (6c2823c)
- java-client: set cache TTL default value to 24hrs (a8c69d9)
- java-client: set default value for fetchbackoffms config (bef158e)
- java-client: tidy up schemaCacheLoader contructor (ce26370)
Bug Fixes
- java-client: add json dependency (1b76768)
Code Refactoring
- java-client: clean up stencil client interface (085f51e)
v0.1.5
v0.1.4
v0.1.4 (2021-12-07)
⚠ BREAKING CHANGES
- server: remove cloud storage support as backend store
Features
- add caching (#92) (c6f4f34)
- add cli commands (#53) (78502c1)
- add CNCF spec compatible apis (#87) (958d3b9)
- add db abstraction to support multiple dbs (#59) (03104ce)
- add dev command grouping (ad2189f)
- add merge descriptor feature providing backward compatibility (#58) (90a8931)
- add protobuf compatibility checks (#88) (62a5555)
- add search API (#72) (1cf4b58)
- add support for visualisation of proto descriptor file dependencies (#71) (fe5bbf0)
- add type API (#82) (b68d488)
- embed database migrations (#55) (dd5e8c4)
- print cmd for uploaded snapshots (#60) (5aca993)
- support different content types based on schema type (#91) (1fc405e)
- cmd: add custom help and grouping for commands (#57) (837b40f)
- go-client: add Serialize() method to serialize data to protobuf (#62) (f81115d)
- provide flag to load server config (#54) (d2342aa)
- support gRPC and http apis (#41) (90a5f25)
- server: add docker-compose for dev setup (a8ab18c)
- server: add migrate command (d986f36)
- server: add postgres data store (1cda77d)
Bug Fixes
Code Refactoring
- server: remove cloud storage support as backend store (d19aad8)
v0.1.3
v0.1.2
v0.1.1
v0.1.0
(2021-05-11)
⚠ BREAKING CHANGES
- server: change in API contract. Removed x-scope-orgid header. Moved to namespace param.
New API endpoints starts with/v1/namespaces/{namespace}
.
Features
- go-client: add default values for options (49b38a7)
- go-client: add ParseWithRefresh method to GO client (d9a51e7)
- go-client: add refresh method to client API (904fdd4)
- js-client: add js stencil client (556825a)
- server: move x-scope-orgid header to namespace param (d02ac65)
- add authentication bearer token used for fetch requests (da7a6e0)
- add backward compatability check to descriptor create API (8d1ba88)
- add backward compatability rule checks (7dfeb4a)
- add descriptor APIs (e8e17cc)
- add docker release in github action (dcd2dc5)
- add javadoc comments (a7ee4a4)
- add metadata API (d9499ff)
- add skipRules field in descriptor upload API (4071991)
- add stencil go client (b4c4ed5)
Bug Fixes
- server: POST descriptor API to throw error if descriptor already exists (240a176)
- gradle project versioning (f0d3db7)
- handle file not found errors (df0fd3f)
- handle uploaded file read error (a93f4e2)
- hide meta.json in listing (deebb9c)
- incorrect proto name where javapackage or protopackage is empty (69de5e8)
- nil reader error if file is not found (54ba89d)
Reverts
- Revert "nexus-setup: add release step to publish to central maven" (c748cd7)