Follow-up to #2873395: [meta] Add @internal to core classes, methods, properties

Problem/Motivation

https://www.drupal.org/core/d8-bc-policy#controllers
Core modules contain many route controllers that are bound to individual routes, as well as form classes. These controllers are not part of the API of the module unless specifically marked with an @api tag on the method or class.

Proposed resolution

Add @internal tag to the controller classes

How to fix thisissue

  1. Read the description for a category in its issue
  2. Identify and confirm an example. Ask in IRC if unclear.
  3. Search core for the relevant category.
  4. Add @internal per the backwards compatibility policy.
  5. Reviewers should confirm that each @internal mention is appropriate for that category according to the policy.

Remaining tasks

Make the Patch and post it

User interface changes

None.

API changes

There should be no implicit API changes.

CommentFileSizeAuthor
#109 drupal-set-controllers-as-internal-2873668-109.patch58.07 KBaarti zikre
#108 drupal-set-controllers-as-internal-2873668-108.patch57.77 KBaarti zikre
#107 drupal-set-controllers-as-internal-2873668-107.patch58.38 KBaarti zikre
#106 drupal-set-controllers-as-internal-2873668-106.patch58.38 KBaarti zikre
#105 drupal-set-controllers-as-internal-2873668-105.patch58.07 KBaarti zikre
#104 drupal-set-controllers-as-internal-2873668-104.patch58.9 KBaarti zikre
#103 drupal-set-controllers-as-internal-2873668-102.patch58.68 KBaarti zikre
#101 drupal-set-controllers-as-internal-2873668-101.patch58.68 KBaarti zikre
#100 drupal-set-controllers-as-internal-2873668-9.5.x-dev-100.patch53.45 KBaarti zikre
#99 drupal-set-controllers-as-internal-2873668-9.5.x-dev-99.patch53.45 KBaarti zikre
#98 drupal-set-controllers-as-internal-2873668-9.5.x-dev-98.patch53.45 KBaarti zikre
#97 drupal-set-controllers-as-internal-2873668-9.5.x-dev-97.patch.patch57 KBaarti zikre
#95 drupal-set-controllers-as-internal-2873668-9.5.x-dev-95.patch57.03 KBaarti zikre
#94 drupal-set-controllers-as-internal-2873668-9.5.x-dev-89.patch56.79 KBaarti zikre
#88 interdiff-2873668-8.9.x-9.0.x-88.txt827 bytesmradcliffe
#88 drupal-set-controllers-as-internal-2873668-9.0.x-88.patch58.72 KBmradcliffe
#88 drupal-set-controllers-as-internal-2873668-8.9.x-88.patch60.01 KBmradcliffe
#85 drupal-set-controllers-as-internal-2873668-85.patch60.01 KBapaderno
#83 drupal-set-controllers-as-internal-2873668-83.patch58.74 KBapaderno
#82 drupal-set-controllers-as-internal-2873668-82.patch58.74 KBapaderno
#81 drupal-set-controllers-as-internal-2873668-81.patch59.66 KBapaderno
#76 controller-2873668-76.patch59.85 KBshimpy
#75 controller-2873668-75.patch58.93 KBnickmans
#71 controller-2873668-71.patch58.96 KBnickmans
#67 controller.png125.36 KBGayathri J
#63 controller-2873668-63.patch59.09 KBDinesh18
#61 controller_2873668_61.patch58.91 KBshimpy
#59 update_controller.patch59.45 KBshimpy
#57 controller_update.patch35.67 KBshimpy
#55 controller_update.patch59.45 KBshimpy
#52 2873668.patch35.48 KBPriyadarshini Govinthan
#51 Screenshot at 2019-10-15 15-25-03.png167.88 KBshimpy
#48 patch fail log.txt540 bytesfabienly
#42 interdiff-2873668-38-42.txt7.3 KBwengerk
#42 2873668-42.patch71.71 KBwengerk
#4 add-internal-to-core-controllers-2873668-4.diff69.84 KBsafetypin
#5 add-internal-to-core-controllers-2873668-5.patch59.96 KBsafetypin
#6 add-internal-to-core-controllers-2873668-6.patch0 bytessafetypin
#7 add-internal-to-core-controllers-2873668-7.patch59.96 KBsafetypin
#16 add-internal-to-core-controllers-2873668-16.patch62.13 KBlinef
#16 add-internal-to-core-controllers-2873668-7-16.interdiff.txt3.15 KBlinef
#20 add-internal-to-core-controllers-2873668-20.patch62.1 KBpk188
#22 add-internal-to-core-controllers-2873668-22.patch62.09 KBpk188
#31 2873668-31.patch61.21 KBjofitz
#35 2873668-35.patch61.96 KBimalabya
#38 2873668-38.patch61.99 KBwengerk
#38 interdiff-2873668-35-38.txt1.15 KBwengerk
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

