What about using special body classes to include new CSS? If new sites got the classes, but existing sites did not, we could prevent the CSS from affecting existing sites. (backwards-compatible)
At install time, the list of special body classes would be determined. Then, for the rest of that site's lifetime, only those original classes would be applied.
If new CSS is added in 1.17, one of those classes could be version-1-17
. All the new CSS rules in 1.17 could be prefixed with .version-1-17
, and all sites installed at version 1.17 or later would have this class applied. However, if I had installed Backdrop at version 1.14, my site would not have the version-1-17
body class, so would not get the CSS rules applied.
Backdrop sites installed at version 1.18 would also get all previous body classes, and if there were new CSS changes introduced in 1.18 too, that site would also get a version-1-18
class (but if there weren't any CSS changes, no class would be added).
Pro: This approach would allow us to keep all the related CSS in the same file, rather than moving the newer ones into a separate file that would not be included on newer sites.
Pro: This approach could work for CSS included in any part of core (modules, themes, etc).
Con: This approach could eventually lead to a lot of body classes on older Backdrop sites.
Related issues:
Recent comments
We can no longer add contrib projects in the Tugboat sandboxes that we use for core PR's? Can this be fixed or is there a reason for this? We can add contrib projects to demo...
Apr 25th Weekly Meetings
The Mail System and MimeMail modules are now installed. I'll let you know if they solve the problem. Edit: Using Mail System with MimeMail I was able to send plain text emails. There is...
HTML Email treated as plain text
If you haven't already I recommend installing Mail System and MimeMail. The latter will help format emails as HTML and first helps with configuring which module will handle the formatting...
HTML Email treated as plain text