umbraco / Announcements

Subscribe to this repo to be notified about major changes in Umbraco-CMS, Deploy and Forms
MIT License
19 stars 0 forks source link

[Breaking change]: Grid Layout (Umbraco.Grid) to be deprecated from version 11 and removed in version 14 #7

Open lassefredslund opened 1 year ago

lassefredslund commented 1 year ago

Description

The old Grid Layout introduced in version 7 will not be implemented with the new backoffice that is currently expected to be introduced in version 14.

Note: Grid Layout will not be removed from existing projects in Heartcore.

Version

Umbraco 14

Previous behavior

Grid Layout could be used to present a grid for the content editor.

New behavior

Block Grid Editor can be used to present a grid for the content editor.

Type of breaking change

Reason for change

With the new backoffice we want to streamline both the developer- and editor experience while we invest our effort in property editors that we foresee usable on a long term.

Recommended action

Start using Block Grid Editor.

Affected APIs

N/A

UmbracoReynolds commented 9 months ago

This is more of a uSync question, but because that is the most official tool for migrating away from gridlayout I am going to post here. When I migrate gridlayout to blockgrid layout, how do I get the content to transfer as well?

marcemarc commented 9 months ago

@UmbracoReynolds lots of information here... https://github.com/Jumoo/uSyncMigrations but essentially you create a migration pack from your v7 site. And this uses uSync Content edition to export onto disk xml files for each content and media item... Along with uSyncs normal files for Doctype definitions... And with your grid.editors.config.js file...

You copy this pack of files to your vanilla new Umbraco site and run the first step, which is conversion... This runs the files through a set of migrators, which turn the XML for the content and media into a format for the latest edition of uSync. Transforming known legacy property editors into their modern equivalents, you can write your own migrators too...

Once converted the next step is to import the settings, this brings across all the DocTypes and DataTypes etc then third step is to import content and media across...

In the case of old grid to shiny new block grid... It will depend on whether you have created custom grid editors or not as to how successful this will be without customisation... If you are using DocTypeGridEditor to define your custom grid editors, then the existing uSync migrator will create new Element Types for use in block grid to match the DTGE definitions, and migrate everything across.. Content and Media wise...it is surprisingly successful, that said new block list can do so much more than old grid, so it can feel odd to see layout blocks called 3-3-3...

The best way to understand if it will help for your site is to give it a go in a development environment.

Also you can run Migrations from other versions other than V7, for selected editors etc, but in answer to your question it is uSync content edition that moves the content!

UmbracoReynolds commented 9 months ago

Thank you for the quick and helpful reply!

What is a step-by-step sequence of events to do an in-place migration (or a migration from v10 to v12) for content and data types? e.g. Do we need to install Usync + Usync Migrations? Then run Usync Migrations? Then import the migration?

We currently have Usync and Umbraco version 10.7.1 and Usync Migrations version 4.0.0 installed.

Currently when I do the migration, I get an error that says: "An item with the same key has already been added. Key: "

Situation: We are trying to migrate from Umbraco v10 to Umbraco v10 (v10 to v12 would be fine if easier than v10 to v10) in order to move away from NestedContent and GridLayout to the new supported datatypes. Our dilemma is none of the content that was within GridLayout is visible within BlockGridLayout after migrating.

Possible errors: