Problem/Motivation

Part of the plan in #3050378: [meta] Replace Classy with a starterkit theme is removing Classy from Core in Drupal 10. It will be some time before a Drupal 10 branch is opened, but part of this process includes adding technical debt that should be addressed in Drupal 10. This issue provides a home for that debt.

Proposed resolution

When Drupal 10 branch becomes available, update the IS with more detail and commence Classy removing.

Remaining tasks

User interface changes

API changes

Data model changes

Release notes snippet

The Classy base theme has been removed from Drupal core and is now available as a contributed theme. Themes depending on Classy should add a dependency on the contributed theme.

Issue fork drupal-3110137

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

bnjmnm created an issue. See original summary.

dww’s picture

At first I thought this was duplicate with #3050378: [meta] Replace Classy with a starterkit theme but I see you propose this as an independent step. Adding that as the parent to make this relationship more explicit.

Thanks,
-Derek

bnjmnm’s picture

Issue summary: View changes
Mixologic’s picture

When removing a module from core, the composer facade will have to deal with namespace collisions.

If we keep the project machine name the same, then there will be a namespace "drupal/classy" that refers to the theme that was available in core, and the composer facade will automatically assign a name of "drupal/classy-classy" to the contrib version of this theme.

Right now, I cant find any evidence of any projects with an existing dependency on drupal/classy so we might be safe to swap the namespaces so that drupal/core-classy then refers to the old one ( since nobody was really using that.)

But definitely coordinate with the infra team if we want to preserve that namespace.

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.

steinmb’s picture

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.

lauriii’s picture

Title: [PP-D10] remove Classy from core. » Remove Classy from core.
Status: Postponed » Active

I think we can start working on this. I filed an issue to do the deprecation #3307241: Deprecate Classy in favor of the new Starterkit Theme.

Spokje’s picture

Assigned: Unassigned » Spokje
Spokje’s picture

lauriii’s picture

Status: Active » Needs review

Sorry, I didn't realize this is assigned to you @Spokje because I had this issue open for a while... I pushed commit to the fork that should handle deleting all references to Classy.

lauriii’s picture

Issue summary: View changes
FileSize
17.63 KB

I don't seem to be able to open MR for this 😢

Spokje’s picture

Assigned: Spokje » Unassigned

Sorry, I didn't realize this is assigned to you @Spokje because I had this issue open for a while.

Right... That's about 30 minutes I could have spend elsewhere...

lauriii’s picture

Here's a patch because of #14.

lauriii’s picture

@Spokje I think that might not actually be waster time! What you could do is take your commit/patch and compare if it's different from #16. If there are differences, we should look into that. If it's exactly the same, I believe you could mark this as RTBC.

Status: Needs review » Needs work

The last submitted patch, 16: 3110137-16.patch, failed testing. View results

bnjmnm’s picture

Status: Needs work » Needs review
FileSize
35.41 KB

I had a branch with much of Classy removed already for when I was testing test removal. Updated the maintainers and Stable readme on top of that like @lauriii did in #16

bnjmnm’s picture

Version: 9.5.x-dev » 10.0.x-dev
bnjmnm’s picture

Version: 10.0.x-dev » 10.1.x-dev
FileSize
290.59 KB
35.41 KB
Spokje’s picture

Title: Remove Classy from core. » [PP-1] Remove Classy from core.
Status: Needs review » Postponed

I think it is better to postpone this on #3307454: Move classy related tests to the theme directory/namespace or handle them otherwise, which, upon being committed, will probably mean a reroll for this one.

bnjmnm’s picture

lauriii’s picture

Title: [PP-1] Remove Classy from core. » Remove Classy from core.
Spokje’s picture

Added a few missed classy references/tests to the patch.

Left with a few (hopefully mildly annoying) questions:

- We're sure we're doing this on 10.1.x and not on 10.0.x
- What to do with the Classy reference in this help-topic:
https://git.drupalcode.org/project/drupal/-/blob/10.1.x/core/modules/hel...
- What to do with the Classy reference in this comment in Umami and Claro theme:
https://git.drupalcode.org/project/drupal/-/blob/10.1.x/core/profiles/de...
https://git.drupalcode.org/project/drupal/-/blob/10.1.x/core/themes/clar...

The last submitted patch, 24: 3110137-24-REROLL.patch, failed testing. View results

