Using Firebase - cannot install kreait/laravel-firebase composer package
-
Hi, I'm using Bagisto to build a webstore for my clients, along with a companion mobile app.
However, one of the features they want on the mobile app is a chat screen, and that necessitates the use of Firebase (not even going to consider using AWS SNS for this project). Since Firebase requires a separate registration, I figured it was best to handle that registration in the Bagisto app during the registration process (in the
Webkul\Customer\Http\Controllers\RegistrationController
).I tried installing the Kreait Laravel Firebase package into my Bagisto application, but was met with the following error:
Problem 1 - kreait/laravel-firebase 3.x-dev is an alias of kreait/laravel-firebase dev-main and thus requires it to be installed too. - kreait/laravel-firebase[dev-main, 3.2.0] require kreait/firebase-php ^5.24 -> satisfiable by kreait/firebase-php[5.24.0, 5.25.0, 5.x-dev]. - kreait/firebase-php[5.24.0, ..., 5.x-dev] require kreait/firebase-tokens ^1.16.1 -> satisfiable by kreait/firebase-tokens[1.16.1]. - kreait/firebase-tokens 1.16.1 requires lcobucci/jwt ^3.4.6|^4.0.4|^4.1.5 -> found lcobucci/jwt[3.4.6, 3.4.x-dev, 4.0.4, ..., 4.2.x-dev] but the package is fixed to 3.3.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. - Root composer.json requires kreait/laravel-firebase ^3.2 -> satisfiable by kreait/laravel-firebase[3.2.0, 3.x-dev (alias of dev-main)]. Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.
Trying the suggestion
--with-all-dependencies
fails with 12 problems, mostly stating that a certain package is locked to a certain version and that version requires an Illuminate package, which was found but not loaded, "likely because it conflicts with another require".How can I install this package, or another, so I can integrate Bagisto with Firebase?
Reference
Here is the full error message after
--with-all-dependencies
is set and the previous command run:michael@Michaels-MacBook-Pro Ncode % composer require kreait/laravel-firebase -W Using version ^3.2 for kreait/laravel-firebase ./composer.json has been updated Running composer update kreait/laravel-firebase --with-all-dependencies 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 laravel/framework ^8.0, found laravel/framework[v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 2 - astrotomic/laravel-translatable is locked to version v11.9.1 and an update of this package was not requested. - astrotomic/laravel-translatable v11.9.1 requires illuminate/database 5.8.* || ^6.0 || ^7.0 || ^8.0 -> found illuminate/database[v5.8.0, ..., 5.8.x-dev, v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 3 - barryvdh/laravel-debugbar is locked to version v3.6.4 and an update of this package was not requested. - barryvdh/laravel-debugbar v3.6.4 requires illuminate/routing ^6|^7|^8 -> found illuminate/routing[v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 4 - intervention/imagecache is locked to version 2.5.1 and an update of this package was not requested. - intervention/imagecache 2.5.1 requires illuminate/cache ^5.5|~6|~7|~8 -> found illuminate/cache[v5.5.0, ..., 5.8.x-dev, v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 5 - kalnoy/nestedset is locked to version v5.0.5 and an update of this package was not requested. - kalnoy/nestedset v5.0.5 requires illuminate/database ~5.7.0|~5.8.0|^6.0|^7.0|>=8.0 <8.43.0 -> found illuminate/database[v5.7.0, ..., 5.8.x-dev, v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., v8.42.1] but these were not loaded, likely because it conflicts with another require. Problem 6 - konekt/concord is locked to version 1.10.1 and an update of this package was not requested. - konekt/concord 1.10.1 requires illuminate/console ~6.0|~7.0|~8.0 -> found illuminate/console[v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 7 - laravel/scout is locked to version v8.6.1 and an update of this package was not requested. - laravel/scout v8.6.1 requires illuminate/bus ^6.0|^7.0|^8.0 -> found illuminate/bus[v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 8 - laravel/socialite is locked to version v5.2.5 and an update of this package was not requested. - laravel/socialite v5.2.5 requires illuminate/http ^6.0|^7.0|^8.0 -> found illuminate/http[v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 9 - laravel/tinker is locked to version v2.6.2 and an update of this package was not requested. - laravel/tinker v2.6.2 requires illuminate/console ^6.0|^7.0|^8.0 -> found illuminate/console[v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 10 - laravel/ui is locked to version v3.3.2 and an update of this package was not requested. - laravel/ui v3.3.2 requires illuminate/console ^8.42 -> found illuminate/console[v8.42.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 11 - prettus/l5-repository is locked to version 2.7.9 and an update of this package was not requested. - prettus/l5-repository 2.7.9 requires illuminate/config ~5.0|~6.0|~7.0|^8.0 -> found illuminate/config[v5.0.0, ..., 5.8.x-dev, v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. Problem 12 - facade/flare-client-php 1.9.1 requires illuminate/pipeline ^5.5|^6.0|^7.0|^8.0 -> found illuminate/pipeline[v5.5.0, ..., 5.8.x-dev, v6.0.0, ..., 6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev] but these were not loaded, likely because it conflicts with another require. - facade/ignition 2.16.1 requires facade/flare-client-php ^1.9.1 -> satisfiable by facade/flare-client-php[1.9.1]. - facade/ignition is locked to version 2.16.1 and an update of this package was not requested. Installation failed, reverting ./composer.json and ./composer.lock to their original content.
-
Just delete the
lock
file and then runcomposer install
.