8

I'll be brief:

I have a TYPO3 with composer installed.

Let us have a look at the require part from TYPO3.

"require": {
    "php": ">=5.5.0",
    "ext-fileinfo": "*",
    "ext-json": "*",
    "ext-pcre": "*",
    "ext-session": "*",
    "ext-xml": "*",
    "psr/log": "1.0.*@dev",
    "pear/http_request2": "~2.2.1",
    "swiftmailer/swiftmailer": "~5.4.1",
    "symfony/console": "~2.7.0",
    "symfony/finder": "~2.7.0",
    "doctrine/instantiator": "~1.0.4",
    "typo3/class-alias-loader": "^1.0",
    "typo3/cms-composer-installers": "^1.2.8",
    "psr/http-message": "~1.0",
    "cogpowered/finediff": "~0.3.1",
    "mso/idna-convert": "^0.9.1"
}

As you can see TYPO3 needs "symfony/console": "~2.7.0" so that means: (>=2.7 <= 2.8)

Next to it I run a CakePHP with the migrations plugin for the custom CakePHP Part.

Let's have a look at the require part from the database migration plugin as well:

"require": {
    "php": ">=5.4",
    "robmorgan/phinx": "0.5.3",
    "cakephp/cakephp": "~3.1"
},

Nothing wrong here on the first look, but let us go in detail and have a closer look at "robmorgan/phinx": "0.5.3". This Plugin needs the following packages, and again let's have a closer look at the composer.json from "phinx".

"require": {
    "php": ">=5.4",
    "symfony/console": "~2.8|~3.0",
    "symfony/config": "~2.8|~3.0",
    "symfony/yaml": "~2.8|~3.0"
}

And now as you can see this package needs "symfony/console" at least in 2.8, but it doesn't work because TYPO3 needs it in "~2.7.0" that means: (>=2.7 <= 2.8).

I figured out the issue, but I have no idea how to solve it. I only have one solution but it is not that great, it's forking TYPO3 and editing the composer.json. But that is the very last option.

Does anyone else have a good approach on how to fix this?

Minzkraut
  • 2,149
  • 25
  • 31
TatzyXY
  • 505
  • 1
  • 6
  • 13
  • 2
    `Next to it I run a CakePHP` Why are your typo3 and CakePHP projects in the same repo - or do you mean something different (please edit the question to clarify what "next to it" means)? Are you actively using migrations? – AD7six Jul 06 '16 at 09:04
  • Yes I use now active migrations cause mysql dump files were not the best practice to manage database across all developers and dev/live servers. – TatzyXY Jul 07 '16 at 13:38
  • The short answer is: TYPO3 is in front of the app/website, but the customer wants to have a big custom part as well, so I started to code a TYPO3-Extension after I have seen how unproductive and hard to code a TYPO3-Extension is, I decided to load CakePHP 3.0 into a TYPO3-Extension, it was a bit work but its working now. I can use now the full power of Cake for example my Cake-Controllers/Tables/Entities/Views to write a TYPO-Extension. On the TYPO3-Extension I have the CakeRequest-Object and return the fully generated result from Cake as string. Cake is installed as Vendor of TYPO3. – TatzyXY Jul 07 '16 at 14:08

1 Answers1

3

You can use version 8.x of TYPO3. This version uses as requirement "symfony/console": ">=2.7 <3.1",which looks absolutly fine then.

8.x is very stable, you can use doctrine all over the place and it is the future.

Georg Ringer
  • 7,779
  • 1
  • 16
  • 34