eloquent-model-generator icon indicating copy to clipboard operation
eloquent-model-generator copied to clipboard

Laravel 11 support

Open dembal1990 opened this issue 10 months ago • 10 comments

Hy!

I have anew laravel 11 project and I have an issue with this package installation.

My composer.json:

{
    "name": "laravel/laravel",
    "type": "project",
    "description": "The skeleton application for the Laravel framework.",
    "keywords": ["laravel", "framework"],
    "license": "MIT",
    "require": {
        "php": "^8.3",
        "arondeparon/laravel-request-sanitizer": "^5.0",
        "laravel/framework": "^11.0",
        "laravel/horizon": "^5.23",
        "laravel/sanctum": "^4.0",
        "laravel/tinker": "^2.9",
        "spatie/laravel-activitylog": "^4.8",
        "spatie/laravel-medialibrary": "^11.4",
        "spatie/laravel-permission": "^6.4"
    },
    "require-dev": {
        "fakerphp/faker": "^1.23",
        "kitloong/laravel-migrations-generator": "^7.0",
        "larastan/larastan": "^2.0",
        "laravel/pint": "^1.15",
        "laravel/sail": "^1.29",
        "mockery/mockery": "^1.6",
        "nunomaduro/collision": "^8.0",
        "phpunit/phpunit": "^10.5",
        "spatie/laravel-ignition": "^2.4"
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/",
            "Database\\Factories\\": "database/factories/",
            "Database\\Seeders\\": "database/seeders/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "scripts": {
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover --ansi"
        ],
        "post-update-cmd": [
            "@php artisan vendor:publish --tag=laravel-assets --ansi --force"
        ],
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate --ansi",
            "@php -r \"file_exists('database/database.sqlite') || touch('database/database.sqlite');\"",
            "@php artisan migrate --graceful --ansi"
        ],
        "lint": [
            "./vendor/bin/pint"
        ]
    },
    "extra": {
        "laravel": {
            "dont-discover": []
        }
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true,
        "allow-plugins": {
            "pestphp/pest-plugin": true,
            "php-http/discovery": true
        }
    },
    "minimum-stability": "stable",
    "prefer-stable": true
}

Error log:

sail@b3eb4778e71b:/var/www/html$ composer require krlove/eloquent-model-generator 2.0.2 --dev
Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version
./composer.json has been updated
Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version
Running composer update krlove/eloquent-model-generator
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Root composer.json requires krlove/eloquent-model-generator 2.0.2 -> satisfiable by krlove/eloquent-model-generator[2.0.2].
    - krlove/eloquent-model-generator 2.0.2 requires illuminate/database ^9.0 || ^10.0 -> found illuminate/database[v9.0.0, ..., v9.52.16, v10.0.0, ..., v10.48.4] but these were not loaded, likely because it conflicts with another require.


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

dembal1990 avatar Apr 04 '24 14:04 dembal1990

On it

krlove avatar Apr 08 '24 15:04 krlove

Similar Issue here

PS C:\Users\Killi\workspace\php\zcas-Job-Scheduler> composer require krlove/eloquent-model-generator --dev Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version ./composer.json has been updated Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version Running composer update krlove/eloquent-model-generator Loading composer repositories with package information Updating dependencies Your requirements could not be resolved to an installable set of packages.

