lochmueller / seocli

SEO CLI Tool
8 stars 2 forks source link

Composer conflict with seocli 0.2.1 and most recent TYPO3 version #9

Closed seirerman closed 7 months ago

seirerman commented 1 year ago

Hey!

We've been successfully using lochmueller/seocli 0.2.1 on TYPO3 10.4. But after updating to TYPO3 11.5 I get a composer error when trying to install seocli 0.2.1:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - paquettg/php-html-parser[3.0.0, ..., 3.1.1] require guzzlehttp/psr7 ^1.6 -> found guzzlehttp/psr7[1.6.0, ..., 1.9.0] but the package is fixed to 2.4.3 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.
    - lochmueller/seocli 0.2.1 requires paquettg/php-html-parser ^3.0||^3.1 -> satisfiable by paquettg/php-html-parser[3.0.0, 3.0.1, 3.1.0, 3.1.1].
    - Root composer.json requires lochmueller/seocli 0.2.1 -> satisfiable by lochmueller/seocli[0.2.1].

Seems like paquettg/php-html-parser is requiring an older version of guzzlehttp/psr7 than the TYPO3 core does.

> composer why guzzlehttp/psr7
guzzlehttp/guzzle 7.5.0    requires guzzlehttp/psr7 (^1.9 || ^2.4) 
typo3/cms-core    v11.5.22 requires guzzlehttp/psr7 (^2.4.3)  

So it's either possible to use TYPO3 11.5.19 and seocli 0.2.1 (even if TYPO3 11.5.22 is the most recent version as of today), or TYPO3 11.5.22 and seocli 0.1.0.

Any idea how to fix this?

lochmueller commented 7 months ago

I updated a few packages, perhaps this problem is gone: https://github.com/lochmueller/seocli/commit/13a2b7f2af3d6379d7a746a5dfdbea5ccedfb864 If you find a good alternative to paquettg/php-html-parser would be also cool, because the package is not maintained anymore.

i close this issue.

seirerman commented 4 months ago

Now that we are finally on PHP 8.1 I still can't update to 0.2.2 in TYPO3 11.5.37:

Your requirements could not be resolved to an installable set of packages.
  Problem 1
    - Root composer.json requires lochmueller/seocli ^0.2 -> satisfiable by lochmueller/seocli[0.2.0, 0.2.1, 0.2.2].
    - georgringer/news[11.4.0, ..., 11.4.2] require typo3/cms-core ^11.5.24 || ^12.4.2 -> satisfiable by typo3/cms-core[v11.5.24, ..., v11.5.37].
    - typo3/cms-core[v11.5.20, ..., v11.5.37] require guzzlehttp/psr7 ^2.4.3 -> satisfiable by guzzlehttp/psr7[2.4.3, ..., 2.6.2].
    - You can only install one version of a package, so only one of these can be installed: guzzlehttp/psr7[1.0.0, ..., 1.9.1, 2.1.0, ..., 2.6.2].
    - Conclusion: install guzzlehttp/psr7 1.9.1 (conflict analysis result)
    - Root composer.json requires georgringer/news ^11.4 -> satisfiable by georgringer/news[11.4.0, 11.4.1, 11.4.2].

Only if I remove georgringer/news (which isn't actually an option) I can install seocli 0.2.2, but then TYPO3 will be downgraded to 11.5.19 (also not an option).

Oh, and https://github.com/paquettg/php-html-parser/issues/294 mentions voku/simple_html_dom as an alternative.

lochmueller commented 4 months ago

Hey @seirerman

Could you send a PR?

Regards, Tim