Problem/Motivation

Hello project maintainers,

This is an automated issue to help make this module compatible with Drupal 10.

To read more about this effort by the Drupal Association, please read: The project update bot is being refreshed to support Drupal 10 readiness of contributed projects

Patches will periodically be added to this issue that remove Drupal 10 deprecated API uses. To stop further patches from being posted, change the status to anything other than Active, Needs review, Needs work or Reviewed and tested by the community. Alternatively, you can remove the "ProjectUpdateBotD10" tag from the issue to stop the bot from posting updates.

The patches will be posted by the Project Update Bot official user account. This account will not receive any issue credit contributions for itself or any company.

Proposed resolution

You have a few options for how to use this issue:

  1. Accept automated patches until this issue is closed

    If this issue is left open (status of Active, Needs review, Needs work or Reviewed and tested by the community) and the "ProjectUpdateBotD10" tag is left on this issue, new patches will be posted periodically if new deprecation fixes are needed.

    As the Drupal Rector project improves and is able to fix more deprecated API uses, the patches posted here will cover more of the deprecated API uses in the module.

    Patches and/or merge requests posted by others are ignored by the bot, and general human interactions in the issue do not stop the bot from posting updates, so feel free to use this issue to refine bot patches. The bot will still post new patches then if there is a change in the new generated patch compared to the patch that the bot posted last. Those changes are then up to humans to integrate.

  2. Leave open but stop new automated patches.

    If you want to use this issue as a starting point to remove deprecated API uses but then don't want new automated patches, remove the "ProjectUpdateBotD10" tag from the issue and use it like any other issue (the status does not matter then). If you want to receive automated patches again, add back the "ProjectUpdateBotD10" tag.

  3. Close it and don't use it

    If the maintainers of this project don't find this issue useful, they can close this issue (any status besides Active, Needs review, Needs work and Reviewed and tested by the community) and no more automated patches will be posted here.

    If the issue is reopened, then new automated patches will be posted.

    If you are using another issue(s) to work on Drupal 10 compatibility it would be very useful to other contributors to add those issues as "Related issues" when closing this issue.

Remaining tasks

Using the patches

  1. Apply the latest patch in the comments by Project Update Bot or human contributors that made it better.
  2. Thoroughly test the patch. These patches are automatically generated so they haven't been tested manually or automatically.
  3. Provide feedback about how the testing went. If you can improve the patch, post an updated patch here.

Providing feedback

If there are problems with one of the patches posted by the Project Update Bot, such as it does not correctly replace a deprecation, you can file an issue in the Drupal Rector issue queue. For other issues with the bot, for instance if the issue summary created by the bot is unclear, use the Project analysis issue queue.

Issue fork webp-3290669

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

Project Update Bot created an issue. See original summary.

project update bot’s picture

Status: Active » Needs review
StatusFileSize
new481 bytes

This is an automated patch generated by Drupal Rector. Please see the issue summary for more details.

It is important that any automated tests available are run with this patch and that you manually test this patch.

Drupal 10 Compatibility

According to the Upgrade Status module, even with this patch, this module is not yet compatible with Drupal 10.

Currently Drupal Rector, version 0.12.0, cannot fix all Drupal 10 compatibility problems.

This patch does not update the info.yml file for Drupal 10 compatibility.

Leaving this issue open, even after committing the current patch, will allow the Project Update Bot to post additional Drupal 10 compatibility fixes as they become available in Drupal Rector.

Debug info

Bot run #127

This patch was created using these packages:

  1. mglaman/phpstan-drupal: 1.1.9
  2. palantirnet/drupal-rector: 0.12.0
project update bot’s picture

StatusFileSize
new938 bytes
new961 bytes

This is an automated patch generated by Drupal Rector. Please see the issue summary for more details.

It is important that any automated tests available are run with this patch and that you manually test this patch.

Drupal 10 Compatibility

