2

I'm trying to update all my project plugins. Over a year ago I originally installed Sprout Forms beta as a trial and have since purchased the license.

When I run craft update I get

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

Problem 1

  • barrelstrength/sprout-forms-range-slider 1.0.5 requires barrelstrength/sprout-forms ^3.0.0-beta.47 -> satisfiable by barrelstrength/sprout-forms[v3.x-dev].

  • barrelstrength/sprout-forms-range-slider 1.0.5 requires barrelstrength/sprout-forms ^3.0.0-beta.47 -> satisfiable by barrelstrength/sprout-forms[v3.x-dev].

  • Conclusion: don't install barrelstrength/sprout-forms v3.x-dev

  • Installation request for barrelstrength/sprout-forms-range-slider 1.0.5 -> satisfiable by barrelstrength/sprout-forms-range-slider[1.0.5].

<warning>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.</warning>

I get this (or similar) message often. I want to resolve it once and for all. Do I just uninstall Sprout Forms beta? Someone reassure me I won't lose all my data.

  • Probably going to be best to talk to Barrel Strength directly about this... – Jalen Davenport Apr 26 '19 at 19:47
1

Running composer commands will not affect the data in your Craft database directly. The only scenario that might update your data or schema would be if you added a new plugin that had an install migration or updated a plugin or module that included an migration. These migrations would not get run during your composer command, but could get triggered when you visited the /admin area of your control panel or ran a command like ./craft migrate/all.

Due to the timing of multiple major releases between Sprout, modules that Sprout depends on, and Craft (Craft 3.1 should have also been considered a major release), there are several tricky upgrade scenarios between Sprout and Craft between the Craft 3.0 and 3.1 set of dates.

The easiest path around these is to upgrade to the latest of everything all at once. composer update alone will not upgrade to the latest major release, only to the latest releases defined in your composer.json. To make sure you are upgrading to the latest of everything:

  1. Review each package in the require array of your composer.json
  2. Update each package to the latest version release.
  3. Once all packages are defined with their latest versions, run composer update

Regarding version constraints in your composer.json file, you'll probably want to require an explicit version of Craft and us the Caret Version Range for plugins:

{
  ...
  "require": {
    "craftcms/cms": "3.1.23",
    "vlucas/phpdotenv": "^2.4.0",
    "barrelstrength/sprout-forms": "^3.0.0-beta.50"
    "barrelstrength/sprout-forms-range-slider": "^1.5.0"
  }
  ...
}

By updating to the latest versions of everything all at once, you'll ensure that the major releases of supporting modules that may be used by more than one plugin are updated and resolved together.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.