deb-murano/murano/dsl
Stan Lagun fb593ab439 External object IDs couldn't be used in template() contracts
Due to the bug in object serializer, when template() contract
serialized the template to a dictionary, instead of object IDs
for the objects outside of serialized tree it put the object body.
Thus when new objects were created from the template, they all
had copies of that object with different IDs rather than copies
of the ID string (i.e. references to the same object).

Also template() contract tried to serialize the template on each of
the 2 object model load passes even though the result from the first
pass is never used. However, during first pass the model could contain
forward-references to objects that are not loaded yet so attempt to
serialize such model could fail.

Change-Id: I9d81f10c160c44e6405b54f5470904064c1d4852
Closes-Bug: #1689769
2017-05-19 19:19:07 +00:00
..
contracts External object IDs couldn't be used in template() contracts 2017-05-19 19:19:07 +00:00
principal_objects Serialization of destruction dependencies 2016-09-14 03:48:00 +00:00
__init__.py Rename muranoapi to murano 2014-05-27 15:14:44 +04:00
attribute_store.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
constants.py Metadata storage in object model 2016-10-05 11:51:37 +00:00
context_manager.py Use more generic "type" name instead of "murano_class" 2016-02-26 17:25:25 +03:00
dsl_exception.py Py3 compatibility fixes 2016-03-03 13:02:45 +00:00
dsl_types.py Break cyclic references in DSL 2016-09-14 03:42:59 +00:00
dsl.py Ability to retrieve current/owner user/project 2016-11-24 02:07:34 -08:00
exceptions.py Fix syntax errors of exception print 2016-11-25 12:09:55 +08:00
executor.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
expressions.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
helpers.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
lhs_expression.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
macros.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
meta.py On-demand garbage collection 2016-09-14 03:43:09 +00:00
murano_method.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
murano_object.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
murano_package.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
murano_property.py New framework for contracts 2016-08-29 17:14:03 +00:00
murano_type.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
namespace_resolver.py Support of MuranoPL extended metadata was added 2016-03-03 12:32:19 +00:00
object_store.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
package_loader.py Fix used package versions for stable inheritance 2016-07-26 20:59:36 -07:00
reflection.py On-demand garbage collection 2016-09-14 03:43:09 +00:00
schema_generator.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
serializer.py External object IDs couldn't be used in template() contracts 2017-05-19 19:19:07 +00:00
session_local_storage.py Major refactoring of how OS clients are created and managed 2016-02-20 17:59:11 +03:00
typespec.py Type name resolution was fixed 2016-08-30 11:28:23 -07:00
virtual_exceptions.py Replace unicode with six.text_type 2015-12-28 05:07:08 -08:00
yaql_expression.py Use precompiled regex for yaql expression detection 2016-02-28 19:59:49 +03:00
yaql_functions.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00
yaql_integration.py Replace six.iteritems() with .items() 2017-05-03 09:17:18 +00:00