According to the Upgrade Status module this patch makes this module compatible with Drupal 10! 🎉
This patch updates the info.yml file for Drupal 10 compatibility.

Leaving this issue open, even after committing the current patch, will allow the Project Update Bot to post additional Drupal 10 compatibility fixes as they become available in Drupal Rector.

Debug info

Bot run #145

This patch was created using these packages:

  1. mglaman/phpstan-drupal: 1.1.25
  2. palantirnet/drupal-rector: 0.13.1
jaydev bhatt’s picture

Issue summary: View changes
Status: Needs review » Reviewed & tested by the community

Reviewed / Tested the given patch #3.
works with drupal9 and Drupal10.
after applyig the patch and running throught the upgrade_status module there are no more deprication errors.

Moving this RTBC.

project update bot’s picture

tyler36 made their first commit to this issue’s fork.

tyler36’s picture

Issue summary: View changes

Rerolled patch as MR

kporras07’s picture

I just tested the MR and it works as expected.

rajab natshah’s picture

Priority: Normal » Major
rajab natshah’s picture

Thank you, Alex, Bart for maintaining the WebP important for performance and SEO module!

Hoping for a soft commit on the 8.x-1.x branch, to ease testing with Drupal 10.
A soft tag release ( pre-release ) would help speeding up work with Drupal ~10.0 using the composer.

Testing now with git clone --branch '8.x-1.x' https://git.drupalcode.org/project/webp.git
and git apply the patch or 29.diff

rajab natshah’s picture

Priority: Major » Critical
rajab natshah’s picture

rajab natshah’s picture

rajab natshah’s picture

Had Real physical testing round for WebP 1.0.x-dev with Drupal ~10 and Drupal ~9

Attaching the Full testing round commands

Real-physical-testing-round-for-webp-1-0-x-dev--with-d10-and-d9.zip

Build Drupal ~10.0 sandbox test site and have Drush ~11.0

mkdir -p /var/www/html/sandboxes
composer create-project drupal/recommended-project:~10.0 /var/www/html/sandboxes/drupal10webp_1__test
cd /var/www/html/sandboxes/drupal10webp_1__test/
composer require drush/drush:~11.0;

Change minimum stability to dev for testing on the recommended Drupal 10 project template

composer config minimum-stability dev

Add the WebP module

mkdir -p /var/www/html/sandboxes/drupal10webp_1__test/web/modules/contrib
cd /var/www/html/sandboxes/drupal10webp_1__test/web/modules/contrib/
git clone --branch '8.x-1.x' https://git.drupalcode.org/project/webp.git

Git apply the needed patch

cd /var/www/html/sandboxes/drupal10webp_1__test/web/modules/contrib/webp/
wget https://git.drupalcode.org/project/webp/-/merge_requests/29.diff
git apply 29.diff

Change file/directory mod and ownership of files:

cd /var/www/html/sandboxes/drupal10webp_1__test/
sudo chmod 775 -R .;sudo chown www-data:$USER -R .;

Install with Drush

./vendor/drush/drush/drush site:install standard --yes --site-name="WebP 1.0.x-dev - Real physical testing with Drupal ~10" --account-name="webmaster" --account-pass="d" --account-mail="test@drupal.org" --db-url="mysql://root:123___@localhost/sandboxes_drupal10webp_1__test" -vvv ;

./vendor/drush/drush/drush pm:enable responsive_image
./vendor/drush/drush/drush pm:enable media
./vendor/drush/drush/drush pm:enable media_library
./vendor/drush/drush/drush pm:enable webp

Rebuild the cache:

sudo chmod 775 -R .;sudo chown www-data:$USER -R .;
./vendor/drush/drush/drush cache:rebuild

Open a browser and change the address to: http://localhost/sandboxes/drupal10webp_1__test/web/

Tested with configs on Media field with responsive Image styles in both Drupal 10 and Drupal 9


