Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Neos Con 2023: Migrating a Project to Neos 9

Neos Con 2023: Migrating a Project to Neos 9

Sebastian Kurfürst

May 26, 2023
Tweet

More Decks by Sebastian Kurfürst

Other Decks in Technology

Transcript

  1. { "name": "neos/docs-neos-io-distribution", "config": { "platform": { "php": "8.1", "ext-vips":

    "1.0.9" }, }, "require": { "php": "^8.1", "neos/neos": "~8.2.0", "neos/neos-ui": "~8.2.0" } } required recommended makes composer run more deterministic
  2. { "name": "neos/docs-neos-io-distribution", "config": { "platform": { "php": "8.2", "ext-vips":

    "1.0.9" }, }, "require": { "php": "^8.2", "neos/neos": "~8.2.0", "neos/neos-ui": "~8.2.0" } } I like 8.2 :)
  3. deprecation / strict errors will still be fi xed in

    Neos/Flow PHP 8.2 workaround php.ini
  4. { "name": "neos/docs-neos-io-distribution", "config": { "platform": { "php": "8.2" }

    }, "require": { "php": "^8.2", "neos/neos-development-collection": "9.0.x-dev", "neos/flow-development-collection": "8.3.x-dev", "neos/neos-ui": "9.0.x-dev", "neos/neos-ui-compiled": "9.0.x-dev", "neos/eventstore": "@dev", "neos/eventstore-doctrineadapter": "@dev" } } no stable releases yet no 9.x Flow branch yet no package splits active yet
  5. Option 2: Remove the package and add it to the

    ToDo list. Option 3: Fork the package, raise the version, and pull request. Option 1: Check if the package has already a Neos 9 compatible version.
  6. Option 2: Remove the package and add it to the

    ToDo list. Option 3: Fork the package, raise the version, and pull request. Option 1: Check if the package has already a Neos 9 compatible version.
  7. { "require": { "carbon/includeassets": "dev-master as 5.5.0" }, "repositories": {

    "distribution": { "type": "path", "url": "./DistributionPackages/*" }, "Carbon.IncludeAssets": { "type": "vcs", "url": "https://github.com/skurfuerst/Carbon.IncludeAssets" } } } reference the forked repo before, we had version 5.5.0 installed; and we want to replace this version with our fork
  8. :(

  9. return static function (RectorConfig $rectorConfig): void { $rectorConfig->sets([ NeosRectorSets::CONTENTREPOSITORY_9_0 ]);

    $rectorConfig->paths([ // TODO: Start adding your paths here, like so: __DIR__ . '/DistributionPackages/', __DIR__ . '/Packages/Plugins/Jonnitto.PrettyEmbedHelper', __DIR__ . '/Packages/Carbon/Carbon.IncludeAssets', __DIR__ . '/Packages/Carbon/Carbon.Link', ]); }; I needed to auto-migrate some more packages
  10. Dimension Con fi guration Neos: ContentRepositoryRegistry: contentRepositories: default: contentDimensions: language:

    label: Languages icon: icon-language values: en: label: English de: label: German no more "presets"
  11. Site Con fi guration Neos: Neos: sites: '*': contentDimensions: resolver:

    factoryClassName: Neos\Neos\FrontendRouting\DimensionResolution\Resolver\ UriPathResolverFactory options: segments: - dimensionIdentifier: language # dimensionValue => uriPathSegment (empty uriPathSegment allowed) dimensionValueMapping: en: '' de: 'de'