Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Part of the confusion and discussion about migrations has been that the attributes define properties in the physical storage layer. It's not ideal to continue adding adapter specific features to attribute definitions. This adds a reserved property to attribute definitions labeled
meta
that allows anything to be passed down to the adapter'sregisterConnection
method.The goal being that any adapter specific details can be defined and passed through. At the same time it cleans up the arguments being passed to
registerConnection
so that instead of trying to make sense of all the internal Waterline details you simple get a dictionary with the keys being the collection identity and each collection containing the following data:definition
- the normalized table definition that was already being used by adapters. This stays the same.attributes
- user defined attributes, including themeta
field mentioned above.meta
- a pre-existing object that defined extra generated metadata about a collection, such as the fact that it is a junctionTable.I would still like to move all migrations out of Waterline in future releases but this will continue to be part of the spec.