Skip to content

Commit 3fc717a

Browse files
authored
Replace most CSS tests by analysis with Strudy (#1561)
* Replace most CSS tests by analysis with Strudy Strudy now integrates a set of analyses that were previously done in Webref. It also extends slightly the duplication guarantees, which used to be restricted to properties. This update replaces most tests with running Strudy. What remains is tests that assess that syntaxes can be parsed with css-tree. These validity tests would better be done in Strudy too in practice, but that's not yet the case. * Improve duplication removal logic This moves the check on delta specs after the core superseding logic so that delta specs also get checked for actual duplicates with unrelated specs.
1 parent 47f8d9c commit 3fc717a

File tree

6 files changed

+464
-730
lines changed

6 files changed

+464
-730
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ Data curation brings the following guarantees.
7070
### CSS extracts
7171

7272
- All values in CSS files can be parsed by the version of [CSSTree](https://github.com/csstree/csstree) used in `peerDependencies` in `package.json`.
73-
- No duplicate definitions of CSS properties provided that CSS extracts of [delta specs](https://github.com/w3c/browser-specs/#seriescomposition) are not taken into account (such extracts end with `-n.json`, where `n` is a level number).
73+
- No duplicate definitions of entries in CSS files provided that CSS extracts of [delta specs](https://github.com/w3c/browser-specs/#seriescomposition) are not taken into account (such extracts end with `-n.json`, where `n` is a level number). The term "entries" includes CSS properties, at-rules, selectors, types and functions. Please note that specs may still extend entries defined elsewhere (to define new values for CSS properties, or new selectors for at-rules).
7474
- CSS extracts contain a base definition of all CSS properties that get extended by other CSS property definitions (those for which `newValues` is set).
7575
- All entries in CSS files that do not extend a base definition link back to their actual definition in the spec. In other words, all entries under `properties[]`, `properties[].values[]`, `selectors[]`, `atrules[]` and `values[]` have an `href` key that contains an absolute URL with fragment, except properties that that have a `newValues` key, at-rules that neither have a `prose` nor a `value` key, and definitions of a [delta spec](https://github.com/w3c/browser-specs/#seriescomposition) that completely override a definition in a previous level.
7676

0 commit comments

Comments
 (0)