Problem 1 - krlove/eloquent-model-generator[1.0.0, ..., 1.2.7] require laravel/framework ^5.0 -> found laravel/framework[v5.0.0, ..., v5.8.38] but it conflicts with your root composer.json require (^11.0). - krlove/eloquent-model-generator[1.3.0, ..., 1.3.2] require illuminate/database ^5.0 -> found illuminate/database[v5.0.0, ..., v5.8.36] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator[1.3.3, ..., 1.3.4] require illuminate/database ^5.0 || ^6.0 -> found illuminate/database[v5.0.0, ..., v5.8.36, v6.0.0, ..., v6.20.44] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator 1.3.5 requires illuminate/database ^5.0 || ^6.0 || ^7.0 -> found illuminate/database[v5.0.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 require. - krlove/eloquent-model-generator[1.3.6, ..., 1.3.7] require illuminate/database ^5.0 || ^6.0 || ^7.0 || ^8.0 -> found illuminate/database[v5.0.0, ..., v5.8.36, v6.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. - krlove/eloquent-model-generator 1.3.8 requires illuminate/database ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 -> found illuminate/database[v5.0.0, ..., v5.8.36, v6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6, v8.0.0, ..., v8.83.27, v9.0.0, ..., v9.52.16] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator[2.0, ..., 2.0.1] require illuminate/database ^9.0 -> found illuminate/database[v9.0.0, ..., v9.52.16] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator 2.0.2 requires illuminate/database ^9.0 || ^10.0 -> found illuminate/database[v9.0.0, ..., v9.52.16, v10.0.0, ..., v10.48.5] but these were not loaded, likely because it conflicts with another require. - Root composer.json requires krlove/eloquent-model-generator * -> satisfiable by krlove/eloquent-model-generator[1.0.0, ..., 1.3.8, 2.0, 2.0.1, 2.0.2].

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions. You can also try re-running composer require with an explicit version constraint, e.g. "composer require krlove/eloquent-model-generator:*" to figure out if any version is installable, or "composer require krlove/eloquent-model-generator:^2.1" if you know which you need.

Installation failed, reverting ./composer.json and ./composer.lock to their original content. PS C:\Users\Killi\workspace\php\zcas-Job-Scheduler>

killian-coder avatar Apr 10 '24 08:04 killian-coder

Good night, same problem here with laravel 11:

$ composer require krlove/eloquent-model-generator --dev ./composer.json has been updated Running composer update krlove/eloquent-model-generator Loading composer repositories with package information Updating dependencies Your requirements could not be resolved to an installable set of packages.

Problem 1 - krlove/eloquent-model-generator[1.0.0, ..., 1.2.7] require laravel/framework ^5.0 -> found laravel/framework[v5.0.0, ..., v5.8.38] but it conflicts with your root composer.json require (^11.0). - krlove/eloquent-model-generator[1.3.0, ..., 1.3.2] require illuminate/database ^5.0 -> found illuminate/database[v5.0.0, ..., v5.8.36] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator[1.3.3, ..., 1.3.4] require illuminate/database ^5.0 || ^6.0 -> found illuminate/database[v5.0.0, ..., v5.8.36, v6.0.0, ..., v6.20.44] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator 1.3.5 requires illuminate/database ^5.0 || ^6.0 || ^7.0 -> found illuminate/database[v5.0.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 require. - krlove/eloquent-model-generator[1.3.6, ..., 1.3.7] require illuminate/database ^5.0 || ^6.0 || ^7.0 || ^8.0 -> found illuminate/database[v5.0.0, ..., v5.8.36, v6.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. - krlove/eloquent-model-generator 1.3.8 requires illuminate/database ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 -> found illuminate/database[v5.0.0, ..., v5.8.36, v6.0.0, ..., v6.20.44, v7.0.0, ..., v7.30.6, v8.0.0, ..., v8.83.27, v9.0.0, ..., v9.52.16] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator[2.0, ..., 2.0.1] require illuminate/database ^9.0 -> found illuminate/database[v9.0.0, ..., v9.52.16] but these were not loaded, likely because it conflicts with another require. - krlove/eloquent-model-generator 2.0.2 requires illuminate/database ^9.0 || ^10.0 -> found illuminate/database[v9.0.0, ..., v9.52.16, v10.0.0, ..., v10.48.7] but these were not loaded, likely because it conflicts with another require. - Root composer.json requires krlove/eloquent-model-generator * -> satisfiable by krlove/eloquent-model-generator[1.0.0, ..., 1.3.8, 2.0, 2.0.1, 2.0.2].

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.
You can also try re-running composer require with an explicit version constraint, e.g. "composer require krlove/eloquent-model-generator:*" to figure out if any version is installable, or "composer require krlove/eloquent-model-generator:^2.1" if you know which you need.

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

Ricardo-Dv avatar Apr 11 '24 01:04 Ricardo-Dv

The same. Will it be fixed?

vchik avatar Apr 11 '24 07:04 vchik

I gues this is not gona be a fast fix, because of this change.

I made a laravel 10 project, restore my schame and run the model generate command. After of that I copy this models to my new laravel 11 project. This can work if you need i immadiatly.

dembal1990 avatar Apr 11 '24 08:04 dembal1990

@dembal1990 you're right, Laravel 11 has removed Doctrine DBAL dependency in favour of Laravel's native Schema\Builder. This requires major rework for this project and that might take a while. For now the only promise I can give is that I'm working on it and aiming to ship as soon as possible.

krlove avatar Apr 13 '24 11:04 krlove