--- a/misc/migration/3.14.0_Any.py Wed Oct 26 17:59:06 2011 +0200
+++ b/misc/migration/3.14.0_Any.py Thu Oct 27 10:38:02 2011 +0200
@@ -1,3 +1,13 @@
config['rql-cache-size'] = config['rql-cache-size'] * 10
add_entity_type('CWDataImport')
+
+from cubicweb.schema import CONSTRAINTS, guess_rrqlexpr_mainvars
+for rqlcstr in rql('Any X,XT,XV WHERE X is CWConstraint, X cstrtype XT, X value XV,'
+ 'X cstrtype XT, XT name IN ("RQLUniqueConstraint","RQLConstraint","RQLVocabularyConstraint"),'
+ 'NOT X value ~= ";%"').entities():
+ expression = rqlcstr.value
+ mainvars = guess_rrqlexpr_mainvars(expression)
+ yamscstr = CONSTRAINTS[rqlcstr.type](expression, mainvars)
+ rqlcstr.set_attributes(value=yamscstr.serialize())
+ print 'updated', rqlcstr.type, rqlcstr.value