Problem/Motivation

Drupal core's CSS is not properly architected to be Predictable, Reusable, Maintainable, and Scalable. It leads to problems like the pitfalls described at http://drupal.org/node/1887918#pitfalls. It makes our aggregation strategy awkward because we have to artificially force all theme-level CSS after module-level CSS. And it is difficult for Drupal themes to provide lean CSS that doesn't break core functionality.

Proposed resolution

Over in #1891580: [policy] Finally agree on CSS coding standards, the front-end developers of Drupal agreed to attempt a new CSS architecture strategy in Drupal 8. Details of this strategy can be found at http://drupal.org/node/1887918 and http://drupal.org/node/1887922

Some dream mark up has been prototyped as static html in the Seventy Eight Style guide prototype.

Remaining tasks

These tasks are dependent on each other and should be tackled in this order

  1. #1924368: Rename old CSS constants to CSS_AGGREGATE_* and add new CSS weight constants
  2. #1924430: Add drupal.base library for base CSS styles
  3. #1924436: Remove separate CSS_AGGREGATE_SYSTEM aggregate file and fix drupal_add_library() to aggregate CSS properly
  4. #1109854: Overly aggressive transliteration in drupal_clean_css_identifier removes underscores from classes or #2009584: Allow double underscores to pass through drupal_clean_css_identifier as per new CSS standards
  5. #1987066: Rename files to match CSS file naming convention - core patch that incorporates all the following work from the Mobile Initiative sandbox:
  6. #2015789: Remove language_css_alter() (RTL stylesheets) in favor of HTML 'dir' attribute
  7. #1839318: Replace drupal.base.css library with normalize.css for all themes
  8. #1473066: [Meta] Move third-party assets out of core/misc folder
  9. Update/apply patches left over from the HTML5 initiative's CSS clean-up effort. There may be some useful patches there, but there may not be.
  10. #1995272: [Meta] Refactor module CSS files inline with our CSS standards ← Current area of focus
  11. #1924522: Remove separate CSS_AGGREGATE_THEME aggregate file

We should also:

API changes

  • The 3 CSS constants for the CSS "group" (CSS_SYSTEM, CSS_DEFAULT, CSS_THEME) will be simplified to just a single group constant, CSS_AGGREGATE_DEFAULT. This will reduce our aggregated CSS files from 4 files to just 2.
  • drupal_add_css() will use CSS_COMPONENT as the default 'weight' and CSS_AGGREGATE_DEFAULT as the default 'group'.
  • We'll add a drupal.base.css library to contain "base" HTML element styling for core which will be loaded using a weight of CSS_BASE. (Those rules that aren't already part of Normalize.css.)
  • We'll load the Normalize.css library by default.
  • The filenames for modules' CSS will match the pattern: module_name.module.css, module_name.theme.css, module_name.admin.css, module_name.admin.theme.css
  • All core CSS will follow the CSS formatting standards.
  • All core CSS will follow the CSS architecture standards.
CommentFileSizeAuthor
#4 MASS-mortendk.jpg44.33 KBjohnalbin

Comments

chrisjlee’s picture

Draft Proposal here: http://drupal.org/node/1887918
Grouping CSS rulesets: http://drupal.org/node/1887922

johnalbin’s picture

Issue summary: View changes

Add link to 1924368

johnalbin’s picture

Issue summary: View changes

Add proper issue summary.

johnalbin’s picture

Issue summary: View changes

Add link to new issue

johnalbin’s picture

Issue summary: View changes

Add new issue link

johnalbin’s picture

The rough outline has x's in front of work I've already done in my sandbox: http://drupalcode.org/sandbox/johnalbin/1488942.git/shortlog/refs/heads/...

sun’s picture

The filenames for modules' CSS will match the pattern: module_name.module.css, module_name.skin.css, module_name.admin.css, module_name.admin.skin.css

I don't get this name change. Where was this discussed?

sun’s picture

Issue summary: View changes

Add new issue link

johnalbin’s picture

Issue summary: View changes

Show dependencies in remaining tasks.

johnalbin’s picture

Issue summary: View changes

Rearrange dependency list.

johnalbin’s picture

Issue summary: View changes

Add new issue link

johnalbin’s picture

StatusFileSize
new44.33 KB

