Having an issue with updating an old Opigno server from 2.16 to 3.0 via 2.29. For those unfamiliar, it's a distribution of Drupal that has some extra features for lessons, courses, etc.
When performing the update, the tool fails with "Your requirements could not be resolved to an installable set of packages.", indicating some sort of package conflict or dependency issue.
I've followed the instructions here:
After downloading the composer file for 2.29 and replacing my composer.json with the one linked in the instructions, I get the following output from composer update:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- drupal/ckeditor_font dev-1.x requires drupal/core ^9.3 || ^10 -> satisfiable by drupal/core[9.3.0-alpha1, ..., 9.5.x-dev, 10.0.0-alpha1, ..., 10.1.x-dev].
- You can only install one version of a package, so only one of these can be installed: drupal/core[8.0.0-beta6, ..., 8.9.x-dev, 9.0.0-alpha1, ..., 9.5.x-dev, 10.0.0-alpha1, ..., 10.1.x-dev].
- You can only install one version of a package, so only one of these can be installed: drupal/core[8.7.0-alpha1, ..., 8.9.x-dev, 9.0.0-alpha1, ..., 9.5.x-dev, 10.0.0-alpha1, ..., 10.1.x-dev].
- You can only install one version of a package, so only one of these can be installed: drupal/core[8.4.0-rc1, ..., 8.9.x-dev, 9.0.0-alpha1, ..., 9.4.3, 10.0.0-alpha1, ..., 10.0.0-alpha6].
- drupal/ckeditor_font 1.x-dev is an alias of drupal/ckeditor_font dev-1.x and thus requires it to be installed too.
- opigno/opigno_lms 2.29.0 requires drupal/core 8.9.20 -> satisfiable by drupal/core[8.9.20].
- opigno/opigno_lms 2.29.0 requires drupal/ckeditor_font 1.x-dev -> satisfiable by drupal/ckeditor_font[1.x-dev (alias of dev-1.x)].
- Root composer.json requires opigno/opigno_lms 2.29.0 -> satisfiable by opigno/opigno_lms[2.29.0].
I have also attempted to use other flags in the composer command such as "--no-plugins", "--ignore-platform-reqs", "--with-all-dependencies", etc.
I have also attempted to go from 2.16 directly to 3.x, and though the composer update works fairly well I get issues with database migrations after the update is complete. 2.x is based on Drupal 8.x, and Opigno 3.x is based on a more recent Drupal 9.x release.
The server I'm working is a VM with 2C/4G and lots of free disk space. The box is Ubuntu 22.04.5 LTS with PHP 7.4 & Nginx 1.18.0.
My question: is there a simple way to force the update to 2.29 to take place, or a set of manual SQL scripts I can apply to skip the intermediate stage? I have a testing server on hand, so I'm open to any experimental or 'odd' fixes that might be needed.
Note: I'm not a Drupal expert by any means (the site was created by a webdev years ago), but I am a fairly well rounded linux sysadmin.
Thanks, all!
Edit to add resolution:
As a wise user on the Drupal forum demonstrated, you can override dependencies as a workaround for this issue:
https://www.drupal.org/project/opigno_lms/issues/3323456#comment-14892149
"require" : {
"drupal/ckeditor_font": "1.3 as 1.x-dev",
...
}
By forcing it to use the correct version, I was able to complete the upgrade without any other issues.
Hopefully this helps somebody else with the same or similar issues!