Problem/Motivation

#2670360: Add BC layer in installSchema to support url_alias adds a BC layer which should be removed before 8.1.0

Proposed resolution

Remove it
Deprecate it.

Remaining tasks

User interface changes

API changes

Data model changes

Comments

edurenye created an issue. See original summary.

dawehner’s picture

Status: Active » Postponed

.

catch’s picture

Probably best time to do this would be after the last non-security patch release for 8.0.x - then apart from last minute security release which won't have advance testing with contrib anyway, we know we're not introducing any more changes into the branch then.

tstoeckler’s picture

Can someone explain why this is tagged against 8.1 instead of 9 ?

I.e. will this not cause a module's tests to fail again when run against both 8.0.0 and 8.1.0 ?

catch’s picture

@tstoeckler once 8.0.x support is dropped, there'll be no tests that actually need to install those system tables, so an updated module's tests will pass - because they'll only run against 8.1.x (or 8.1.x and 8.2.x by that point).

A module that hasn't been updated will have failing tests, but we explicitly let ourselves break tests between minor releases. This one was annoying though because a test that passed on both branches was tricky to write (if at all).

tstoeckler’s picture

Ahh so, the day that 8.1.0 is released 8.0.* is unsupported? I wasn't aware of that. Thanks for the explanation.

catch’s picture

tstoeckler’s picture

Thanks!

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.0-beta1 was released on March 2, 2016, which means new developments and disruptive changes should now be targeted against the 8.2.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.2.x-dev » 8.3.x-dev

Drupal 8.2.0-beta1 was released on August 3, 2016, which means new developments and disruptive changes should now be targeted against the 8.3.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.3.x-dev » 8.4.x-dev

Drupal 8.3.0-alpha1 will be released the week of January 30, 2017, which means new developments and disruptive changes should now be targeted against the 8.4.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.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.

daffie’s picture

Status: Postponed » Needs review
StatusFileSize
new926 bytes

Support for Drupal 8.0.x has been dropped, so lets do this.

Status: Needs review » Needs work

The last submitted patch, 13: 2670454-13.patch, failed testing. View results

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.

mile23’s picture

Patch in #13 still applies. Restarting test.

alexpott’s picture

I think we should add an @trigger_error() and deprecate this. That way we can fix core but not break contrib tests. And then once we allow contrib tests to define whether they should skip deprecations or not they can benefit from this info too.

lendude’s picture

Status: Needs work » Needs review
StatusFileSize
new1.89 KB
new2.12 KB

So something like this maybe.

Status: Needs review » Needs work

The last submitted patch, 19: 2670454-19.patch, failed testing. View results

lendude’s picture

Title: Remove BC layer for #2670360 » Deprecate BC layer for #2670360
Issue summary: View changes
Status: Needs work » Needs review
StatusFileSize
new3 KB
new6.19 KB

Well that shows the deprecation works.

Took out the remaining fails (I think).

borisson_’s picture

Status: Needs review » Reviewed & tested by the community

Yep, the test is green, so that means that you've caught them all.

catch’s picture

Status: Reviewed & tested by the community » Fixed

Committed c16c5d0 and pushed to 8.7.x. Thanks!

  • catch committed c16c5d0 on 8.7.x
    Issue #2670454 by Lendude, daffie, alexpott: Deprecate BC layer for #...
larowlan’s picture

Status: Fixed » Needs work

Shouldn't the deprecation notices link to a change record?

jibran’s picture

Title: Deprecate BC layer for #2670360 » Deprecate individual schema install of system module in KernelTestBase
Issue tags: +Needs change record
+++ b/core/tests/Drupal/KernelTests/KernelTestBase.php
@@ -728,10 +732,10 @@ protected function installSchema($module, $tables) {
+          @trigger_error('Special handling of system module schemas in \Drupal\KernelTests\KernelTestBase::installSchema has been deprecated in Drupal 8.7.x, remove any calls to this method that use invalid schema names.', E_USER_DEPRECATED);

s/invalid/individual

berdir’s picture

Also, the @deprecated on the docblock marks *all cases* of this method as deprecated/striked-through in PHPStorm. Maybe only use that if the whole method is deprecated and document this in a different way?

alexpott’s picture

@jibran the work invalid here is correct.

+++ b/core/modules/block_content/tests/src/Kernel/BlockContentAccessHandlerTest.php
@@ -56,7 +56,6 @@ class BlockContentAccessHandlerTest extends KernelTestBase {
-    $this->installSchema('system', ['sequence']);

It reflects the fact that this did not cause an error. sequence is an invalid name.

alexpott’s picture

Status: Needs work » Fixed
Issue tags: -Needs change record

Added a change record for what it worth - https://www.drupal.org/project/drupal/issues/2794347

I agree with @Berdir - we should remove the @deprecation from the method since it is only a BC behaviour of the method that has been deprecated. Let's do that in a follow-up.

alexpott’s picture

Status: Fixed » Closed (fixed)

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