c6a78ca8bacef1fae86eefa46e619d08f69e9cda - This kind of logic is sloppy. If at all possible, we should ensure that the data is _always_ serialized or unserialized by the time it gets into this method. (I'd prefer unserialized).
so maybe it should be on repo cache class
Comments
Comment #1
sdboyer commentedYep. The cache is conceptually responsible for bringing the repository out of the database and preparing it for use, so it's the appropriate place to unserialize.
Comment #2
marvil07 commentedComment #3
marvil07 commentedI'm reviewing this now, but ..
I suggested to make that on the repo cache class, but repo cache class instances the repo class.
In general, we are not using cache classes from the class itself, so in that way we avoid circular references.
And in this case in specific, repo cache class instances repo class, so repo cache class __calls__
repo::build()and then, we want to have that unserializing there :-/suggestions? or I suppose is better to mark this as by design(or think another way to change
is_string()to something else)Comment #4
marvil07 commentedNow that we use a VersioncontrolEntityController, that relies on dbtng, so IIRC the serialized thing is done at that level, and we do not have to deal with it.
@sdboyer, please correct me if I'm wrong, if not, we can close this issue.
Comment #5
sdboyer commentedYep, this is all taken care of nicely now with the entity controller system. Actually, it's settling on VersioncontrolEntity::build() that make it all unified and set.