Seravo / seravo-plugin

Enhances WordPress with Seravo specific features and integrations
https://seravo.com/
GNU General Public License v2.0
38 stars 16 forks source link

Updating composer/installers package #222

Closed ghost closed 5 years ago

ghost commented 5 years ago

We are using rarst/wps -plugin in our development environment setup, and found out that latest version of this plugin (1.2) requires composer/installers package with version 1.6 which then clashes with the version requirement in this plugin.

Is there any reason why the composer/installers -package couldn't be updated from v1.0.12 to v1.6.0?

ottok commented 5 years ago

I think the version has been locked down mostly to minimize regressions. You can change your own composer.json file to allow new versions, and run composer update --prefer-stable --prefer-dist --no-dev and then report here about your experiences. If you or we others don't find any regressions we can update that dependency.

ghost commented 5 years ago

Okay so here's what I found out about this:

  1. Using Seravo/wordpress with default values, running composer install & vagrant up -> everything works as it should.
  2. Requiring latest rarst/wps package with composer require rarst/wps:1.2 gives following error:

    
    Your requirements could not be resolved to an installable set of packages.
    
    Problem 1
    - Installation request for rarst/wps 1.2 -> satisfiable by rarst/wps[1.2].
    - rarst/wps 1.2 requires composer/installers ~1.6 -> satisfiable by composer/installers[v1.6.0] but these conflict with your requirements or minimum-stability.

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

3. So this is where I update the version of composer/installers -package for Seravo/wordpress with version 1.6 in composer.json: `"composer/installers": "v1.6",` and run the command `composer update --prefer-stable --prefer-dist --no-dev`. This gives the following error:

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

Problem 1

Running update with --no-dev does not mean require-dev is ignored, it just means the packages will not be installed. If dev requirements are blocking the update you have to resolve those problems.


So it would seem that we would have to update both Seravo/wordpress and this Seravo/seravo-plugin to both have the same requirement of composer/installers with version 1.6.

At this point, I removed the Seravo/seravo-plugin from composer.json of Seravo/wordpress and ran `composer update --prefer-stable --prefer-dist --no-dev` again to update the composer/installers version to 1.6. After this I downloaded the Seravo/seravo-plugin manually and extracted it into mu-plugins.

After I've done these, I then updated the composer.json of Seravo/seravo-plugin for version 1.6 and ran `composer update --prefer-stable --prefer-dist --no-dev` in the plugin's directory -> everything seems to be working fine, no errors that I found out of.