I don't get this name change. Where was this discussed?

Drupalcon Sydney, the Mobile Initiative meetings this week and on http://drupal.org/node/1887922

The BAT (base-admin-theme) was a fantastic idea. It works really well, but its names conflict with the SMACSS categorization we're using in Drupal 8. So we just need to rename them.

MODULE.base.css becomes MODULE.module.css.
MODULE.admin.css stays the same (but requires adding a MODULE.admin.skin.css so admin themes can override the default skin).
And MODULE.theme.css becomes MODULE.skin.css.

sun’s picture

Why the rename from .theme to .skin?

.theme seems to be perfectly in line with http://smacss.com/book/type-theme

It's even more clear in Drupal, because we have the "theme" terminology already.

mbrett5062’s picture

+1 for keeping .theme for the reason @sun put forward, it makes more sense to keep the consistency.

lewisnyman’s picture

+1 to using .skin because the Drupal definition of theme is not the same as the SMACSS definition. The are completely inconsistent.

In Drupal, a theme can cover:

The mark up output.
CSS for the entire layout and structure of a site, which could include multiple variants of a 'theme' from the SMACSS definition.
Javascript that affects the functionality of the site.

I don't think I've ever seen a Drupal theme that covers only colours and type. A good example of the SMACSS definition of theme would be the theme options for jQuery UI or jQuery Mobile.

lewisnyman’s picture

Issue summary: View changes

Add new issue link

johnalbin’s picture

As Lewis said, SMACSS's definition of module and theme is completely different than Drupal's definition of module and theme. It's like Jonathan Snook thought to himself “How can I make this system the most confusing to Drupal people.” ;-)