naveenvalecha created an issue. See original summary.

naveenvalecha’s picture

Title: Add @internal to core classes, methods, properties to Tests » Add @internal to core classes, methods, properties to Controllers
Issue summary: View changes
safetypin’s picture

Assigned: Unassigned » safetypin

I'm working on this for the DrupalCon Baltimore mentored core sprints.

safetypin’s picture

Assigned: safetypin » Unassigned
Status: Active » Needs review
FileSize
69.84 KB

I've completed an initial pass at adding @internal to all core controllers. I went through all *.routing.yml files and used _controller: [...] lines as a reference to find all core controller class files, and added @internal to the comment block to all the controller class files I found.

safetypin’s picture

Rebased the patch on latest commit, looks like there was a different commit that got included in the patch.

safetypin’s picture

The last submitted patch, 4: add-internal-to-core-controllers-2873668-4.diff, failed testing.

The last submitted patch, 5: add-internal-to-core-controllers-2873668-5.patch, failed testing.

The last submitted patch, 6: add-internal-to-core-controllers-2873668-6.patch, failed testing.

leanderl’s picture

Me and my collegues are working on this at the Baltimore Code Sprint right now...

Status: Needs review » Needs work

The last submitted patch, 7: add-internal-to-core-controllers-2873668-7.patch, failed testing.

marcusml’s picture

Any clues why the test fails? I've run the System.Drupal\system\Tests\System\ErrorHandlerTest locally with and without the patch. The test runs fine without the patch applied. I'll continue investigating with leanderl and our other collegues.

safetypin’s picture

The patch only changes comments, in theory it shouldn't be causing any tests to fail.

I did run into an issue with my first patch attempt where there had been a completely unrelated change that was included, but I was able to rebase and exclude that change.

Andreas Hansson’s picture

Actually, the test seems to create a PHP tests and checks for the error on row-number in the file ErrorHandlerTest.php.

I, Marcus, Line and Leanderl are sitting here in Baltimore and checking for this, will try to apply a fixed patch soon.

linef’s picture

Previous patch failed because tests referred to specific line numbers, we adjusted this to make the test pass.

linef’s picture

leanderl, marcusml, Andreas Hansson and I worked with the patch together.

xjm’s picture

Updating issue credit based on #17. Thanks @linef!

Wim Leers’s picture

Status: Needs review » Needs work
Issue tags: +Needs reroll

This no longer applies unfortunately. Which makes reviewing this quite hard. This is looking wonderful already though!

pk188’s picture

Status: Needs work » Needs review
Issue tags: -Needs reroll
FileSize
62.1 KB

Re rolled.

Status: Needs review » Needs work

The last submitted patch, 20: add-internal-to-core-controllers-2873668-20.patch, failed testing.

pk188’s picture

Status: Needs work » Needs review
FileSize
62.09 KB

Either pushed it up early or we have to again re roll it after some time again and again.

xjm’s picture

Thanks @pk188 for the reroll.

dawehner’s picture

Can't we declare controllers as a not supported API, instead? It feels really a bit stupid to add @internal to all those things.

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.0-alpha1 will be released the week of July 31, 2017, which means new developments and disruptive changes should now be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

chenderson’s picture

I am working on this issue at DrupalCon Vienna.

yogen.prasad’s picture

I am working on this issue with @Valthebald and @chenderson at DrupalCon Vienna.

Thanks

yogen.prasad’s picture

