diff --git a/Resources/doc/DSL/ContentTypeGroups.yml b/Resources/doc/DSL/ContentTypeGroups.yml index 5a39e570..95563af9 100644 --- a/Resources/doc/DSL/ContentTypeGroups.yml +++ b/Resources/doc/DSL/ContentTypeGroups.yml @@ -9,6 +9,7 @@ attribute: attributeId # An attribute to get the value of for the reference. # Supports content type group id and identifier # The shorthand 'id' can be used instead of 'content_type_group_id' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -41,6 +42,7 @@ # Supports content type group id and identifier # The shorthand 'id' can be used instead of 'content_type_group_id' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -66,6 +68,7 @@ not: # matches elements NOT satisfying the wrapped condition _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' references: # Optional. See above for allowed values + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/ContentTypes.yml b/Resources/doc/DSL/ContentTypes.yml index 3ae20c7b..de237ac8 100644 --- a/Resources/doc/DSL/ContentTypes.yml +++ b/Resources/doc/DSL/ContentTypes.yml @@ -123,6 +123,7 @@ # attributes.title.required (boolean value) # attributes.ezobjectrelationlist."field-settings".selectionContentTypes.length(@) (nr. of cotent-types allowed in an object-relations field) # (for the full syntax supported, see jmespath) + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -189,6 +190,7 @@ # The shorthand 'id' can be used instead of 'content_type_id' # The shorthand 'identifier' can be used instead of 'content_type_identifier' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -215,6 +217,7 @@ not: # matches elements NOT satisfying the wrapped condition _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' references: # Optional. See above for allowed values + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/Languages.yml b/Resources/doc/DSL/Languages.yml index 5224052e..8779a5fa 100644 --- a/Resources/doc/DSL/Languages.yml +++ b/Resources/doc/DSL/Languages.yml @@ -11,6 +11,7 @@ identifier: referenceId # A string used to identify the reference attribute: attributeId # An attribute to get the value of for the reference. # Supports: language_id, enabled, language_code, name + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/Locations.yml b/Resources/doc/DSL/Locations.yml index 4fa76b47..fbed5e3f 100644 --- a/Resources/doc/DSL/Locations.yml +++ b/Resources/doc/DSL/Locations.yml @@ -39,6 +39,7 @@ # depth, is_hidden, main_language_code, main_location_id, main_language_code, # modification_date, name, owner_id, parent_location_id, path, priority, # publication_date, section_id, sort_field, sort_order) + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -119,6 +120,7 @@ # modification_date, name, owner_id, parent_location_id, path, priority, # publication_date, section_id, sort_field, sort_order) # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -177,6 +179,7 @@ # modification_date, name, owner_id, parent_location_id, path, priority, # publication_date, section_id, sort_field, sort_order) # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -242,6 +245,7 @@ # modification_date, name, owner_id, parent_location_id, path, priority, # publication_date, section_id, sort_field, sort_order) # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/ObjectStatesAndGoups.yml b/Resources/doc/DSL/ObjectStatesAndGoups.yml index f0d7a0e8..41591d8b 100644 --- a/Resources/doc/DSL/ObjectStatesAndGoups.yml +++ b/Resources/doc/DSL/ObjectStatesAndGoups.yml @@ -16,6 +16,7 @@ attribute: attribute # An attribute to get the value of for the reference. # Supports: object_state_group_id, object_state_group_identifier # The shorthand 'id' can be used instead of 'object_state_group_id' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -55,6 +56,7 @@ # Supports: object_state_group_id, object_state_group_identifier # The shorthand 'id' can be used instead of 'object_state_group_id' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -80,6 +82,7 @@ not: # matches elements NOT satisfying the wrapped condition _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' references: # Optional. See above for allowed values + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -103,6 +106,7 @@ attribute: attribute # An attribute to get the value of for the reference. # Supports object_state_id, priority # The shorthand 'id' can be used instead of 'object_state_id' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -142,6 +146,7 @@ # Supports object_state_id, priority # The shorthand 'id' can be used instead of 'object_state_id' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -166,6 +171,7 @@ not: # matches elements NOT satisfying the wrapped condition _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' references: # Optional. See above for allowed values + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/RolesAndPolicies.yml b/Resources/doc/DSL/RolesAndPolicies.yml index 5ea1eb67..a3289a54 100644 --- a/Resources/doc/DSL/RolesAndPolicies.yml +++ b/Resources/doc/DSL/RolesAndPolicies.yml @@ -86,6 +86,7 @@ # Supports: role_id and role_identifier # The shorthand 'id' can be used instead of 'role_id' # The shorthand 'identifier' can be used instead of 'role_identifier' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -140,6 +141,7 @@ # The shorthand 'id' can be used instead of 'role_id' # The shorthand 'identifier' can be used instead of 'role_identifier' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -164,6 +166,7 @@ not: # matches elements NOT satisfying the wrapped condition _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' references: # Optional. See above for allowed values + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/Sections.yml b/Resources/doc/DSL/Sections.yml index 34bec370..ab5f77bd 100644 --- a/Resources/doc/DSL/Sections.yml +++ b/Resources/doc/DSL/Sections.yml @@ -45,6 +45,7 @@ # Supports: section_id, section_identifier, section_name # The shorthand 'id' can be used instead of 'user_id' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -69,6 +70,7 @@ not: # matches elements NOT satisfying the wrapped condition _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' references: # Optional. See above for allowed values + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/Tags.yml b/Resources/doc/DSL/Tags.yml index 05a8c29d..0dee70c1 100644 --- a/Resources/doc/DSL/Tags.yml +++ b/Resources/doc/DSL/Tags.yml @@ -13,6 +13,7 @@ attribute: attributeId # The attribute to get the value of for the reference # supports: always_available, depth, main_language_code, main_tag_id, modification_date, # path, parent_tag_id, remote_id, keyword + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -53,6 +54,7 @@ attribute: attributeId # The attribute to get the value of for the reference # supports: always_available, depth, main_language_code, main_tag_id, modification_date, # path, parent_tag_id, remote_id, keyword + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -82,6 +84,7 @@ attribute: attributeId # The attribute to get the value of for the reference # supports: always_available, depth, main_language_code, main_tag_id, modification_date, # path, parent_tag_id, remote_id, keyword + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -96,6 +99,7 @@ attribute: attributeId # The attribute to get the value of for the reference # supports: always_available, depth, main_language_code, main_tag_id, modification_date, # path, parent_tag_id, remote_id, keyword + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/Trash.yml b/Resources/doc/DSL/Trash.yml index 9e135b39..4090aea8 100644 --- a/Resources/doc/DSL/Trash.yml +++ b/Resources/doc/DSL/Trash.yml @@ -17,6 +17,7 @@ identifier: referenceId # A string used to identify the reference attribute: attribute # An attribute to get the value of for the reference. # Supports: see location/create + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -32,6 +33,7 @@ identifier: referenceId # A string used to identify the reference attribute: attribute # An attribute to get the value of for the reference. # Supports: see location/create + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/Resources/doc/DSL/UsersAndGroups.yml b/Resources/doc/DSL/UsersAndGroups.yml index b7d5018e..bade4032 100644 --- a/Resources/doc/DSL/UsersAndGroups.yml +++ b/Resources/doc/DSL/UsersAndGroups.yml @@ -17,6 +17,7 @@ attribute: attribute # An attribute to get the value of for the reference. # Supports user_id, email, enabled, login # The shorthand 'id' can be used instead of 'user_id' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -53,6 +54,7 @@ # Supports user_id, email, enabled, login # The shorthand 'id' can be used instead of 'user_id' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -95,6 +97,7 @@ attribute: attribute # An attribute to get the value of for the reference. # Supports: user_group_id # The shorthand 'id' can be used instead of 'user_group_id' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -130,6 +133,7 @@ # Supports: user_group_id # The shorthand 'id' can be used instead of 'user_group_id' # 'count' can be used to set a reference to the number of items matched + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp @@ -151,6 +155,7 @@ _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' - _condition_: value # where _condition_ can be any of ones specified above, including 'and' and 'or' + references_type: "array" # Optional. If not set, created references values will be scalars. If set, they will be arrays if: # Optional. If set, the migration step will be skipped unless the condition is matched "reference:_ref_name": # name of a reference to be used for the test _operator_: value # allowed operators: eq, gt, gte, lt, lte, ne, count, length, regexp diff --git a/WHATSNEW.md b/WHATSNEW.md index e94c42b9..1daa5774 100644 --- a/WHATSNEW.md +++ b/WHATSNEW.md @@ -1,25 +1,25 @@ -Version 5.1 (unreleased) -======================== - -* New: references are now resolved for in the `keyword` element for `tag/create` and `tag/update`. This makes it - easier to mass-create eztag tags in conjunction with the eZLoremIpsum bundle - -* New: tags can now be matched by their parent tag id - -* New: its is now possible to set references to a tag `keyword` - -* New: it is easier to create/update tags in a single language (the main language of current siteaccess is used if unspecified) +Version 5.1 +=========== * New: it is now possible to set references when a migration step results in a list of items, and not just in a single item. The resulting reference will have a value which is an array instead of a scalar value. This has to be specifically enabled for each migration step where references are expected to be multi-valued: - refernces_type: array + references_type: array references: - attribute: some_id identifier: my_array_ref +* New: references are now resolved for in the `keyword` element for `tag/create` and `tag/update`. This makes it + easier to mass-create eztag tags in conjunction with the eZLoremIpsum bundle + +* New: tags can now be matched by their parent tag id + +* New: its is now possible to set references to a tag `keyword` + +* New: it is easier to create/update tags in a single language (the main language of current siteaccess is used if unspecified) + * BC changes: - the RepositoryExecutor class now expects subclasses to implement method `getReferencesValues` and not `setReferences`