Our CSS architecture page ( http://drupal.org/node/1887918#separate-concerns ) already notes that we have used alternatives to some of the SMACSS terminology. It's unfortunate; I struggled with this problem for about 6 months and I believe the solution the community reached is the best we can achieve. Fortunately, the alternatives we used (component and skin) are widely used in the larger front-end community and are synonyms for the SMACSS terminology.

johnalbin’s picture

Issue summary: View changes

Add new issue link

shyamala’s picture

Issue tags: +mobile, +d8mux, +d8mux-css-cleanup

Adding tags

shyamala’s picture

Adding tags again...

shyamala’s picture

Issue summary: View changes

Add new issue link

shyamala’s picture

Issue summary: View changes
johnalbin’s picture

Issue summary: View changes

Add link to #1109854

johnalbin’s picture

Issue summary: View changes

Add links to HTML5 initiative CSS clean-up issues.

johnalbin’s picture

Issue summary: View changes
rteijeiro’s picture

Issue summary: View changes

Added the #1969124 issue

johnalbin’s picture

Issue summary: View changes

Add new sub-tasks.

johnalbin’s picture

Issue summary: View changes

Add new issues

echoz’s picture

Issue summary: View changes

remove dead issue link

johnalbin’s picture

Issue summary: View changes

Add new issues.

johnalbin’s picture

Issue summary: View changes

Add new issue

johnalbin’s picture

Issue summary: View changes

Add new issue

tim.plunkett’s picture

Where does SMACSS specify "skin" over "theme"?
That rename seems absurd.

Also, the first three patches I looked at aren't rolled correctly.
Please read http://drupal.org/documentation/git/configure and use renames = copies

ry5n’s picture

@tim.plunkett SMACSS uses the term 'theme' to refer to non-structural, non-layout styles (the surface colors, borders, padding, backgrounds, etc.). Since the existing Drupal term 'theme' often refers to a much broader set of things, we wanted to avoid confusion. Are you saying that’s not necessary?

tim.plunkett’s picture

I'm saying that I agree with #5, and I think the name change is a distraction and is even more foreign to Drupal.

I do think the .base.css to .module.css switch makes sense, but let's not blindly switch 100% to a naming convention just because we like 80% of it.

EDIT:

By my grep, the word "skin" appears zero times in core. In fact, "skin" appears zero times on http://smacss.com/book/categorizing too.
We have modules, we have themes, let's call it according to what we have.

tim.plunkett’s picture

In the SMACSS book, the word "skin" appears in two places:

The need for theming within a project is necessary when you want the user to receive an alternate skin that provides some cosmetic alterations.

There are certainly multiple ways to skin a cat.

The entire section on "Theme Rules" makes me think that .theme.css is EXACTLY what we want to be calling this.

Thanks to @dead_arm for sharing her copy of the SMACSS book with me.

ry5n’s picture

I want us to use the SMACSS concepts; the labels we use are less important, as long as folks understand them. The BAT convention already uses “theme” in a way that’s more in line with SMACSS that the normal Drupal meaning, so I guess there’s precedent. I’m fine either way.

lewisnyman’s picture

What I think we should avoid is the same kind of confusion we had with tpls and template.php. Two completely different things with the same name.

tim.plunkett’s picture

The template.php issue was because there were named exactly the same across themes.

If you can't tell the difference between bartik.theme, bartik.theme.css, garland.theme, and garland.theme.css, that's your problem.

All of the currently RTBC issues need to be knocked to NW.

webchick’s picture

Hm. I don't know that I see enough compelling arguments here to introduce Yet Another Weird Term Into Drupal's Vernacular, personally. #14 is a pretty compelling argument against it, in fact.

Additionally, in a quick search at GitHub, I can't find any other smacss code out there that's using "skin" but several that are using "theme." So it seems like we'd be inventing a Drupalism here, in addition to introducing another term?

I think that Lewis's concerns in #7 and #16 are valid, but only for people with a deep understanding of Drupal's nuances. For most normal people, "theme" == "how it looks," which is probably why SMACSS chose that term.

rteijeiro’s picture

As I understand, we refer to "theme" as the whole bunch of files to style our site. But inside our modules we want to have some files as:

- foo.module.css: the minimun styles our module should have to work.
- foo.skin.css: other styles (color, fonts...) that can be overrided by other themes.

The same for admin pages:

- foo.admin.css: base styles (layout, state, component) for the administative pages of our module.
- foor.admin.skin.css: other styles that can be overrided by other themes.

In my opinion, keeping the names foo.theme.css and foo.admin.theme.css will cause confusion with the "theme" term. In other hand, now I am writing this, it seems that the css file names are related to the "theme" term, giving us a the impression that they are part of the theme files.

Late night deliriums...

tim.plunkett’s picture

I don't think anyone would think that /modules/pathauto/css/pathauto.admin.theme.css would be part of a theme, or if they did, that /modules/pathauto/css/pathauto.admin.skin.css would be an improvement.

webchick’s picture

Right. Or if it were that confusing to lots of people, we should have heard about it by now; D7 shipped with at least system.theme.css for a very similar purpose.

ry5n’s picture

Well, I guess I’m off the fence. I’m no longer afraid the term 'theme' used this way is really going to cause confusion, and that was really the only reason to introduce it. I’d like to hear from @JohnAlbin though.

echoz’s picture

"skin" on the chopping block again, eh?
I would be happy to not use "skin" as I've voiced before. @tim.plunkett you bring up a fresh perspective in #20.

Unlike "theme", using modular "components" because we have another thing called drupal "modules", makes sense since these can be referred to as nouns, so an imagined mixup in conversation is obvious.

webchick’s picture

I think we need to do these renames as a single patch, not in separate sub-issues. Because:

#1: It's clobbering up the RTBC queue with individual issues (each carrying their own roll/review/re-roll/re-review/rtbc/re-re-re-review/needs work/commit/etc. overhead), with patches that could easily be scripted and reviewed as a whole.
#2: If they're not all done at once, we introduce inconsistencies in how files are named, which will be confusing to themers. We can't introduce more stuff to "clean up later" at this point in the release cycle. :\
#3: I still am not clear on whether or not this naming convention actually has community buy-in around it, and one place to discuss it would be much easier to determine this than several.

Can we please close these sub-issues as dupes and work at either #1921610: [Meta] Architect our CSS or some other "all in one rename" issue?

webchick’s picture

And just to be clear, I meant this only for renames which are more or less "the exact same changes made for 30K files." I think the CSS clean-up patches make total sense split into their own issues, because they probably do warrant discussing/reviewing independently, and we don't leave D8 in a "half-baked" state if we only manage to clean up half the CSS we meant to. But this is not true of file renames.

akmalfikri’s picture

It was separated because we did those issues during a sprint at DrupalCamp SG, just to be clear. Yeah I totally agree with you.

ry5n’s picture

I’m still worrying about this terminology, although I haven’t changed my mind from #22. The following is just something to keep in mind.

SMACSS theme styles within themes, not modules, is the most likely cause of confusion here (“I heard you like themes in your theme…”). Real use case: dark and light colour scheme (user-switchable via js): now you have …themename/stylesheets/theme/dark.css and …themename/stylesheets/theme/light.css. I still think that’s probably OK, because most themes won’t need it. But it is more than a little odd.

ry5n’s picture

Another likely occurrence of separate theme styles within themes in starter/base themes. That might be the most common case in the wild; in fact, I would recommend all base themes carefully separate their base and structural styles the same way modules do, which means you will have theme.css within themes be quite common.

shyamala’s picture

Created a single issue to rename all css files at: #1987066: Rename files to match CSS file naming convention based on request by webchick to make review easier. Refer: http://drupal.org/node/1921610#comment-7375894

Need to clarify naming convention, refer tim.plunkett query at http://drupal.org/node/1921610#comment-7362724

shyamala’s picture

Issue summary: View changes

Updated issue summary.

shyamala’s picture

@johnalbin Comment #20 needs your eyes to resolve the theme vs skin debate :)

jwilson3’s picture

Cross-post from comment #15on #1987066-15: Rename files to match CSS file naming convention.

Drupal uses the term module to mean something completely different than SMACSS' meaning.

SMACSS module: a single discrete component (read: chunk of html tags) on the page.

Adopting the naming convention of modulename.module.css pollutes the Drupal terminology namespace for "modules", and could create a WTF for two reasons:
1) a single Drupal module could generate code for many various disparate or loosely related SMACCS modules.
2) we need to add more clarification documentation around where the X.module.css convention for SMACSS modules can be used outside the scope of Drupal modules. Other components, including themes, install profiles, etc, could all conceivably contain a css file called X.module.css in order to follow this new SMACSS module naming convention.

