Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can we get rid of the CSS validator rule? #866

Closed
deniak opened this issue Feb 19, 2020 · 9 comments · Fixed by #1085
Closed

Can we get rid of the CSS validator rule? #866

deniak opened this issue Feb 19, 2020 · 9 comments · Fixed by #1085

Comments

@deniak
Copy link
Member

deniak commented Feb 19, 2020

@sideshowbarker mentioned that the Nu Checker also reports CSS errors.
We should investigate to see if we can remove the direct dependency to the CSS validator and only relies on the Nu Checker.

@deniak deniak self-assigned this Feb 19, 2020
@deniak
Copy link
Member Author

deniak commented Feb 20, 2020

Running the checkers on the MDN homepage, we aren't getting the same CSS errors (validator.nu and CSS validator). I suppose that's because validator.nu only checks the internal and inline CSS whereas the CSS validator also checks external stylesheets by default.

We could maybe run validator.nu on each external stylesheets separately. I don't think it'll create many more requests than we already have to check a TR document.

@sideshowbarker
Copy link
Contributor

Running the checkers on the MDN homepage, we aren't getting the same CSS errors (validator.nu and CSS validator). I suppose that's because validator.nu only checks the internal and inline CSS whereas the CSS validator also checks external stylesheets by default.

That’s correct

@svgeesus
Copy link
Contributor

If you continue to use any CSS validation, it should at least give the correct results. A validator that is unmaintained and gives erroneous results is worse than useless.

@sideshowbarker
Copy link
Contributor

A validator that is unmaintained and gives erroneous results is worse than useless.

Thankfully we don't actually have either of those problems; the validator is both very actively maintained, and also doesn't give erroneous results.

In every case where someone has reported erroneous results in the past, they've gotten a response very quickly, and usually a fix very quickly.

As with any other software project, it's impossible to take any action on a general claim of erroneous behavior. The only things that are actionable instead are individual bug reports about specific problems.

If somebody runs into an error but doesn't bother to take time to raise a bug report about it, then clearly that's not a problem of lack of active maintenance or lack of responsiveness.

@deniak
Copy link
Member Author

deniak commented Nov 13, 2020

@plehegar I'm in favor of removing the dependency to the CSS validator and only rely on validator.nu
Hopefully, this will fix most, if not all the issues for the CSS specs. WDYT?

@svgeesus
Copy link
Contributor

svgeesus commented Dec 7, 2020

Thankfully we don't actually have either of those problems; the validator is both very actively maintained, and also doesn't give erroneous results.

In every case where someone has reported erroneous results in the past, they've gotten a response very quickly, and usually a fix very quickly.

A counter example of an erroneous CSS validator message. It seems to be caused by the validator following CSS Color 3, rather than CSS Color 4 which is the current specification.

I also reported a specberus error where the CSS validator incorrectly flagged a CSS error. @xfq pointed out

It seems to be tracked in w3c/css-validator#111

So off we go there, to a three-year-old bug report. There seem to be some commits in response to the original report, but the problem persists. Then someone asks in 2018 if the issue is going to be fixed, in response to which comments were restricted to collaborators but no answer was given and no further commits made. The error still persists. It is caused by the validator being 5 years out of date; CSS Custom Properties for Cascading Variables Module Level 1 has been in CR since 2015 and is implemented in all browsers.

The only things that are actionable instead are individual bug reports about specific problems.

If I had the time, I would go and create a bunch of tests that probe support for every one of the (90 or more) CSS specifications. I don't have the time, and I also don't have the inclination, when bug reports are simply ignored or shut down like this.

The CSS validator does harm.

@plehegar
Copy link
Member

plehegar commented Dec 10, 2020

I'm fine with removing the css validator rule since it causes harm.

There is a larger issue to be discussed (but not here) about the future of the CSS validator however. more for @dontcallmedom I think.

@sideshowbarker
Copy link
Contributor

I'm fine with removing the css validator rule since it causes harm.

I’m also fine with the css validator rule being removed. So let’s do that.


But for the record here, and with respect, “the CSS validator does harm” is plain wrong — it’s a distortion that doesn’t align with what we actually know from the community about the net value of the CSS validator, on balance, to actual CSS developers.

Actual CSS developers are, overall, very happy with the CSS validator. It’s one of the few concrete things about the W3C that actual CSS developers recognize clearly and value very highly.

If you don’t believe that, then let’s seriously try shutting down the CSS validator for, say, a week — and let’s see what reaction we get from the wider community of actual developers about that. What would you imagine?

All that said, yeah, it’s true that there are some features that a very important to developers but that lack support yet in the validator. And nobody who’s actually helping to work on the CSS validator and actually improve it is ignoring that fact. The statement “bug reports are simply ignored or shut down” is simply wrong. That’s just not true.

And the validator is not “5 years out of date”. Instead, it’s relatively quite up to date, and actively maintained. I know that intimately well, because I am one of the people who’s been helping to maintain it and improve it.

The particular case of lack of complete support in the validator for CSS custom properties (variables) is a well-known issue.

The reason the relevant GitHub issue was locked was just because it had become a dumping ground for multiple random drive-by unproductive comments on the order of “WHY HASN’T THIS BEEN FIXED YET!!!”, etc. — as opposed to, say, anybody ever coming along to say something like, “I see this issue has been open for a long time, and I really care about it too, so I’d like to spend some time working on a patch to add the support.”

So the reason that support has been lacking is not due to negligence or indifference but instead just due to the fact that adding support for CSS custom properties requires a relatively massive level of effort, and we have yet not been lucky enough to have somebody from the community step forward to volunteer to help fix it.

And so really the reason fixing it has not happened is frankly just because it’s defaulted to us collectively failing to recognize the value of the CSS validator to the developer community enough to adequately resource development and maintenance for it — to spend the significant amount of effort necessary to add real support for custom properties.

In light of that fact, some of the comments here seem to me to be an indicator that our collective organizational perspective on the value of the validator is pretty out of whack.

What I mean is: Whatever badness there is in the CSS validator, that’s on us, collectively. Who else can we blame?

And the longer that state of things continues, the longer we’re going to continue to be organizationally neglecting the needs of CSS developers — the people who really do value it and who actually rely on it to solve problems for them.

The needs of CSS developers in the community are definitely not helped by any of us implying in comments here that the validator is so horribly broken as to be harmful to the community. And certainly making uninformed, sweeping generalizations here about the badness of the CSS validator here helps absolutely nobody and gains us absolutely nothing.

@plehegar
Copy link
Member

@deniak you're clear to act as far as I know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants