Re: [csswg-drafts] Define guidelines for preprocessors (#7150)

Anecdotal evidence of why this would be helpful.

`postcss-preset-env` aims to follow standard closely but non standard features or implementations slip in for various reasons.

--------

The nesting spec plugin was updated to be spec compliant and we have received many reports and questions about this.

It would have been better if a different character was used by us until the spec was more mature :

```css
.foo {
  color: blue;

  🪆:hover {
    color: red;
  }
}

```

We could have maintained this indefinitely and no one would have had to do any migrations.

-----------

We also started shipping [experimental versions of plugins](https://github.com/csstools/postcss-plugins/tree/main/experimental) which solves an internal problem.

But we could have done a bit better here.
A prefixed `:has()` function would have allowed users to try the feature and get familiar with it. And it would have been safe in case the final implementation in browsers didn't match ours.

```css
.foo:csstools-has(> .bar) {
  color: red;
}
```

-----------

We are currently working on a new feature which only makes sense in a preprocessor : https://github.com/csstools/postcss-plugins/pull/304

This itself is a bandaid for non-standard things conflicting with standard features.
Having a future conflict would be unfortunate.


-- 
GitHub Notification of comment by romainmenke
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/7150#issuecomment-1071112594 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Thursday, 17 March 2022 17:17:39 UTC