microsoft / microsoft/vscode-custom-data

Values that don't match the JSON schema

Open
#117 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
240
Forks
95
PR merge metrics
No merged PRs in 30d

Description

CSS

I've analyzed the browsers.css-data.json file and found 5 items whose browsers field contains a value that doesn't match the "(E|FFA|FF|SM|S|CA|C|IE|O)([\\d|\\.]+)?" pattern specified in the https://github.com/microsoft/vscode-css-languageservice/blob/main/docs/customData.schema.json#L86.

Here they are:

overflow-anchor: 'Spreview'
-moz-background-clip: 'FF1-3.6'
-ms-filter: 'IE8-9'
-ms-transform: 'IE9-9'
-ms-transform-origin: 'IE9-9'

BTW, why are we looking for the | character in the [\d|\.] part? 🤔 There is no single value that contains this character.

But there's a - character. Is this a valid character?

If it's valid, what does it mean then? That the feature was supported e.g. from version 1 to version 3.6, and then was kicked out? But then what does a value like 'IE9-9' mean? That the feature was only supported in version 9?

Then it makes sense to replace the | character to - in the pattern?

If it's not valid, then these values should be fixed in the browsers.css-data.json file.

The value 'Spreview' looks invalid. Correct me if I'm wrong. What does it mean? That the feature is only available in the experimental build of Safari, regardless of version?

HTML

I've also analyzed the browsers.html-data.json file and found 9 items whose baseline_low_date or baseline_high_date fields contain a value that doesn't match the "^\\d{4}-\\d{2}-\\d{2}$" pattern specified in the https://github.com/microsoft/vscode-html-languageservice/blob/main/docs/customData.schema.json#L189 and https://github.com/microsoft/vscode-html-languageservice/blob/main/docs/customData.schema.json#L195.

They have values like ≤2020-07-28 instead of just 2020-07-28 and can be easily found in any text editor by the character.

I'm assuming these are invalid values.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with browsers.css-data.json and browsers.html-data.json, then compare the listed values with the customData.schema.json definitions linked in the issue. Check nearby entries and any repository validation or test command before deciding whether the schema or data is authoritative. Done means the reported values and schema agree and the listed inconsistencies are verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
css, html, json
Domain
tooling
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.