problem updating Droopler

Created on 28 April 2025, 2 months ago

Problem/Motivation

I have tried to update Droopler from ^5.0.11 to ^5.1.0, but nothing I tried seems to work.
Here is what I tried to update Droopler:

1. $ composer update droptica/droopler --with-dependencies
=> Package "droptica/droopler" listed for update is not locked.

2. $ composer update
=> Nothing to modify in lock file
=> Nothing to install, update or remove

3. modify composer.json to require droptica/droopler:^5.1.0
$ composer update
=> Nothing to modify in lock file
=> Nothing to install, update or remove

4. $ composer require droptica/droopler:^5.1.0
=> Root package 'droptica/droopler' cannot require itself in its composer.json

I have also looked for documentation on how to update Droopler 5, but I only find references to Droopler 3.0 and older. So now I'm wondering, did I not install Droopler correctly, or should I update Droopler using yet another update method? I'm surprised I didn't find any issue on updating Droopler, so I'm afraid I must have done something wrong somehow. I really hope you can help me out?

A second issue is, my Droopler website didn't notify me of the update; I happened to notice the update on drupal.org. I do receive update notifications for individual modules on the admin/modules page, but I don't see any update notification for the Droopler distribution itself.

Steps to reproduce

Install Droopler without DDev, using "$ composer create-project" and (after copying droopler_theme from starter-theme) "$ drush site-install". The website appears to works well, so it seems my installation was correct.

Proposed resolution

Somehow "require droptica/droopler" is in composer.json, but "droptica/droopler" is not in composer.lock. Updating Droopler doesn't seem to work unless it's in composer.lock as well. I'm an amateur though, so I really don't know if that's the real issue here.

Remaining tasks

User interface changes

API changes

Data model changes

💬 Support request
Status

Active

Version

5.0

Component

Documentation

Created by

🇳🇱Netherlands johnnybravosr@outlook.com

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • 🇳🇱Netherlands johnnybravosr@outlook.com

    A fifth way to update Droopler I have tried, following the Droopler 3.0 update guide:

    5. Update composer.json: droptica/droopler ^5.1.0. Next, execute the drush updb command.
    => [success] No pending updates.

    Can anybody please tell me how to update Droopler 5?

  • 🇵🇱Poland patbsh

    @johnnybrav0sr we pushed 5.1.0 tag to the packagist.

    Mind that if you're trying to use it without ddev then you're going to need ext-imagick php extension enabled (this is because codeception tests were added prior to the release). Though, Droopler 5 is not really tested to work without ddev so I cannot guarantee that it will work.

  • 🇳🇱Netherlands johnnybravosr@outlook.com

    Thanks for the tip!

  • 🇵🇱Poland pingwin_cracow

    @patbsh - can you elaborate on which extension you are talking about?
    Where can I find ext-imagick php extension.

    Because I have problems with ddev, I use direct installation and a similar problem with updating.
    Thanks in advance for your help.

  • 🇳🇱Netherlands johnnybravosr@outlook.com

    @pingwin_cracow If you're using Linux, you can get ext-imagick php extension via apt. Make sure you download the package for the php version you use. Below are the steps to take if you use php8.4-fpm and Apache server.

    $ sudo apt install php8.4-imagick
    $ sudo phpenmod imagick
    $ sudo systemctl restart php8.4-fpm
    $ sudo systemctl restart apache2

    I'm sure this php module is important for a well functioning Droopler site, but it won't fix the update problems I mentioned before. Perhaps updating Droopler is easier in a DDEV environment?

  • 🇳🇱Netherlands johnnybravosr@outlook.com

    I finally managed to update my (non-DDEV) Droopler website. I followed this guide. Here is what I did:

    1. Backup Droopler:
    $ cd
    $ drush cex
    $ drush sql-dump --result-file=/path/to/file.sql
    $ sudo cp -R /path/to/backup

    2. Remove vendor, core and starter-theme directories:
    $ rm -rf vendor web/core starter-theme

    3. Remove all files (not folders) from Droopler installation directory:
    $ rm -f *.* .[a-z]*

    4. Download Droopler 5.1.0 to another directory:
    $ composer create-project droptica/droopler:5.1.0 /path/to/

    5. Copy all downloaded files and folders to directory:
    $ sudo cp -R path/to//* /path/to/

    6. Copy new Droopler theme to its destination:
    $ cp -r starter-theme/ web/themes/custom/

    7. Compare old and new composer.json files (from your backup), and add missing packages to new composer.json.

    8. Install update:
    $ composer install
    $ drush updb

    9. Clear cache, run cron, clear cache again, run cron again, and clear cache (clearing cache and running cron so many times may be an overkill, but for me it did the job):
    $ drush cr
    $ drush cron
    $ drush cr
    $ drush cron
    $ drush cr

    10. Check if website is functioning properly, and check admin/reports/status to see if Droopler has been updated.

    And voila, Droopler is updated to version 5.1.0!

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024