barryvdh / laravel-ide-helper

IDE Helper for Laravel
MIT License
14.01k stars 1.15k forks source link

support doctrine/dbal v4.0 #1490

Open kiroto123 opened 7 months ago

kiroto123 commented 7 months ago

Versions:

Description:

since 2023 oct 1 carbonphp/carbon-doctrine-types bump version to v3.0.0, it supports only doctrine/dbal:^4.0, but ide-helper depends on doctrine/dbal: ^2.6 || ^3, and has been conflicted with ide-helper

Steps To Reproduce:

./composer.json has been updated
Running composer update barryvdh/laravel-ide-helper
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - doctrine/dbal[v2.6.0, ..., v2.9.3] require php ^7.1 -> your php version (8.2.11) does not satisfy that requirement.
    - doctrine/dbal[v2.10.0, ..., 2.10.4] require php ^7.2 -> your php version (8.2.11) does not satisfy that requirement.
    - doctrine/dbal[2.11.0, ..., 2.11.3] require php ^7.3 -> your php version (8.2.11) does not satisfy that requirement.
    - laravel/framework is locked to version v10.34.2 and an update of this package was not requested.
    - barryvdh/laravel-ide-helper v2.13.0 requires doctrine/dbal ^2.6 || ^3 -> satisfiable by doctrine/dbal[v2.6.0, ..., 2.13.9, 3.0.0, ..., 3.7.2].
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.7.2.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.4.6.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.3.8.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.3.5.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.2.2.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.1.5.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.1.0.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 3.0.0.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 2.13.9.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 2.13.8.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 2.13.1.
    - carbonphp/carbon-doctrine-types 3.0.0 conflicts with doctrine/dbal 2.12.1.
    - nesbot/carbon 2.72.0 requires carbonphp/carbon-doctrine-types * -> satisfiable by carbonphp/carbon-doctrine-types[3.0.0].
    - laravel/framework v10.34.2 requires nesbot/carbon ^2.67 -> satisfiable by nesbot/carbon[2.72.0].
    - Root composer.json requires barryvdh/laravel-ide-helper ^v2.13 -> satisfiable by barryvdh/laravel-ide-helper[v2.13.0].

Installation failed, reverting ./composer.json and ./composer.lock to their original content.

How to solve:

current can only downgrade to carbonphp/carbon-doctrine-types:^2.0 use composer update carbonphp/carbon-doctrine-types:^2.0

I hope this will help you, and I look forward to your feedback.

ljdj commented 7 months ago

Good morning, I had the same problem on laravel 10.35 Following your post, I simply did: composer update carbonphp/carbon-doctrine-types:^2.0

And then I managed to install.

May actually carbonphp/carbon-doctrine-types:3.0.0 current version

Just a small update to make.

Best wishes.

adwiv commented 6 months ago

