Replies: 1 comment
-
+1 to a possible CueLang integration, even just for simple things like validating the URLs passed in when connecting |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I am hitting an issue with the data schema getting out of shape with consumers. Yeah its the old age problem...
Protobuf, json schema, open api, etc etc we all know.
Everyone eventually hits this problem, unless you control everything Or have a gateway where you hand tune the mappings Or just keep a version of everything running for ever. Many ways to skin the Evolvable Schema cat - all the approaches have their tradeoffs :)
SO what about Thema and Cue ???
Thema is being used in grafana, and uses linages to formally have forwards and backwards schema compat.
https://github.com/grafana/thema
docs: https://github.com/grafana/thema/blob/gen-lineages/docs/overview.md explains it better than me.
https://www.youtube.com/watch?v=PKI75E_odOw really hits the nail on the head with the problem i have using nats with coordination or lack of coordination.
https://github.com/grafana/thema/tree/gen-lineages is able to point at a open API or JSON Schema and generate the thema Cue definitions.
This might be a creat option for NATS JSM
But also for Nats Users and their own data schema
I like how the lineage allows the schema evolution to be tunable rather then being assumed.
You can see how Grafana uses it.
https://github.com/grafana/grafana/blob/80f6560c9c/pkg/coremodel/dashboard/coremodel.cue
Perf wise no idea yet.
Beta Was this translation helpful? Give feedback.
All reactions