thecodeinfluencer / create-daraja-app

Bootstrap MPesa Daraja APIs across different frameworks with a single command.
https://www.npmjs.com/package/create-daraja-app
2 stars 3 forks source link

[mpesa-laravel-express] Your requirements could not be resolved to an installable set of packages #7

Open thecodeinfluencer opened 4 months ago

thecodeinfluencer commented 4 months ago

Description

Getting the title error on the mpesa-laravel-express template

Steps to reproduce

Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.

  Problem 1
    - league/flysystem-local is locked to version 3.25.1 and an update of this package was not requested.
    - league/flysystem-local 3.25.1 requires ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
  Problem 2
    - league/mime-type-detection is locked to version 1.15.0 and an update of this package was not requested.
    - league/mime-type-detection 1.15.0 requires ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
  Problem 3
    - league/flysystem-local 3.25.1 requires ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
    - league/flysystem 3.27.0 requires league/flysystem-local ^3.0.0 -> satisfiable by league/flysystem-local[3.25.1].
    - league/flysystem is locked to version 3.27.0 and an update of this package was not requested.

To enable extensions, verify that they are enabled in your .ini files:
    - C:\tools\php83\php.ini
You can also run `php --ini` in a terminal to see which files are used by PHP in CLI mode.
Alternatively, you can run Composer with `--ignore-platform-req=ext-fileinfo` to temporarily ignore these required extensions.

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

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

  Problem 1
    - laravel/framework[v11.0.0, ..., v11.9.2] require league/flysystem ^3.8.0 -> satisfiable by league/flysystem[3.8.0, ..., 3.28.0].
    - league/flysystem[3.3.0, ..., 3.14.0] require league/mime-type-detection ^1.0.0 -> satisfiable by league/mime-type-detection[1.0.0, ..., 1.15.0].
    - league/flysystem[3.15.0, ..., 3.28.0] require league/flysystem-local ^3.0.0 -> satisfiable by league/flysystem-local[3.15.0, ..., 3.28.0].
    - league/mime-type-detection[1.0.0, ..., 1.3.0] require php ^7.2 -> your php version (8.3.7) does not satisfy that requirement.
    - league/mime-type-detection[1.4.0, ..., 1.15.0] require ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
    - league/flysystem-local[3.15.0, ..., 3.28.0] require ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension.
    - Root composer.json requires laravel/framework ^11.0 -> satisfiable by laravel/framework[v11.0.0, ..., v11.9.2].

To enable extensions, verify that they are enabled in your .ini files:
    - C:\tools\php83\php.ini
You can also run `php --ini` in a terminal to see which files are used by PHP in CLI mode.
Alternatively, you can run Composer with `--ignore-platform-req=ext-fileinfo` to temporarily ignore these required extensions.

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

Using option --ignore-platform-req=ext-fileinfo worked for now.

$ composer install --ignore-platform-req=ext-fileinfo
Iankumu commented 4 months ago

There seems to be an extension missing from your php.ini file. You need to install & enable FileInfo PHP extension.

To enable the FileInfo extension, you need to edit your php.ini and change a single line.

Locate the line:

;extension=php_fileinfo.dll

Remove the starting comment:

extension=php_fileinfo.dll