On fresh install of Laravel 10.40.0, ide helper fails to install due to a different dependency mismatch. (The carbonphp/carbon-doctrine-types is already 2.1.0 so the suggest command does nothing).

  Problem 1
    - Root composer.json requires barryvdh/laravel-ide-helper ^v2.13 -> satisfiable by barryvdh/laravel-ide-helper[v2.13.0].
    - barryvdh/laravel-ide-helper v2.13.0 requires nikic/php-parser ^4.7 -> found nikic/php-parser[v4.7.0, ..., v4.18.0] but the 
      package is fixed to v5.0.0 (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.

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently 
locked to specific versions.
adicco commented 6 months ago

Same issue on a fresh Laravel 10.41 install:


  Problem 1
    - barryvdh/laravel-ide-helper[v1.0.0, ..., v1.5.0] require illuminate/support 4.0.x -> found illuminate/support[v4.0.0, ..
., v4.0.10] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v1.5.1, ..., v1.11.6] require illuminate/support 4.x -> found illuminate/support[v4.0.0, ...
, v4.2.17] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.0.0, ..., v2.0.3] require illuminate/support 5.0.x -> found illuminate/support[v5.0.0, ..
., v5.0.33] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.0.4, ..., v2.1.0] require illuminate/support 5.0.x|5.1.x -> found illuminate/support[v5.0
.0, ..., v5.1.41] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.1.1, ..., v2.1.4] require illuminate/support 5.0.x|5.1.x|5.2.x -> found illuminate/suppor
t[v5.0.0, ..., v5.2.45] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.2.0, ..., v2.2.2] require illuminate/support ^5.0,<5.4 -> found illuminate/support[v5.0.0
, ..., v5.3.23] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.2.3, ..., v2.3.2] require illuminate/support ^5.0,<5.5 -> found illuminate/support[v5.0.0
, ..., v5.4.36] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.4.0, ..., v2.4.1] require illuminate/support ^5.0,<5.6 -> found illuminate/support[v5.0.0
, ..., v5.5.44] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.4.2, ..., v2.4.3] require illuminate/support ^5.0,<5.7 -> found illuminate/support[v5.0.0
, ..., v5.6.39] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.5.0, ..., v2.5.3] require illuminate/support ^5.5,<5.8 -> found illuminate/support[v5.5.0
, ..., v5.7.28] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.6.0, ..., v2.6.2] require illuminate/support ^5.5,<5.9 -> found illuminate/support[v5.5.0
, ..., v5.8.36] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.6.3, ..., v2.6.6] require illuminate/support ^5.5|^6 -> found illuminate/support[v5.5.0, 
..., v5.8.36, v6.0.0, ..., v6.20.44] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.6.7, ..., v2.7.0] require illuminate/support ^5.5|^6|^7 -> found illuminate/support[v5.5.
0, ..., v5.8.36, v6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6] but these were not loaded, likely because it conflicts with anot
her require.
    - barryvdh/laravel-ide-helper v2.8.0 requires illuminate/console ^5.5 || ^6 || ^7 -> found illuminate/console[v5.5.0, ...,
 v5.8.36, v6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6] but these were not loaded, likely because it conflicts with another req
uire.
    - barryvdh/laravel-ide-helper[v2.8.1, ..., v2.8.2] require illuminate/console ^6 || ^7 || ^8 -> found illuminate/console[v
6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6, v8.0.0, ..., v8.83.27] but these were not loaded, likely because it conflicts with
 another require.
    - barryvdh/laravel-ide-helper[v2.9.0, ..., v2.11.0] require illuminate/console ^8 -> found illuminate/console[v8.0.0, ...,
 v8.83.27] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper[v2.12.0, ..., v2.12.3] require illuminate/console ^8 || ^9 -> found illuminate/console[v8.0.
0, ..., v8.83.27, v9.0.0, ..., v9.52.16] but these were not loaded, likely because it conflicts with another require.
    - barryvdh/laravel-ide-helper v2.13.0 requires nikic/php-parser ^4.7 -> found nikic/php-parser[v4.7.0, ..., v4.18.0] but t
he package is fixed to v5.0.0 (lock file version) by a partial update and that version does not match. Make sure you list it a
s an argument for the update command.
    - Root composer.json requires barryvdh/laravel-ide-helper * -> satisfiable by barryvdh/laravel-ide-helper[v1.0.0, ..., v1.```
mfn commented 5 months ago

Although I made https://github.com/barryvdh/laravel-ide-helper/pull/1502 which includes the version for dbal, I think you'll find that you can't install it with Laravel 10 currently?

Because it has set up these conflicts https://github.com/laravel/framework/blob/fb9d508f62690dbbfc44150dd2831c4bc1412f83/composer.json#L122-L123

    "conflict": {
        "carbonphp/carbon-doctrine-types": ">=3.0",
        "doctrine/dbal": ">=4.0",
        "tightenco/collect": "<5.5.33"
    },
mfn commented 5 months ago

But otherwise, you can try out my PR with: composer require --dev barryvdh/laravel-ide-helper:dev-mfn-nikic-v5

And then check if ide-helper still works for your use case.

barryvdh commented 5 months ago

Doctrine will be removed in https://github.com/barryvdh/laravel-ide-helper/pull/1512