With the skin/theme and now module dilema, its clear there is lots of overlap between SMACSS terminology and pre-existing Drupal nomenclature. Thinking outside the box, is there some way to implement and make use of SMACSS layering *concepts* without tying our file names to their naming scheme?

johnalbin’s picture

We just discussed this in the latest Mobile Initiative meeting and we are all fine with leaving *.theme.css as is. I am pretty adamant about changing *.base.css to *.module.css, so I'm glad other people are fine with that renaming.

hass’s picture

I would like to please you guys also to write comments into the CSS files. Today it's impossible to guess how class names are used and for what.

hass’s picture

johnalbin’s picture

Issue summary: View changes

Move issues to sandbox.

johnalbin’s picture

Issue summary: View changes

Updated issue summary.

johnalbin’s picture

Issue summary: View changes

Add #1925320 back to the list

kevin morse’s picture

Please see http://drupal.org/node/1987066#comment-7418144... Is there any point in me re-rolling this patch at the moment?

This seems to be an important task remaining but progress seems to be stalled. I am willing to do the work to get it working again if it will be committed before it breaks again.

ry5n’s picture

@Kevin thanks. I assume you mean #1987066. I think a reroll is appropriate, with 'theme' instead of 'skin'. AFAIK we have consensus again on naming, e.g. system.module.css, system.theme.css.

echoz’s picture

@Kevin Morse, all renaming issues are moved to a sandbox, and what I understand from 5 in the issue summary above, that issue will be used to combine them in a larger chunk. Each of those issues in the list under "Mobile Initiative sandbox:" actually link to them where they now are located in the sandbox. So it seems the available renaming issues are in the sandbox, and you're welcome to help over there!

dasjo’s picture

following up on the "skin" vs "theme" discussion, my understanding is that using .theme.css has been agreed upon.

if that's correct, some issues would need updating to match the convention, especially
- the summary of #1217054: Clean up the CSS for User module
- CSS architecture (for Drupal 8) currently uses skin instead of theme
- CSS file organization (for Drupal 8) currently uses skin instead of theme

dasjo’s picture

Issue summary: View changes

Add link to 1995272

lewisnyman’s picture

Issue summary: View changes

Added a link to the ne style guide prototype

mtift’s picture

