Problem/Motivation

For extensive background discussion, see http://groups.drupal.org/node/210973.

In short, the problem is that we'd like some types of user interface improvements which are added to Drupal 8 core to also be available to Drupal 7 sites. However, we often don't want to do it as a straight backport of the Drupal 8 patch, because that can risk breaking other modules, and it conflicts with our goal of making Drupal 7 point releases as stable as possible.

Proposed resolution

Based on the discussion in the above groups.drupal.org post, the proposal here is to add a new module to Drupal core in which backported UI updates can be added (e.g., using hook_form_alter() and the like), rather than adding such "risky" changes to core modules themselves.

This will allow sites which require extra stability to not enable the module at all, while sites which want to take advantage of the latest changes can keep it on.

Note that there are several contrib modules which do something similar:
http://drupal.org/project/backports
http://drupal.org/project/edge
http://drupal.org/project/fixcore

Adding such a module to core would allow these efforts to be combined (at least for the most conservative, agreed-upon changes) and also would make the module automatically available to Drupal sites which might not know to go out and download it on their own.

The module would (at a minimum) be enabled by default in the standard install profile, because there's no reason not to. It might also be automatically enabled in other situations too, depending on what we decide.

Note that the mere fact that this is a separate module can, in some cases, help with stability even when a site chooses to turn it on. For example, the module can be given a very high weight, so that its hooks run after those of other modules, and the alter code can be written in a conservative way so as not to alter things that it appears other modules have already altered first. This would help minimize the chance of conflicts with contrib/custom modules.

Remaining tasks

  1. Decide if this is a good idea, and implement it if so.
  2. Add some code to the new module. Something like #1164812: Improve UX for machine names for fields. might be a good place to start, unless it's already included in a D7 point release when we work on this.

User interface changes

A new module will appear on the modules page (unless we decide to make it a hidden module?).... And obviously, sites which turn this module on will get additional user interface changes as time goes on.

API changes

None.

Comments

catch’s picture

I think this is a good idea, the main concern I'd have is figuring out the balance between things that go in the module vs. things everyone gets, but we can only do that once the module is in anyway.

klonos’s picture

There's no need for us to decide/debate over what should be enabled or not by default. The module can have a config page that lists all available fixes/backports/whatever along with a checkbox next to each one, allowing users to selectively enable these. Fix Core already does it this way.

This would also make it easier to troubleshoot things once we've spotted that the source of evil is this specific module. People would start disabling recently enabled features/fixes, until their issue goes away. Then they leave the specific fixes to be blamed disabled until we figure out what's wrong and perhaps provide a solution for that too ;)

David_Rothstein’s picture

Just a heads-up for anyone who's interested that I'm going to revive some of this discussion at CapitalCamp this weekend:

http://capitalcamp.org/content/drupals-backport-policy-how-enjoy-future-...

klonos’s picture

...anything interesting worth sharing that came out of that David?

David_Rothstein’s picture

Version: 7.x-dev » 8.x-dev
Issue tags: +Needs backport to D7

Oops, never responded to that... and now it's almost next year's CapitalCamp :)

The session I gave last year was not heavily attended (apparently Saturday mornings are not a time a lot of people like to show up for a policy discussion!). And though I talked about this some, we didn't get too far into the details in the discussion phase.

That said, the overall trend of the opinions people expressed during the discussion was that they preferred stability over new features in an already-released version of Drupal core. Which for the purposes of this issue I would translate to mean that they would not be interested in enabling this module on their sites (which means it would definitely be a good place to put new features that are focused on new sites).

Anyway, I'm still interested in seeing this happen but probably won't have time to work on it anytime soon. At this point, I'm moving it to Drupal 8 also, although (by definition) it could still be backported to Drupal 7 as well.

David_Rothstein’s picture

Issue summary: View changes

mention custom modules in addition to contrib

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

Drupal 8.0.6 was released on April 6 and is the final bugfix release for the Drupal 8.0.x series. Drupal 8.0.x will not receive any further development aside from security fixes. Drupal 8.1.0-rc1 is now available and sites should prepare to update to 8.1.0.

Bug reports should be targeted against the 8.1.x-dev branch from now on, and new development or disruptive changes should 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.

Fabianx’s picture

I am still +1 to doing something like that.

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

Drupal 8.1.9 was released on September 7 and is the final bugfix release for the Drupal 8.1.x series. Drupal 8.1.x will not receive any further development aside from security fixes. Drupal 8.2.0-rc1 is now available and sites should prepare to upgrade to 8.2.0.

Bug reports should be targeted against the 8.2.x-dev branch from now on, and new development or disruptive changes should 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.2.x-dev » 8.3.x-dev

Drupal 8.2.6 was released on February 1, 2017 and is the final full bugfix release for the Drupal 8.2.x series. Drupal 8.2.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.3.0 on April 5, 2017. (Drupal 8.3.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.3.x-dev branch from now on, and new development or disruptive changes should 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.3.x-dev » 8.4.x-dev

Drupal 8.3.6 was released on August 2, 2017 and is the final full bugfix release for the Drupal 8.3.x series. Drupal 8.3.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.4.0 on October 4, 2017. (Drupal 8.4.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.4.x-dev branch from now on, and new development or disruptive changes should 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.

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

Drupal 8.4.4 was released on January 3, 2018 and is the final full bugfix release for the Drupal 8.4.x series. Drupal 8.4.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.5.0 on March 7, 2018. (Drupal 8.5.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.5.x-dev branch from now on, and new development or disruptive changes should 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.5.x-dev » 8.6.x-dev

Drupal 8.5.6 was released on August 1, 2018 and is the final bugfix release for the Drupal 8.5.x series. Drupal 8.5.x will not receive any further development aside from security fixes. Sites should prepare to update to 8.6.0 on September 5, 2018. (Drupal 8.6.0-rc1 is available for testing.)

Bug reports should be targeted against the 8.6.x-dev branch from now on, and new development or disruptive changes should 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.

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

Drupal 8.6.x will not receive any further development aside from security fixes. Bug reports should be targeted against the 8.8.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.9.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: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.7 was released on June 3, 2020 and is the final full bugfix release for the Drupal 8.8.x series. Drupal 8.8.x will not receive any further development aside from security fixes. Sites should prepare to update to Drupal 8.9.0 or Drupal 9.0.0 for ongoing support.

Bug reports should be targeted against the 8.9.x-dev branch from now on, and new development or disruptive changes should 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: 8.9.x-dev » 9.2.x-dev

Drupal 8 is end-of-life as of November 17, 2021. There will not be further changes made to Drupal 8. Bugfixes are now made to the 9.3.x and higher branches only. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

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

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

Drupal 9.3.15 was released on June 1st, 2022 and is the final full bugfix release for the Drupal 9.3.x series. Drupal 9.3.x will not receive any further development aside from security fixes. Drupal 9 bug reports should be targeted for the 9.4.x-dev branch from now on, and new development or disruptive changes should 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.

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

Drupal 9.4.9 was released on December 7, 2022 and is the final full bugfix release for the Drupal 9.4.x series. Drupal 9.4.x will not receive any further development aside from security fixes. Drupal 9 bug reports should be targeted for the 9.5.x-dev branch from now on, and new development or disruptive changes should 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.

quietone’s picture

Status: Active » Closed (won't fix)

I think it is time to close this one, especially given End of life announcement and changes to Drupal 7 support - PSA-2023-06-07.