Search code examples
yii2composer-phpyii2-advanced-appkartik-v

Unable to install any new extensions via composer in yii2


I am trying to install a new widget but I am getting error. I need help with getting a solution.

F:\xampp\htdocs\mdc>composer require --prefer-dist miloschuman/yii2-highcharts-widget "*"
    ./composer.json has been updated
    The "extra.asset-installer-paths" option is deprecated, use the "config.fxp-asset.installer-paths" option
    Loading composer repositories with package information
    Updating dependencies (including require-dev)
    Your requirements could not be resolved to an installable set of packages.


  Problem 1
    - mongosoft/yii2-soap-client dev-master requires ext-soap * -> the requested PHP extension soap is missing from your system.
    - mongosoft/yii2-soap-client dev-master requires ext-soap * -> the requested PHP extension soap is missing from your system.
    - mongosoft/yii2-soap-client dev-master requires ext-soap * -> the requested PHP extension soap is missing from your system.
    - Installation request for mongosoft/yii2-soap-client (locked at dev-master, required as *) -> satisfiable by mongosoft/yii2-soap-client[dev-master].

  To enable extensions, verify that they are enabled in your .ini files:
    - F:\xampp\php\php.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, reverting ./composer.json to its original content.

Composer.json

{
"name": "yiisoft/yii2-app-advanced",
"description": "Yii 2 Advanced Project Template",
"keywords": ["yii2", "framework", "advanced", "project template"],
"homepage": "http://www.yiiframework.com/",
"type": "project",
"license": "BSD-3-Clause",
"support": {
    "issues": "https://github.com/yiisoft/yii2/issues?state=open",
    "forum": "http://www.yiiframework.com/forum/",
    "wiki": "http://www.yiiframework.com/wiki/",
    "irc": "irc://irc.freenode.net/yii",
    "source": "https://github.com/yiisoft/yii2"
},
"minimum-stability": "dev",
"require": {
    "php": ">=5.4.0",
    "yiisoft/yii2": "~2.0.13",
    "yiisoft/yii2-bootstrap": "~2.0.0",
    "yiisoft/yii2-swiftmailer": "~2.0.0",
    "luoxiaojun1992/yii2-tinker": "*",
    "kartik-v/yii2-grid": "@dev",
    "kartik-v/yii2-widget-select2": "@dev",
    "kartik-v/yii2-mpdf": "*",
    "moonlandsoft/yii2-phpexcel": "*",
    "nirvana-msu/yii2-showloading": "1.0.*@dev",
    "kartik-v/yii2-krajee-base": "^2.0",
    "kartik-v/yii2-widget-spinner": "@dev",
    "edwinhaq/yii2-simple-loading": "*",
    "c006/yii2-submit-spinner": "*",
    "kartik-v/yii2-detail-view": "*",
    "fedemotta/yii2-cronjob": "*",
    "kartik-v/yii2-widget-datetimepicker": "*",
    "kartik-v/yii2-date-range": "dev-master",
    "phpoffice/phpspreadsheet": "^1.2",
    "linslin/yii2-curl": "*",
    "kartik-v/yii2-widget-fileinput": "@dev",
    "kartik-v/yii2-dialog": "*",
    "google/apiclient": "^2.0",
    "delight-im/str": "^2.4",
    "mongosoft/yii2-soap-client": "*",
    "kartik-v/yii2-export": "@dev"


},
"require-dev": {
    "yiisoft/yii2-debug": "~2.0.0",
    "yiisoft/yii2-gii": "~2.0.0",
    "yiisoft/yii2-faker": "~2.0.0",

    "codeception/base": "^2.2.3",
    "codeception/verify": "~0.3.1"
},

"config": {
    "process-timeout": 1800
},
"extra": {
    "asset-installer-paths": {
        "npm-asset-library": "vendor/npm",
        "bower-asset-library": "vendor/bower"
    }
},
"scripts": {
    "post-install-cmd": "php init --env=Development --overwrite=n"
},
"autoload": {
    "psr-4": {
        "kartik\\spinner\\": "",
        "nirvana\\showloading\\": ""
    }
}
}

