misc/migration/3.5.3_Any.py
author Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
Fri, 19 Mar 2010 19:21:31 +0100
changeset 4964 d9e8af8a7a42
parent 3666 7d0f6234b001
child 8798 cdab3aadc679
permissions -rw-r--r--
[source] implement storages right in the source rather than in hooks The problem is that Storage objects will most probably change entity's dictionary so that values are correctly set before the source's corresponding method (e.g. entity_added()) is called. For instance, the BFSFileStorage will change the original binary data and replace it with the destination file path in order to store the file path in the database. This change must be local to the source in order not to impact other hooks or attribute access during the transaction, the whole idea being that the same application code should work exactly the same whether or not a BFSStorage is used or not.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3611
8d7d4a67820f [migration] fix 3.5.3_Any.py for migrations starting from before 3.5
Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
parents: 3528
diff changeset
     1
# type attribute might already be there if migrating from
8d7d4a67820f [migration] fix 3.5.3_Any.py for migrations starting from before 3.5
Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
parents: 3528
diff changeset
     2
# version < 3.5 to version >= 3.5.3, BaseTransition being added
8d7d4a67820f [migration] fix 3.5.3_Any.py for migrations starting from before 3.5
Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
parents: 3528
diff changeset
     3
# in bootstrap_migration
3666
7d0f6234b001 fix migration script
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 3612
diff changeset
     4
if versions_map['cubicweb'][0] >= (3, 5, 0):
3611
8d7d4a67820f [migration] fix 3.5.3_Any.py for migrations starting from before 3.5
Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
parents: 3528
diff changeset
     5
    add_attribute('BaseTransition', 'type')
3612
0605d8755613 [migration] make it more explicit that BaseTransition upgrade should only be done if migrating from version prior to 3.5
Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
parents: 3611
diff changeset
     6
    sync_schema_props_perms('state_of')
0605d8755613 [migration] make it more explicit that BaseTransition upgrade should only be done if migrating from version prior to 3.5
Adrien Di Mascio <Adrien.DiMascio@logilab.fr>
parents: 3611
diff changeset
     7
    sync_schema_props_perms('transition_of')