Issue tags: +Vienna2017
chenderson’s picture

This is not a novice issue as per comment Comment #24

tedbow’s picture

Status: Needs review » Needs work
Issue tags: -Needs subsystem maintainer review +Needs reroll

Removing Needs subsystem maintainer review tag. since this effects nearly every system and module I don't think that applies.

Regarding #24

Controllers are already declared @internal in our docs https://www.drupal.org/node/2562903/ but also I think in the proposed changes #2550249: [meta] Document @internal APIs both explicitly in phpdoc and implicitly in d.o documentation

I think #2550249 would be the place to argue that we should not explicitly add the @internal tags to controllers(or other things that our docs also say are internal).

Or if we don't think we should move forward with these types of changes we should address that in the meta issue #2873395: [meta] Add @internal to core classes, methods, properties

jofitz’s picture

Status: Needs work » Needs review
Issue tags: -Needs reroll
FileSize
61.21 KB

Re-rolled.

Version: 8.5.x-dev » 8.6.x-dev

Drupal 8.5.0-alpha1 will be released the week of January 17, 2018, which means new developments and disruptive changes should now be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.6.x-dev » 8.7.x-dev

Drupal 8.6.0-alpha1 will be released the week of July 16, 2018, which means new developments and disruptive changes should now be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

mradcliffe’s picture

Status: Needs review » Needs work
Issue tags: +DrupalEurope, +Needs reroll, +Novice

The patch no longer applies so this needs another re-roll and a review to get this in.

imalabya’s picture

Status: Needs work » Needs review
FileSize
61.96 KB

Re-rolled the patch.

wengerk’s picture

Still need reroll

wengerk’s picture

Status: Needs review » Needs work
wengerk’s picture

Here is the rerolled patch. I also change 3 @internal mention with a breaking-line before for consistency with every others @internal annotation, see interdiff-2873668-35-38.txt.

wengerk’s picture

Status: Needs work » Needs review
Issue tags: -Needs reroll
Sutharsan’s picture

I'm at DrupalEurop and reviewing the work.

@wengerk, Thansk for the reroll. Next time, please provide two consecutive patches: first a reroll, then the additional changes. Reroll requires a different kind of review than a change. But very good you provided a diff for the changes, that helps very much.

Sutharsan’s picture

Status: Needs review » Needs work

#38 patch applies cleanly. Compared #35 and #38 patches and found no other changes than expected.

