Problem/Motivation

Since:
Drush versions below 12.4.3 are incompatible with Drupal 10.2.
(as per drupal 10.2.0 release notes)
module's Drush commands could perhaps be updated according to:
https://www.drush.org/12.x/commands/.

Proposed resolution

  1. Make changes in info.yml with ^10.2 || ^11
  2. Make changes as per the https://www.drush.org/12.x/commands/
  3. The file drush.services.yml could be removed and update the composer.json accordingly.
  4. Review other files that would need to be updated.

Remaining tasks

  1. Add a class for Drush 12 commands.
  2. Add placeholders for all Feeds Drush commands in this class.
  3. Move the existing Drush commands code to the new class.
  4. Remove the old Drush code.
  5. Check if the Feeds drush commands are available when executing drush.
  6. Port each command.
  7. Update the Drush integration tests, if necessary. See \Drupal\Tests\feeds\Functional\Commands\FeedsDrushCommandsTest.

Issue fork feeds-3453031

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

ankitv18 created an issue. See original summary.

ankitv18’s picture

Title: Support Drush 12 » Support Drush 12 and above only
Issue summary: View changes
ankitv18’s picture

Assigned: ankitv18 » Unassigned
megachriz’s picture

Issue tags: +stable release blocker

I think this is required to be resolved for Drupal 11 compatibility, so therefore marking it as a blocker for a stable Feeds release.

@jcventura said on Slack he's planning to look at this issue.

ankitv18’s picture

Issue summary: View changes
megachriz’s picture

I see that at least drush feeds:list still works on Drupal 11. So if all Drush commands still work as intended on Drupal 11, then this issue would no longer be a release blocker.

It would be good to try each command manually to be sure.

megachriz’s picture

I tried all commands below and they still work on Drupal 11 as intended. So this is no longer a release blocker. It is now "a nice to have" and can also be done at a later time. I'm tagging this as an intermediate issue and will add it to #3165018: [meta] Feeds intermediate issues.

  feeds:disable     [feeds-dis] Disable a feed specified by its id.
  feeds:enable      [feeds-en] Enable a feed specified by its id.
  feeds:import      [feeds-im] Import a feed specified by its id.
  feeds:import-all  [feeds-ima] Import all feeds.
  feeds:list-feeds  [feeds-lf] Display all feeds using a drush command.
  feeds:lock        [feeds-lk] Lock a feed specified by its id.
  feeds:unlock      [feeds-ulk] Unlock a feed specified by its id.
rajan kumar@2026’s picture

To address the compatibility issues with Support Drush 12 and above only, please update your composer.json file with the following changes.

"require-dev": {
"drupal/pathauto": "dev-1.x",
"drush/drush": " ^12 || ^13"
},

ankitv18’s picture

I'm using drush version 13.0.1.0 and tried to run all feeds command & it is working fine.

Once we update the namespace as mentioned in drush 12 then we have to add conflict in the composer.json
Also it would be great if we update the commands as per php attribute instead of document annotation.
@megachriz what are your thoughts on this? If you consider this then we need to update the summary.

megachriz’s picture

We could be using php attributes if:

  • That would work on Drupal 10.2, because that version is still officially supported;
  • That would work on PHP 8.1.

If it works too on Drupal 10.1, that would be cool, but since 10.1 is no longer officially supported, this is less important. We should only test it once to see if we are required to raise the requirements.

megachriz’s picture

Issue summary: View changes

I added a list of tasks to the issue summary that could help with fixing this issue.