Issue summary: View changes

Updated issue summary.

mtift’s picture

Issue summary: View changes

Updated issue summary.

tclerico’s picture

Issue summary: View changes

Added "@" to add assignation labels for delegation purposes.

dead_arm’s picture

Updated the related issues by switching "skin" to "theme".

echoz’s picture

ry5n’s picture

@dead_arm, @echoz: thanks; you rock :)

johnalbin’s picture

@dead_arm, @echoz: thanks; you rock :)

Agreed! Thanks for the help updating the issues. The sub-issues for the file renaming have all been "fixed" in the sandbox and a large combo patch is now sitting on #1987066: Rename files to match CSS file naming convention that needs review. Review please! :-)

I would like to please you guys also to write comments into the CSS files. Today it's impossible to guess how class names are used and for what.

+1 billion

Also, it is now part of Drupal's official CSS formatting standards to describe rulesets, so CSS refactoring patches that don't have comments should be knocked down to Needs Work.

johnalbin’s picture

Issue summary: View changes

Consensus was reached in both http://drupal.org/node/1921610 and at DrupalconPDX discussions that using "theme" over "skin" in the CSS class renaming effort is more straight-forward.

ry5n’s picture

Issue summary: View changes

Added spin-off (smaller-scope) alternative issue for allowing '__' in classes

ry5n’s picture

Issue summary: View changes

Wrong issue number

johnalbin’s picture

Issue summary: View changes

Add 2015789 to list

johnalbin’s picture

Issue summary: View changes

Add 1473066 to list.

johnalbin’s picture

Issue summary: View changes

Add 352951 to also haves.

johnalbin’s picture

Issue summary: View changes

Remove openID module issue #1217016

johnalbin’s picture

Issue summary: View changes

Move HTML5 issues out of component task.

hass’s picture

This will reduce our aggregated CSS files from 4 files to just 2.

Why not only one?

xjm’s picture

In the context of this issue, could we get some feedback on #1363112: Simplify names of "element-x" helper classes? The patch was committed, but a rollback has been requested under the premise that those classes are now unprefixed.

xjm’s picture

Issue summary: View changes

Added #2012020

lewisnyman’s picture

Issue tags: +CSS, +frontend
mgifford’s picture

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.

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.

andeersg’s picture

I apologise if I'm late to the party. But I'm wondering on something related to the CSS standard in Drupal 8.
I see that Drupal 8 has a BEM-like approach with modifier classes and less nesting.

But in this issue: https://www.drupal.org/node/1968360 the region context for blocks was removed, with the reasons like:

So from a CSS/JS standpoint, you will still be able to target selectors to .region-header .block and similar.

and

contrib and custom themes can use the @extends feature of Sass to avoid similar duplication within their use cases.

Extend can complicate the css: http://csswizardry.com/2014/11/when-to-use-extend-when-to-use-a-mixin/ and make it less maintainable.

To have region available in preprocess_block means that it's easy to for example add a --smallmodifier to blocks in footer or sidebar. And this keep the CSS DRY, since the modifier is not tied to a region. Doing .region__footer .block to alter some styles for a block will create much more CSS than being easily able to add modifier classes. The mentioned issue seems counter productive to the current coding standards.

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.

joelpittet’s picture

Category: Task » Plan

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.

steinmb’s picture

Looking through this plan, to me it seems mostly done? Issue summary contains these two issue that still are open but they seems a little out of date and not active:

Perhaps it should be closed?

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.

Version: 9.5.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. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

catch’s picture

This is mostly done and I'm not sure the meta helps any more, however there are still multiple inconsistent asset libraries in core.

More recent issues:

#2880237: [meta] Refactor system/base library
#3565297: Move 'grid' and 'display link' CSS to their own views libraries
#1924522: Remove separate CSS_AGGREGATE_THEME aggregate file

Also found a couple of extra problems in #3565258: Support library-specific aggregates where the SMACSS categories appear to be wrong for a handful of libraries.

Version: 11.x-dev » main

Drupal core is now using the main branch as the primary development branch. New developments and disruptive changes should now be targeted to the main branch.

Read more in the announcement.

smustgrave’s picture

Just closed #3034767: Allow custom aggregation groups as it was clear that it was by design, not sure where that documentation should live though.