Skip to content

V17/nested content#903

Merged
KevinJump merged 6 commits intov17/mainfrom
v17/nested-content
Mar 4, 2026
Merged

V17/nested content#903
KevinJump merged 6 commits intov17/mainfrom
v17/nested-content

Conversation

@KevinJump
Copy link
Owner

Add support to migrate a nested content datatype and nested content content values to block list on import.

this will give use native support to migrate when importing legacy (e.g v13) usync files that contain a nested content element.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds migration support so legacy Nested Content datatypes and stored Nested Content property values can be converted to Block List during import (e.g., importing v13 uSync files into v17+).

Changes:

  • Run datatype configuration serializers based on the source editor alias from the import XML (enabling legacy-alias migrations).
  • Add Nested Content → Block List configuration migration serializer.
  • Add Nested Content → Block List value conversion when a Block List value cannot be parsed during block-value processing.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
uSync.Core/Serialization/Serializers/MediaSerializer.cs Adds logging around media creation failures.
uSync.Core/Serialization/Serializers/DataTypeSerializer.cs Uses the imported editor alias when selecting config serializers to support legacy migrations.
uSync.Core/Mapping/SyncBlockMapperBase.cs Falls back to converting Nested Content JSON into Block List JSON when block JSON can’t be parsed.
uSync.Core/Mapping/Mappers/NestedContentToBlockListHelper.cs Implements Nested Content value → Block List value conversion helper.
uSync.Core/DataTypes/DataTypeSerializers/NestedContentMigratingConfig.cs Implements Nested Content datatype config → Block List config migration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

KevinJump and others added 2 commits March 4, 2026 14:32
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI commented Mar 4, 2026

@KevinJump I've opened a new pull request, #904, to work on those changes. Once the pull request is ready, I'll request review from you.

Copy link
Contributor

Copilot AI commented Mar 4, 2026

@KevinJump I've opened a new pull request, #905, to work on those changes. Once the pull request is ready, I'll request review from you.

Copilot AI and others added 2 commits March 4, 2026 14:41
…#904)

* Initial plan

* Use OfType instead of Cast for resilience to non-object array entries

Co-authored-by: KevinJump <431231+KevinJump@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: KevinJump <431231+KevinJump@users.noreply.github.com>
* Initial plan

* Fix MediaSerializer build error and plan nested content migration tests

Co-authored-by: KevinJump <431231+KevinJump@users.noreply.github.com>

* Add NUnit migration tests for NestedContentMigratingConfig

Co-authored-by: KevinJump <431231+KevinJump@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: KevinJump <431231+KevinJump@users.noreply.github.com>
@KevinJump KevinJump merged commit 8d07ec7 into v17/main Mar 4, 2026
4 checks passed
@KevinJump KevinJump deleted the v17/nested-content branch March 4, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants