Problem/Motivation

Hello project maintainers,
This is an automated issue to help make this module compatible with Drupal 9.

To read more about this effort by the Drupal Association, please read: Accelerating Drupal 9 module and theme readiness with automated patches

Periodically patches will be added to this issue that remove Drupal 9 deprecations. To stop further patches from being posted simply close this issue or remove the "ProjectUpdateBotD9" tag from the issue.

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 and the "RectorAutoPatches" tag is left on this issue, new patches will be posted periodically if new deprecations are needed.

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

  2. Leave open but stop new automated patches.

    If you want to use this issue as a starting point to remove deprecations but don't want new automated patches simply leave this issue open but remove the "RectorAutoPatches" from the issue.

    You can use Drupal Rector yourself to make these patches.

    If you want to receive automated patches again simply add back the "RectorAutoPatches" tag.

  3. Close it and don't use it

    If the maintainers of this project don't find this issue useful they can simply close this issue 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 9 compatibility it may be useful to other contributors to add those issues as "Related issues" when closing this issue.

Remaining tasks

Using the patches

  1. Apply the patch in the comment by Project Update Bot
  2. Thoroughly test the patch. These patches are automatically generated so they haven't been tested manually or automatically.

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 Rector issue queue. For other issues with the bot, for instance if the issue summary created by the bot is unclear,  use the Infrastructure project issue queue using the component “Bot: Drupal Rector”.

Bot Test

This is a test of run of the Project Update Bot.

This project is included in the test run because one of the maintainers of this project opted in for testing.

Thank you, for helping out. The patches posted to this issue should still apply to this project.

Comments

Project Update Bot created an issue. See original summary.

project update bot’s picture

Status: Active » Needs review
StatusFileSize
new4.06 KB
Patch for Build #1468

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.

This patch was created using these packages:

  1. mglaman/phpstan-drupal: 0.12.3
  2. palantirnet/drupal-rector: 0.5.2
  3. rector/rector-prefixed: v0.7.18

Debug info: Run #1468

sutharsan’s picture

Issue summary: View changes
Status: Needs review » Needs work
+++ b/src/Form/SettingsForm.php
@@ -114,9 +115,9 @@ class SettingsForm extends ConfigFormBase {
-    $scheme = file_default_scheme();
+    $scheme = \Drupal::config('system.file')->get('default_scheme');
     $directory = $scheme . '://' . $form_state->getValue('imagecache_directory');
-    if (!file_prepare_directory($directory, FILE_CREATE_DIRECTORY)) {
+    if (!\Drupal::service('file_system')->prepareDirectory($directory, FileSystemInterface::CREATE_DIRECTORY)) {

This should use dependency injection. See \Drupal\Core\Installer\Form\SiteConfigureForm for an example.

sutharsan’s picture

Remaining Drupal 9 issues according to Upgrade Status module

Imagecache External,  8.x-1.x
Scanned on Thu, 05/21/2020 - 11:27

FILE: modules/d9/imagecache_external/imagecache_external.module

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Fix now        405  Call to deprecated function                                 
                    file_unmanaged_delete_recursive(). Deprecated in            
                    drupal:8.7.0 and is removed from drupal:9.0.0. Use          
                    Drupal\Core\File\FileSystemInterface::deleteRecursive().    
--------------------------------------------------------------------------------
Fix now        418  Call to deprecated function                                 
                    file_unmanaged_delete_recursive(). Deprecated in            
                    drupal:8.7.0 and is removed from drupal:9.0.0. Use          
                    Drupal\Core\File\FileSystemInterface::deleteRecursive().    
--------------------------------------------------------------------------------
Fix now        431  Call to deprecated function                                 
                    file_unmanaged_delete_recursive(). Deprecated in            
                    drupal:8.7.0 and is removed from drupal:9.0.0. Use          
                    Drupal\Core\File\FileSystemInterface::deleteRecursive().    
--------------------------------------------------------------------------------

FILE: modules/d9/imagecache_external

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Check manually 0    The 'imagecache_external' extension is not installed. Cannot
                    check deprecated library use.                               
--------------------------------------------------------------------------------

FILE: modules/d9/imagecache_external/imagecache_external.info.yml

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Check manually 0    Add core_version_requirement: ^8 || ^9 to      
                    imagecache_external.info.yml to designate that the module is
                    compatible with Drupal 9. See                               
                    https://drupal.org/node/3070687.                            
--------------------------------------------------------------------------------
sutharsan’s picture

Title: Automated Drupal Rector fixes » Drupal 9 compatibility fixes
Status: Needs work » Needs review
StatusFileSize
new3.97 KB
new6.53 KB

Fixes #3 and remaining issue in #4.

stomusic’s picture

Fixed one more deprecated function

lukey’s picture

Our custom module application that depends on this module is working fine with patch #6, on D9.

schnippy’s picture

Status: Needs review » Reviewed & tested by the community

Patch at #6 applied cleanly and can confirm module is working as expected in upgraded 9.x site.

larowlan’s picture

Status: Reviewed & tested by the community » Needs work
+++ src/Form/SettingsForm.php	(date 1596007444186)
@@ -114,9 +147,9 @@
+    $scheme = $this->configFactory->get('system.file')->get('default_scheme');

I don't see how $this->configFactory is set here, we don't call the parent and we don't call setConfigFactory

akshay_d’s picture

Assigned: Unassigned » akshay_d
akshay_d’s picture

Assigned: akshay_d » Unassigned
Status: Needs work » Needs review
StatusFileSize
new7.08 KB

Updated the patch please review.

gauravvvv’s picture

StatusFileSize
new38.28 KB

Patch #11 works fine. RTBC +1, Adding screenshot for reference.

gauravvvv’s picture

Status: Needs review » Reviewed & tested by the community
swentel’s picture

@larowlan It's set in setConfigFactory() in ConfigFormBase - the property itself lives in FormBase.

Haven't tested myself, but would be nice for a commit so I can start porting Indieweb :)

BarisW’s picture

Patch looks good, thanks!

  • BarisW committed c62487e on 8.x-1.x authored by akshay_d
    Issue #3137170 by Sutharsan, Project Update Bot, akshay_d, stomusic,...
BarisW’s picture

Status: Reviewed & tested by the community » Fixed

Committed to dev

Status: Fixed » Closed (fixed)

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