WebP 1.0.x-dev - Real physical testing with Drupal ~10 - Test Image field for Media Image type
WebP 1.0.x-dev - Real physical testing with Drupal ~9 - Test Image field for Media Image type
rajab natshah’s picture

Tested, Ready for a release.

rajab natshah’s picture

klemendev’s picture

Seems to be ready

rvilar’s picture

Tested and ready to release also.

Thanks for the hard work.

anatolii1309’s picture

Tested and ready to release also.

jds1’s picture

Could we please have a d10-compatible release out soon so we don't have to patch? Thanks!

agoradesign’s picture

webp is one of our few remaining blockers to switch to D10 in our projects :(

martijn de wit’s picture

Do we need this module for D10 since: https://www.drupal.org/node/3171135 ?

klemendev’s picture

Yes, as this module offers fallback, while using WebP directly does not

martijn de wit’s picture

That is true; #3213491: Add fallback format support to responsive images;
So if that issue is resolved, are there other important features missing?

rajab natshah’s picture

Thanks Martijn

Support having this awesome feature in Drupal core

Modules like Image Styles too with Responsive Image Style
and contrib modules like Dynamic Responsive Image (or drimage) will switch from using Webp to the Drupal core solution.

jds1’s picture

I know I commented about it last week but 11k+ sites still use this module and will continue to use it until the core issue is fixed. Can we please have a d10-compatible release ASAP? The patch applies but patching doesn't work and `composer info drupal/webp` is still showing `requires
drupal/core ^8 || ^9`. Are the maintainers active on this project/in the comments? This is blocking d10 upgrades.

Thank you in advance for your support!

martijn de wit’s picture

@jds1 did you test the core patch + Drupal Core WebP support? You don't need this module anymore if you don't have any edge cases I believe. It's all in Drupal Core. :)

agoradesign’s picture

as long it's not committed and released in core, this module has it's legitimacy. Some patches are inevitable, but any others I try to avoid - why? because sometimes these kind of patches land never or much later than you'd have expected. And sometimes it may become difficult to update because the patch must be re-rolled, or it may also conflict with another bugfix patch within the same core module,...

So, jds1 and I are just two examples for surely more people/organizations that will continue to use webp until Core provides an alternative in a regular release, hence also upgrading to 10.x is a blocker for us

jds1’s picture

Hey @martijin – thanks for responding :)

For this particular site that's currently in production we need a png fallback because it is possible some constituents are using older browsers. Plus the delta of updating all image styles to use core webp is much greater than updating one module. I will, without a doubt, use core webp support on all new projects moving forward though. It's real exciting stuff!!

Thank you agoradesign for another +1 for a release!

I'm gonna give it another day before I start messaging some of the maintainers to see if we can move this along. That will mean we can close this issue too!

agoradesign’s picture

thanks for messaging the maintainers :)

also thanks Martijn for testing and pushing the core issue forward. It will be great once we have this built in - hoping that will make other scenarios easier to handle (I've also used the webp support via imageapi_optimize dependent module + remote_stream_wrapper inside the same project and had to add glue code to combine both)

mandclu’s picture

Hey everyone, apologies for the delay here. I can help get a D10-ready release out in the coming days.

jds1’s picture

Hey @mandclu – thank you so much for the quick follow-up today!! Much appreciated.

  • mandclu committed b3d393c3 on 8.x-1.x authored by tyler36
    Issue #3290669: Automated Drupal 10 compatibility fixes
    
agoradesign’s picture

awesome :)

mandclu’s picture

Thanks for the wealth of input on this issue. An 8.x-1.0-beta7 release is now available that is Drupal 10 compatible. I would like to further clean up the issue queue and move this module towards a stable release, so input on any issues currently labelled Needs Review would be much appreciated. Thanks again!

lobodakyrylo’s picture

Status: Reviewed & tested by the community » Fixed

Status: Fixed » Closed (fixed)

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