lauriii’s picture

Thank you for working on this @Spokje! Here's what I think we should do:

  1. We need to do this for both 10.0.x and 10.1.x but the same patch will likely apply for both
  2. I think the core.appearance.html.twig help topic could reference Stable 9. I'm wondering if we should update this to also mention the starterkit theme generator?
  3. I think we could remove the comment and if condition from umami_preprocess_links__media_library_menu and claro_form_alter
Spokje’s picture

Version: 10.1.x-dev » 10.0.x-dev
FileSize
4.3 KB
296.68 KB

Thanks @lauriii

1. We need to do this for both 10.0.x and 10.1.x but the same patch will likely apply for both

Putting issue version on 10.0.x-dev

2. I think the core.appearance.html.twig help topic could reference Stable 9. I'm wondering if we should update this to also mention the starterkit theme generator?

Swapped out Classy with Stable 9. I think we should mention the starterkit theme generator, but I think that's something for a follow-up issue?

3. I think we could remove the comment and if condition from umami_preprocess_links__media_library_menu and claro_form_alter

Removed them in newly uploaded patch.

bnjmnm’s picture

There were two remaining @todo "remove condition, keep (etc)" that pointed to this issue that are now removed

nod_’s picture

Title: Remove Classy from core. » Remove Classy from core
lauriii’s picture

Status: Needs review » Needs work
  1. We should update core/themes/starterkit_theme/css/components/image-widget.css because it has still couple Classy references.
  2. Claro has multiple mentions of Classy in comments. Should we update those?
  3. I think the Classy reference should be removed from core/themes/olivero/templates/block/block--search-form-block.html.twig
bnjmnm’s picture

Status: Needs work » Needs review
FileSize
311.58 KB
13.63 KB

Addresses #32 plus other things I spotted.

bnjmnm’s picture

lauriii’s picture

Status: Needs review » Reviewed & tested by the community

Thank you @bnjmnm! I think all of the remaining mentions of Classy make sense even though Classy has been removed.

Spokje’s picture

Yes, I hate the admin stuff as well, but to be completely sure we've covered all our bases, I've created #3308518: [Meta] Tasks to remove Classy theme from core and move to contrib.

Looks like we need a resplit of the Core theme to the contrib module (I _think_ it's only the two moved tests that are missing in the contrib project now) and manual testing for this issue to be fully ready?

Spokje’s picture

Wim Leers’s picture

Spokje’s picture

Copy-paste-adapt, the cornerstone of every developer 😈

lauriii’s picture

I tagged 1.0.0-rc1 on the Classy contrib project. It would be helpful if someone running theme depending on Classy could manually test the theme with the following steps:

  1. Update to Drupal 10.0.0 HEAD
  2. Run composer install
  3. Apply patch from #34
  4. Run composer require drupal/classy
  5. Confirm that the theme still works
lauriii’s picture

Status: Reviewed & tested by the community » Needs work
Issue tags: +Needs reroll
Spokje’s picture

Assigned: Unassigned » Spokje

O well, why not do another reroll :)

Spokje’s picture

Spokje’s picture

Assigned: Spokje » Unassigned
Status: Needs work » Needs review
Spokje’s picture

Issue tags: -Needs reroll

(Why is there _always_ one thing I forget to update in the first attempt...)

Spokje’s picture

FileSize
6.59 KB
312.14 KB

(More relevant, why did I get the reroll wrong...)

lauriii’s picture

Status: Needs review » Reviewed & tested by the community

Tested #41 using Garland and everything worked as expected! Confirmed that the reroll should be good 👍

lauriii’s picture

I tagged a stable release on the contrib project and opted-in for security team coverage.

lauriii’s picture

Issue summary: View changes
catch’s picture

Status: Reviewed & tested by the community » Fixed

Patch looks good - a few references to remove along with the module but mostly docs so makes sense to do it in one go.

Committed/pushed to 10.1.x and cherry-picked to 10.0.x, thanks!

  • catch committed c3d1caa on 10.1.x
    Issue #3110137 by bnjmnm, Spokje, lauriii, Mixologic: Remove Classy from...

  • catch committed 86710ae on 10.0.x
    Issue #3110137 by bnjmnm, Spokje, lauriii, Mixologic: Remove Classy from...

Status: Fixed » Closed (fixed)

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