I have already looked into some solutions but none of them have worked. I am stuck at this from hours and I am getting nothing in result. How can I solve this issue?


Solution

  • Update

    Above all the main problem wasnt addressed which was labelled as Problem 1 in the OP's added exception message. Sorry about that.

    You should also change the version of the yii2-soap-client to dev-master from * as the error says

    Installation request for mongosoft/yii2-soap-client (locked at dev-master, required as *) -> satisfiable by mongosoft/yii2-soap-client[dev-master].

    so change the

    "mongosoft/yii2-soap-client": "*"
    

    to

    "mongosoft/yii2-soap-client": "dev-master"
    

    in your composer.json and make sure you have enabled the extension in you php.ini


    You need to switch to asset-packagist and disable the fxp-asset

    For disabling the fxp asset add the following under the config

    "fxp-asset": {
        "enabled": false
    }
    

    then switch to packagist via

    "repositories": [
        {
            "type": "composer",
            "url": "https://asset-packagist.org"
        }
    ]
    

    See reference here

    So your composer.json should look like below

    {
        "name": "yiisoft/yii2-app-advanced",
        "description": "Yii 2 Advanced Project Template",
        "keywords": ["yii2", "framework", "advanced", "project template"],
        "homepage": "http://www.yiiframework.com/",
        "type": "project",
        "license": "BSD-3-Clause",
        "support": {
            "issues": "https://github.com/yiisoft/yii2/issues?state=open",
            "forum": "http://www.yiiframework.com/forum/",
            "wiki": "http://www.yiiframework.com/wiki/",
            "irc": "irc://irc.freenode.net/yii",
            "source": "https://github.com/yiisoft/yii2"
        },
        "minimum-stability": "dev",
        "require": {
            "php": ">=5.4.0",
            "yiisoft/yii2": "~2.0.13",
            "yiisoft/yii2-bootstrap": "~2.0.0",
            "yiisoft/yii2-swiftmailer": "~2.0.0",
            "luoxiaojun1992/yii2-tinker": "*",
            "kartik-v/yii2-grid": "@dev",
            "kartik-v/yii2-widget-select2": "@dev",
            "kartik-v/yii2-mpdf": "*",
            "moonlandsoft/yii2-phpexcel": "*",
            "nirvana-msu/yii2-showloading": "1.0.*@dev",
            "kartik-v/yii2-krajee-base": "^2.0",
            "kartik-v/yii2-widget-spinner": "@dev",
            "edwinhaq/yii2-simple-loading": "*",
            "c006/yii2-submit-spinner": "*",
            "kartik-v/yii2-detail-view": "*",
            "fedemotta/yii2-cronjob": "*",
            "kartik-v/yii2-widget-datetimepicker": "*",
            "kartik-v/yii2-date-range": "dev-master",
            "phpoffice/phpspreadsheet": "^1.2",
            "linslin/yii2-curl": "*",
            "kartik-v/yii2-widget-fileinput": "@dev",
            "kartik-v/yii2-dialog": "*",
            "google/apiclient": "^2.0",
            "delight-im/str": "^2.4",
            "mongosoft/yii2-soap-client": "dev-master",
            "kartik-v/yii2-export": "@dev"
    
    
        },
        "require-dev": {
            "yiisoft/yii2-debug": "~2.0.0",
            "yiisoft/yii2-gii": "~2.0.0",
            "yiisoft/yii2-faker": "~2.0.0",
    
            "codeception/base": "^2.2.3",
            "codeception/verify": "~0.3.1"
        },
    
        "config": {
            "process-timeout": 1800,
            "fxp-asset": {
                "enabled": false
            }
        },
        "extra": {
            "asset-installer-paths": {
                "npm-asset-library": "vendor/npm",
                "bower-asset-library": "vendor/bower"
            }
        },
        "scripts": {
            "post-install-cmd": "php init --env=Development --overwrite=n"
        },
        "autoload": {
            "psr-4": {
                "kartik\\spinner\\": "",
                "nirvana\\showloading\\": ""
            }
        },
        "repositories": [{
            "type": "composer",
            "url": "https://asset-packagist.org"
        }]
    }