Schema Evolution #4684
Replies: 3 comments 1 reply
-
Next StepsWhile we generally need to solve all of these problems, we are looking to take an iterative approach such that we can ship a solution to a small piece of one of the problems and then grow that solution over time to support more use cases and cover more of the problem space. The initial narrow problem which we are looking at currently is a naming problem. More specifically when generating the application graph in Composer, each object that is added to the graph needs to be given a label to describe itself when rendered, however different objects have different opinions on what that field is. A concrete example of this is, within our codebase, it is not consistent whether schemas use |
Beta Was this translation helpful? Give feedback.
-
We might want to start storing the schema in ECHO then. The peer that creates an object upserts it's schema into the DB. This allows us to keep object - schema consistency when switching versions. For example objects created by other peers with diffrent schemas will still be introspectable despite the local peer having different/missing schema. In the future applications might includes migration functions between schemas. Migration functions will form edges of a graph with schema versions as nodes. |
Beta Was this translation helpful? Give feedback.
-
We've begun to lay the ground work for some sort of future lensing solution with how we're handling universal drag & drop in Composer currently. #4696 introduces an abstraction that allows plugins to register data transformations between different types. It is currently very limited and primitive but we believe provides us a good abstraction for which we could layer in more comprehensive lensing later. |
Beta Was this translation helpful? Give feedback.
-
Problems
a. Two different applications want to operate on the same data but have different ways of interpreting the same data
b. Support for dragging data from application into another and having the destination application interpret the data in a way that makes sense to its own context
Prior Art
Beta Was this translation helpful? Give feedback.
All reactions