Problem/Motivation

drupal 10 compatibilty issues currently found issues through upgrade status scan report


CONTRIBUTED PROJECTS
--------------------------------------------------------------------------------
Superfish 8.x-1.4
Scanned on Tue, 07/26/2022 - 18:49.

3 warnings found.

web/modules/contrib/superfish/templates/superfish-menu-items.html.twig:
┌──────────┬──────┬──────────────────────────────────────────────────────────────┐
│  STATUS  │ LINE │                           MESSAGE                            │
├──────────┼──────┼──────────────────────────────────────────────────────────────┤
│ Check    │ 0    │ The spaceless tag in                                         │
│ manually │      │ "modules/contrib/superfish/templates/superfish-menu-items.ht │
│          │      │ ml.twig" at line 23 is deprecated since Twig 2.7, use the    │
│          │      │ "spaceless" filter with the "apply" tag instead. See         │
│          │      │ https://drupal.org/node/3071078.                             │
│          │      │                                                              │
└──────────┴──────┴──────────────────────────────────────────────────────────────┘

web/modules/contrib/superfish/superfish.libraries.yml:
┌──────────┬──────┬──────────────────────────────────────────────────────────────┐
│  STATUS  │ LINE │                           MESSAGE                            │
├──────────┼──────┼──────────────────────────────────────────────────────────────┤
│ Check    │ 0    │ The 'superfish' library is depending on a deprecated         │
│ manually │      │ library. The core/jquery.once asset library is deprecated in │
│          │      │ Drupal 9.3.0 and will be removed in Drupal 10.0.0. Use the   │
│          │      │ core/once library instead. See                               │
│          │      │ https://www.drupal.org/node/3158256                          │
│          │      │                                                              │
└──────────┴──────┴──────────────────────────────────────────────────────────────┘

web/modules/contrib/superfish/superfish.info.yml:
┌──────────┬──────┬────────────────────────────────────────────────────────────┐
│  STATUS  │ LINE │                          MESSAGE                           │
├──────────┼──────┼────────────────────────────────────────────────────────────┤
│ Check    │ 0    │ Value of core_version_requirement: ^8 || ^9 is not         │
│ manually │      │ compatible with the next major version of Drupal core. See │
│          │      │ https://drupal.org/node/3070687.                           │
│          │      │                                                            │
└──────────┴──────┴────────────────────────────────────────────────────────────┘

Steps to reproduce

1. A normal drupal instance of version 9.4.
2. install superfish module

Proposed resolution

1. make the necessary changes as per the report.
2. create a patch.

Remaining tasks

1. Resolve the issue and create a patch
2. appy the patch and run the module again through upgrade status module.
3. review and check.

User interface changes

API changes

Data model changes

Issue fork superfish-3299991

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

Vighneshh created an issue. See original summary.

sharayurajput’s picture

Assigned: Unassigned » sharayurajput

I will work on this issue

sharayurajput’s picture

StatusFileSize
new797 bytes
new22.32 KB

Provided the patch for the changes mentioned in Problem/Motivation
This web/modules/contrib/superfish/superfish.libraries.yml file is not present in the directory

sharayurajput’s picture

Assigned: sharayurajput » Unassigned
Status: Active » Needs review
wylbur’s picture

StatusFileSize
new19.96 KB

We're working on D10, and trying to get superfish working on a site. The previous patch did not resolve the error about calling the libraries file:

web/modules/contrib/superfish/superfish.libraries.yml:

This patch should resolve those errors and make this compatible with D10.

The attached patch applies to the 1.x-dev@dev branch.

Please test, ready for review!

hemangi.gokhale’s picture

Assigned: Unassigned » hemangi.gokhale
Status: Needs review » Needs work

@wylbur, I have tested the given patch but For D10 compatibility it needs work.

hemangi.gokhale’s picture

Assigned: hemangi.gokhale » Unassigned
Status: Needs work » Needs review
StatusFileSize
new3.09 KB
new19.29 KB

The above patch has missing fixes for libraries, so those have been resolved in this patch now. This issue needs review.

rishu_kumar’s picture

StatusFileSize
new81.73 KB

When I apply #7 patch.
Patch apply cleanly I attached some screenshot also.
It can be moved to RTBC.

Thanks

Charchil Khandelwal made their first commit to this issue’s fork.

tjtj’s picture

Please set this as a release. I cannot update to D10 with patches.

maxilein’s picture

Please, make a release.

perarg’s picture

Patch #7 works great with D10. Please proceed to RTBC

samlerner’s picture

Status: Needs review » Reviewed & tested by the community

Confirmed the patch in #7 works for me as well. Changing to RTBC.

mylocaltrades’s picture

I can also confirm patch in #7 works and I have this running on 25 production sites for well over a month and everything works as expected.

biarr’s picture

Patch #7 is working as expected.

tjtj’s picture

Ignore this. Was a drush issue.

When I install patch 7, using
"patches": {

    "enable-patching": true,
     "drupal/superfish": {
           "rector patch": "https://www.drupal.org/files/issues/2023-01-18/3299991-drupal-10-compatibility-fixes-7.patch"
      }
},
"drupal-lenient": {
"allowed-list": ["drupal/superfish"]
}

I get

drush updb
 [preflight] Mapping values are not allowed in multi-line blocks at line 2 (near "<?php").

Lots of internal modules are upgraded/downgraded doing this.