After applying the patch, I find various controllers that have no @internal. (I've searched for extends Controller, Controller {). I used the following criteria:
- Controllers that are bound to individual routes
- All controllers in tests

All unmarked route controllers are either related to external URLs or can be considered part of the API (e.g. Entity list controllers).

Todo: Various controllers in tests are not marked @internal, other test controller are. A.o. search for 'TestController'.

wengerk’s picture

Thanks for your review !
Here the changes from the suggestions in #41

wengerk’s picture

Status: Needs work » Needs review
dawehner’s picture

I am wondering whether we could add a codestyle rules to automatically check for that.

Version: 8.7.x-dev » 8.8.x-dev

Drupal 8.7.0-alpha1 will be released the week of March 11, 2019, which means new developments and disruptive changes should now be targeted against the 8.8.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

apaderno’s picture

Title: Add @internal to core classes, methods, properties to Controllers » Add @internal to core classes, methods, properties to controllers
Issue summary: View changes

I changed the proposed solution to match with the described task and the given patches.

tatarbj’s picture

Issue tags: +DrupalCampBelarus2019
fabienly’s picture

Assigned: Unassigned » fabienly
FileSize
540 bytes

Hi, on drupal-8.8.x-dev patch fail to apply on :

  • - core/lib/Drupal/Core/Entity/Controller/EntityViewController.php
  • - core/modules/system/src/Tests/System/ErrorHandlerTest.php
  • - core/modules/system/tests/modules/conneg_test/src/Controller/TestController.php

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.0-alpha1 will be released the week of October 14th, 2019, which means new developments and disruptive changes should now be targeted against the 8.9.x-dev branch. (Any changes to 8.9.x will also be committed to 9.0.x in preparation for Drupal 9’s release, but some changes like significant feature additions will be deferred to 9.1.x.). For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

shimpy’s picture

Status: Needs review » Needs work
shimpy’s picture

#42 is not getting applied. I would like to work for #41

errot log

Priyadarshini Govinthan’s picture

Status: Needs work » Needs review
FileSize
35.48 KB

I have added @internal tag to the controller classes for version 8.9.x. Please review.

Status: Needs review » Needs work

The last submitted patch, 52: 2873668.patch, failed testing. View results

apaderno’s picture

Title: Add @internal to core classes, methods, properties to controllers » Add @internal to core controller classes, methods, and properties
shimpy’s picture

Status: Needs work » Needs review
FileSize
59.45 KB

I have created a patch by adding @internal to all the controller classes , methods etc in drupal core with version 8.9.x. Please review.

shimpy’s picture

I have got phplint failed error for #55. Can anyone suggest me how to correct this error??

shimpy’s picture

I have re-created a patch for controller doocumentation.
Please review.

Status: Needs review » Needs work

The last submitted patch, 57: controller_update.patch, failed testing. View results

apaderno’s picture

There is a syntax error in the patch.

PHP Parse error: syntax error, unexpected 'FormController' (T_STRING), expecting '{' in /var/www/html/core/lib/Drupal/Core/Entity/HtmlEntityFormController.php

shimpy’s picture

Status: Needs work » Needs review
FileSize
58.91 KB

I have tried correcting the php parse error.

Status: Needs review » Needs work

The last submitted patch, 61: controller_2873668_61.patch, failed testing. View results
- codesniffer_fixes.patch Interdiff of automated coding standards fixes only.

Dinesh18’s picture

Fixed the failing test. Here is the updated patch.
Kindly review

Dinesh18’s picture

Status: Needs work » Needs review
fabienly’s picture

Assigned: fabienly » Unassigned

Status: Needs review » Needs work

The last submitted patch, 63: controller-2873668-63.patch, failed testing. View results
- codesniffer_fixes.patch Interdiff of automated coding standards fixes only.

Gayathri J’s picture

FileSize
125.36 KB

Hii @Dinesh18 #63 not getting applied coming whitespace errors.
image

ChrisDarke’s picture

Issue tags: +Amsterdam2019

Adding Amsterdam2019 tag, for work in DrupalCon Amsterdam 2019.
Needs review and testing of patch and fix of the issue in the comment #67.

Frederikvho’s picture

I am going to check this out now at DrupalConAmsterdam2019

nickmans’s picture

I'm going to work together with Frederikvho

nickmans’s picture

Removed all whitespaces. Please review.

Frederikvho’s picture

Status: Needs work » Reviewed & tested by the community

I tested this on 8.9.x and it works. The patch error has been resolved in comment #71.

apaderno’s picture

Status: Reviewed & tested by the community » Needs review

May we just wait for the tests to complete?

Status: Needs review » Needs work

The last submitted patch, 71: controller-2873668-71.patch, failed testing. View results
- codesniffer_fixes.patch Interdiff of automated coding standards fixes only.

nickmans’s picture

Fixed coding standards issues, but not sure on how to fix this:

 Drupal\FunctionalTests\Bootstrap\UncaughtExceptionTest::testUncaughtFatalError
Failed asserting that 200 is identical to 500.

/var/www/html/core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php:364
/var/www/html/core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php:113
shimpy’s picture

Status: Needs work » Needs review

Status: Needs review » Needs work

The last submitted patch, 76: controller-2873668-76.patch, failed testing. View results
- codesniffer_fixes.patch Interdiff of automated coding standards fixes only.

apaderno’s picture

The failing test is the following one.

  /**
   * Tests displaying an uncaught fatal error.
   */
  public function testUncaughtFatalError() {
    $fatal_error = [
      '%type' => 'TypeError',
      '@message' => 'Argument 1 passed to Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}() must be of the type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 62',
      '%function' => 'Drupal\error_test\Controller\ErrorTestController->Drupal\error_test\Controller\{closure}()',
    ];
    $this->drupalGet('error-test/generate-fatals');
    $this->assertResponse(500, 'Received expected HTTP status code.');
    $message = new FormattableMarkup('%type: @message in %function (line ', $fatal_error);
    $this->assertRaw((string) $message);
    $this->assertRaw('<pre class="backtrace">');
    // Ensure we are escaping but not double escaping.
    $this->assertRaw('&#039;');
    $this->assertNoRaw('&amp;#039;');
  }

The controller method that should cause a fatal error is ErrorTestController::generateFatals().

public function generateFatals() {
  $function = function (array $test) {
  };
  $function("test-string");
  return [];
}
apaderno’s picture

The patch is correcting the argument passed to that anonymous function, which is the reason why the fatal error would be thrown. The wrong parameter is intentional, and it should not be "corrected."

 /**
  * Controller routines for error_test routes.
+ *
+ * @internal
  */
 class ErrorTestController extends ControllerBase {
 
@@ -59,7 +61,7 @@ public function generateFatals() {
     $function = function (array $test) {
     };
 
-    $function("test-string");
+    $function(["test-string"]);
     return [];
   }
apaderno’s picture

Status: Needs work » Needs review
FileSize
59.66 KB
apaderno’s picture

apaderno’s picture

(The third time should go fine.)

Status: Needs review » Needs work
apaderno’s picture

As reminder, whenever the ErrorTestController.php file is edited, the following lines could need to be edited too.

    $fatal_error = [
      '%type' => 'TypeError',
      '@message' => 'Argument 1 passed to Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}() must be of the type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 62',
      '%function' => 'Drupal\error_test\Controller\ErrorTestController->Drupal\error_test\Controller\{closure}()',
    ];

62 in on line 62 must be corrected to the number of the line containing $function("test-string"); which, with the changes made here, became line 64.

shimpy’s picture

Status: Needs review » Reviewed & tested by the community

#85 looks good.. Cleany applied.
Thanks @kiamlaluno

catch’s picture

Status: Reviewed & tested by the community » Needs work
Issue tags: +Needs re-roll

Needs a 9.0.x patch.

mradcliffe’s picture

git apply -3 drupal-set-controllers-as-internal-2873668-85.patch
error: patch failed: core/lib/Drupal/Core/Entity/Controller/EntityViewController.php:13
Falling back to three-way merge...
Applied patch to 'core/lib/Drupal/Core/Entity/Controller/EntityViewController.php' cleanly.
error: core/modules/tracker/src/Controller/TrackerPage.php: does not exist in index
error: core/modules/tracker/src/Controller/TrackerUserRecent.php: does not exist in index
error: core/modules/tracker/src/Controller/TrackerUserTab.php: does not exist in index

TrackerPage, TrackerUserRecent, and TrackerUserTab were removed in #3097454: Remove tracker.module BC layers.

I removed these from the patch and re-applied to 9.0.x successfully wit a 3-way merge.

I've re-uploaded the patch in 85 as 8.9.x-88.patch and then uploaded the 9.0.x-88.patch for 9.0.x. An interdiff between these two patches is confusing because the interdiff suggests the pages exist in the second patch. They do not. Grepping for TrackerPage, TrackerUserRecent, and TrackerUserTab in the 9.0.x patch shows that those are no longer there but do exist in the 8.9.x patch.

Version: 8.9.x-dev » 9.1.x-dev

Drupal 8.9.0-beta1 was released on March 20, 2020. 8.9.x is the final, long-term support (LTS) minor release of Drupal 8, which means new developments and disruptive changes should now be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 9.1.x-dev » 9.2.x-dev

Drupal 9.1.0-alpha1 will be released the week of October 19, 2020, which means new developments and disruptive changes should now be targeted for the 9.2.x-dev branch. For more information see the Drupal 9 minor version schedule and the Allowed changes during the Drupal 9 release cycle.

Version: 9.2.x-dev » 9.3.x-dev

Drupal 9.2.0-alpha1 will be released the week of May 3, 2021, which means new developments and disruptive changes should now be targeted for the 9.3.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.0-rc1 was released on November 26, 2021, which means new developments and disruptive changes should now be targeted for the 9.4.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.0-alpha1 was released on May 6, 2022, which means new developments and disruptive changes should now be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

aarti zikre’s picture

aarti zikre’s picture

Spokje’s picture

Status: Needs review » Needs work

Patch doesn't apply, looks like there's a bit of local work on /vendor/coder included?

apaderno’s picture

-        'Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}(): Argument #1 ($test) must be of type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 65' :
-        'Argument 1 passed to Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}() must be of the type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 65',
+        'Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}(): Argument #1 ($test) must be of type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 64' :
+        'Argument 1 passed to Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}() must be of the type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 64',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->Drupal\error_test\Controller\{closure}()',
     ];
     $this->drupalGet('error-test/generate-fatals');

It seems the line number is wrong, since that exception message isn't found in the page output.

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

aarti zikre’s picture

Assigned: aarti zikre » Unassigned
Status: Needs work » Needs review
JatinGupta40’s picture

Assigned: Unassigned » JatinGupta40
Status: Needs review » Active

I will review this patch

JatinGupta40’s picture

Assigned: JatinGupta40 » Unassigned
Status: Active » Reviewed & tested by the community

All the @insert are placed properly. The patch is working fine and updating to RTBC.

Status: Reviewed & tested by the community » Needs work
aarti zikre’s picture

Status: Needs work » Needs review
Anjali Rathod’s picture

Status: Needs review » Reviewed & tested by the community

The patch applies successfully and works fine. Dont know why it was moved to Needs review again!

xjm’s picture

Status: Reviewed & tested by the community » Needs work
Issue tags: +Prague2022

Great work on this so far!

One thing we should add is that we should typically explain why something is marked as internal. For example, for plugins we have:

 * @internal                                                                    
 *   Plugin classes are internal. 

So, we should do something similar for this issue, like:

 * @internal                                                                    
 *   Form and route controllers are internal. 
xjm’s picture

@Anjali Rathod and @JatinGupta40, Thank you for reviewing this issue!

The automated testing infrastructure tells us whether the change set still applies, so we do not need people to review that. It is also not sufficient criteria for the issue to be marked "Reviewed and Tested by the Community".

What we do need people to review is whether the issue has a correct scope, whether it passes the core gates, whether the solution completely fixes the problem without introducing other problems, and whether it's the best solution we can come up with. See the patch review guide for more information.

When you do post a review, be sure to describe what you reviewed and how. This helps other reviewers understand why you considered the issue RTBC (and is considered for issue credit).

In this case, it would be good to post specifics of how you checked that all the @internal were properly placed, and how you ensured that no controllers were missed. Describe your review process in detail. For example, post exact commands you used, such as specific grep commands, inside <code> tags (not as screenshots) and what the results of those commands were.

Also see the issue credit guidelines for more information on which kinds of contributions are credited.

And @aarti zikre, in the future, when using a patch workflow, provide interdiffs for your patches. That allows reviewers to evaluate your changes. Thanks!

xjm’s picture

Issue tags: +beta target

This is a good candidate to commit during the beta.

We also need versions of the patch that work with 10.1.x and 10.0.x. Mostly this is just a simple matter of removing hunks that are for modules that were removed in Drupal 10:

error: core/modules/aggregator/src/Controller/AggregatorController.php: does not exist in index
error: core/modules/aggregator/tests/modules/aggregator_test/src/Controller/AggregatorTestRssController.php: does not exist in index
error: core/modules/ckeditor/tests/modules/src/CkeditorOffCanvasTestController.php: does not exist in index
error: core/modules/image/src/Controller/QuickEditImageController.php: does not exist in index
error: core/modules/quickedit/src/QuickEditController.php: does not exist in index
error: patch failed: core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php:95
error: core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php: patch does not apply

Only that last line for UncaughtExceptionTest needs to be fixed (again).

ChrisDarke’s picture

This issue is tagged for first time contributors at DrupalCon Prague 2022.

Version: 9.5.x-dev » 10.1.x-dev

Drupal 9.5.0-beta2 and Drupal 10.0.0-beta2 were released on September 29, 2022, which means new developments and disruptive changes should now be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 10.1.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch, which currently accepts only minor-version allowed changes. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.