Problem/Motivation

Add object that uses the FactoryInterface should have dependencies inject via ::create and not ::__construct(). This allows parent classes to change their constructor without breaking any code.
See https://events.drupal.org/seattle2019/sessions/drupal-9-coming-getting-y...
See https://www.drupal.org/core/d8-bc-policy

Example: \Drupal\config_sync\Controller\ConfigSyncController::create
See https://www.youtube.com/watch?time_continue=1554&v=hN9KjaBvAUk
See https://www.previousnext.com.au/blog/safely-extending-drupal-8-plugin-cl...

Proposed resolution

Fix subclassing and stop overriding constructors.

Comments

thalles created an issue. See original summary.

thalles’s picture

Follow a patch

japerry’s picture

Status: Needs review » Fixed

  • japerry committed 0d7fb0a on 8.x-3.x authored by thalles
    Issue #3113234 by thalles: Fix subclassing and stop overriding...

  • japerry committed 4e8697b on 4.x authored by thalles
    Issue #3113234 by thalles: Fix subclassing and stop overriding...

Status: Fixed » Closed (fixed)

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