This was due to an old drush link. Not a superfish issue.
Please release this already!!

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

mlubbers’s picture

Dear developers,

Please, put a release of Superfish for Drupal 10 in the repository.

I've patched my Drupal 9 version successfully with path 3299991 ( So, the Upgrade_Status is fine.), however it fails to update to Drupal version 10 since it can not be found in the repository of Drupal. Using composer update....dev-x.1.

Or is there another way to upgrade Superfish to Drupal 10.

Kind regards,

Marcel

phil stringer’s picture

Save a tar file of the patched module, and also one of the library as that is a dependency. Ten do a composer remove without uninstalling superfish. Then untar the files to put all the files back. That makes it all work again whilst composer knows nothing about so can try the update to drupal 10. Once the d10 version of superfish is finally released then install it via composer. That is how we've got round it.

mlubbers’s picture

Dear Phil,

Thanks for your quick response!

All works fine in D10, using your method for updating superfish.

I hope, an official release will be available soon.

Cheers,

Marcel

prashant.c’s picture

The alterations are operating smoothly on Drupal 10.1.x version and have achieved compatibility.
It would be greatly appreciated if the module maintainers could create a release for Drupal 10 of this module, as it is widely used on many websites and will be advantageous during the upgrade process from Drupal 8 or 9 to 10.

Thank you.

lobsterr’s picture

For those, who have problems with composer, because info file cannot be patched, you can use this configuration:

    "config": {
        "preferred-install": {
            "drupal/superfish": "source",
            "*": "auto"
        }
    },
chike’s picture

There is a standard solution to add a module that does not have a D10 compatible release in D10 and that's the new Composer Drupal Lenient plugin. With this you can install the module and then patch it to become compatible.

prashant.c’s picture

@chike We appreciate you informing us about this tool.

snap_x’s picture

+1 to RTBC
I tested the patch #7 on Drupal 10.0.8. Everything looks fine and works without any errors.
Would be great to have D10 release

edward.peters’s picture

I too would be extremely grateful for an official D10-compatible release

lobsterr’s picture

I tried to contact the maintainer, he has never replied. I believe the only way to get a new release to take over the maintenance

foxy-vikvik’s picture

Tested #7 patch.

prashant.c’s picture

@LOBsTerr You are correct, the author of the module has not been active since 2020. It would be beneficial if they designated someone else as maintainers to ensure that this excellent module receives proper upkeep. I will attempt to contact the author via their contact page and hope to receive a response.

foxy-vikvik’s picture

patch #8 is not working if use drupal-lenient

foxy-vikvik’s picture

StatusFileSize
new3.87 KB

I tested it on Drupal 10 - it is workes well
superfish-d10-compatibility-15053339-9.patch

lobsterr’s picture

I will try to take it over.

lissy’s picture

If i use the patched Version fo superfish with core_version_requirement: ^8 || ^9 || ^10 in the info-file and the other changes, i get the message from composer:
drupal/superfish dev-1.x requires drupal/core ^8 || ^9 -> found drupal/core[8.0.0, ..., 8.9.20, 9.0.0, ..., 9.5.9] but it conflicts with your root composer.json require (^10.0).

How to get the patched version under composer controll in Drupal 10?

snap_x’s picture

@Lissy you can use Drupal's Lenient Composer Endpoint to avoid composer version compatibility issues.

youssef.maaddi’s picture

@snap_x thank you for your suggestion, I successfully installed the module on my drupal 10 instance using the Drupal' Lenient and I applied the patch #32

chike’s picture

Patch #32 is working for me.

oily’s picture

I have tested patch #32 on the Drupal 10 dev after installing the module and applying the Drupal Lenient plugin.

drupgirl’s picture

The patch in 32 does not apply with lenient to 8.x-1.x-dev. The patch in 7 does apply with lenient.

oily’s picture

@drupgirl Yes, that is true. I have just applied patch #7 with the Lenient module. It works. Here is a copy of the composer.json I am using. I have placed the Superfish Main Navigation block in the Content region and disabled the 'normal' Main Navigation block. It works: no errors on screen or under Reports > recent error messages- with Drupal 10.0.9.

oily’s picture

StatusFileSize
new5.38 KB
oily’s picture

samlerner’s picture

@LOBsTerr any luck becoming a maintainer of this project? I think at this point all we need is a stable release.

lobsterr’s picture

Sorry guys, I was a bit busy these days.
I have to follow a procedure. First I have created a ticket #3369119: Offering to maintain Superfish and if there is not response I can ask to transfer the ownership. We will have to wait a bit more

lomale@bluewin.ch’s picture

It's my second last module with incompatibility warning in upgrade status.
I would be extremely grateful for a D10-compatible release.
I'm not familiar with patching.
Thanks

maxilein’s picture

I would be grateful too!
It is used in soo many sites...

lissy’s picture

Also i would be very happy about a D10-compatible release!

lobsterr’s picture

Status: Reviewed & tested by the community » Fixed

Thank you everyone for contribution

lebachai’s picture

I want to thank everyone who worked to get this D10 version to release. Best thing to wake up to today!

samlerner’s picture

Hooray! Thank you @LOBsTerr for your persistence in getting a release out!

lissy’s picture

Yippiee!!! Thanks from me. ;-)

lomale@bluewin.ch’s picture

Hi, just great, your work
It works

Status: Fixed » Closed (fixed)

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