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

OWD BCD project: 2020+ accuracy for HTML and SVG #160

Closed
1 task
queengooborg opened this issue Jun 23, 2023 · 7 comments
Closed
1 task

OWD BCD project: 2020+ accuracy for HTML and SVG #160

queengooborg opened this issue Jun 23, 2023 · 7 comments
Assignees
Labels
H1 2024 Projects for the first half of 2024

Comments

@queengooborg
Copy link
Member

queengooborg commented Jun 23, 2023

Problem statement

BCD data is not guaranteed to be accurate for HTML and SVG features. The collector has found data that is likely incorrect in BCD right now.

Proposed solutions

The collector now has support for HTML and SVG elements and attributes, and MathML testing is planned to be added soon. Following #85, we should work to resolve all conflicts between the collector's results and BCD and update BCD or the collector's test code as needed

Task list

  • Resolve the discrepancies between the mdn-bcd-collector results and BCD (in the collector repo, run npm run update-bcd -- -p html && npm run update-bcd -- -p svg)

Priority assessment

  • Effort: 4-12 weeks?
  • Dependencies: none
  • Community enablement:
  • Momentum:
  • Enabling learners:
  • Enabling professionals:
  • Underrepresented topics / Ethical web:
  • Operational necessities:
  • Addressing needs of the web industry:

More information

Open Web Docs (OWD) is a non-profit collective funded by corporate and individual donations.

In order for this project to happen, please consider donating to OWD on https://opencollective.com/open-web-docs.
For more information on sponsorship and membership tiers, see https://openwebdocs.org/membership/

More information is available at https://openwebdocs.org/.
For questions, please reach out to florian@openwebdocs.org.

@queengooborg queengooborg changed the title OWD BCD project: 2020+ accuracy for HTML, MathML and SVG OWD BCD project: 2020+ accuracy for HTML and SVG Jun 27, 2023
@Elchi3 Elchi3 added H2 2023 Projects for July-December 2023 and removed proposed for Q3 2022 not ready labels Jun 27, 2023
@Elchi3 Elchi3 mentioned this issue Jul 3, 2023
6 tasks
@Elchi3
Copy link
Member

Elchi3 commented Dec 19, 2023

Here's what the collector v10.6.4 proposes against BCD v5.5.0. Once these are sorted, we can call this project done.

 html/elements/a.json                  |  41 ++++++++++++----------
 html/elements/area.json               |  15 +++------
 html/elements/body.json               |  92 ++++++++++++++++++++++++++++++++++----------------
 html/elements/button.json             |   6 ++--
 html/elements/col.json                |  54 +++++++++++++++++++----------
 html/elements/colgroup.json           |  54 +++++++++++++++++++----------
 html/elements/dd.json                 |  22 ++++++++----
 html/elements/fencedframe.json        |   6 ++--
 html/elements/form.json               |  22 ++++++++----
 html/elements/head.json               |  20 +++++++----
 html/elements/html.json               |  36 ++++++++++++++------
 html/elements/iframe.json             |   4 ++-
 html/elements/image.json              |  23 +++++++++----
 html/elements/link.json               |  10 ++++--
 html/elements/meta.json               |  22 ++++++++----
 html/elements/meter.json              |  32 +++++++++++-------
 html/elements/object.json             |  22 ++++++++----
 html/elements/pre.json                |  20 +++++++----
 html/elements/script.json             |  22 ++++++++----
 html/elements/select.json             |  10 ++++--
 html/elements/tbody.json              |  38 ++++++++++++++-------
 html/elements/td.json                 |  16 ++++++---
 html/elements/template.json           |   2 +-
 html/elements/tfoot.json              |  38 ++++++++++++++-------
 html/elements/th.json                 |  16 ++++++---
 html/elements/thead.json              |  38 ++++++++++++++-------
 html/elements/tr.json                 |  48 +++++++++++++++++---------
 html/elements/video.json              |  12 +++++--
 svg/elements/a.json                   | 101 ++++++++++++++++++++++++++++++++++---------------------
 svg/elements/animate.json             | 110 +++++++++++++++++++++++++++++++++++++++++-------------------
 svg/elements/animateMotion.json       | 110 +++++++++++++++++++++++++++++++++++++++++-------------------
 svg/elements/animateTransform.json    |  88 ++++++++++++++++++++++++++++++++----------------
 svg/elements/cursor.json              |  82 ++++++++++++++++++++++++++++++--------------
 svg/elements/feBlend.json             |  22 ++++++++----
 svg/elements/feColorMatrix.json       |  22 ++++++++----
 svg/elements/feComponentTransfer.json |  22 ++++++++----
 svg/elements/feComposite.json         |  20 +++++++----
 svg/elements/feConvolveMatrix.json    |  66 ++++++++++++++++++++++++------------
 svg/elements/feDiffuseLighting.json   |  44 ++++++++++++++++--------
 svg/elements/feDisplacementMap.json   |  22 ++++++++----
 svg/elements/feDropShadow.json        |  44 ++++++++++++++++--------
 svg/elements/feFlood.json             |  44 ++++++++++++++++--------
 svg/elements/feGaussianBlur.json      |  44 ++++++++++++++++--------
 svg/elements/feImage.json             |  29 +++++++++++-----
 svg/elements/feMergeNode.json         |  22 ++++++++----
 svg/elements/feMorphology.json        |  44 ++++++++++++++++--------
 svg/elements/feOffset.json            |  22 ++++++++----
 svg/elements/feSpecularLighting.json  |  42 ++++++++++++++++-------
 svg/elements/feTile.json              |  22 ++++++++----
 svg/elements/feTurbulence.json        |  22 ++++++++----
 svg/elements/filter.json              |  46 ++++++++++++++++---------
 svg/elements/image.json               |  30 +++++++++++------
 svg/elements/linearGradient.json      |  22 ++++++++----
 svg/elements/marker.json              |  20 +++++++----
 svg/elements/mpath.json               |  22 ++++++++----
 svg/elements/path.json                |  20 +++++++----
 svg/elements/pattern.json             |  22 ++++++++----
 svg/elements/radialGradient.json      |  22 ++++++++----
 svg/elements/script.json              |  22 ++++++++----
 svg/elements/set.json                 |  22 ++++++++----
 svg/elements/stop.json                |  40 ++++++++++++++--------
 svg/elements/svg.json                 |  44 ++++++++++++++++--------
 svg/elements/textPath.json            |  34 +++++++++++++------
 svg/elements/use.json                 |  22 ++++++++----
 64 files changed, 1467 insertions(+), 706 deletions(-)

I'm looking into the SVG part. Some tests need to be updated in the collector, for example those for xlink attributes (openwebdocs/mdn-bcd-collector#990), but there are also real issues in the compat data to fix. I've sent some PRs to BCD already.

@queengooborg
Copy link
Member Author

A report for the progress of this project:

  • Most of the changes to the HTML folder have pending pull requests or the tests have been removed from the collector (due to difficulty/impossibility with testing the attributes)
  • The SVG folder will probably take more time to tackle, as the SVG attribute testing doesn't seem to be accurate.

I believe that we should split this project into two parts (HTML and SVG) and defer the SVG updates to a later time.

@Elchi3
Copy link
Member

Elchi3 commented Jan 15, 2024

I was able to make a lot of progress on this project. From 64 files down to 35 files in need of updates.
See git diff --stat with BCD v5.5.6 and the OWD BCD Collector v10.7.0:

 html/elements/body.json            |  8 ++++----
 html/elements/button.json          |  2 +-
 html/elements/col.json             |  6 +++---
 html/elements/colgroup.json        |  6 +++---
 html/elements/dd.json              |  2 +-
 html/elements/fencedframe.json     |  2 +-
 html/elements/head.json            |  4 ++--
 html/elements/html.json            |  3 ++-
 html/elements/image.json           |  2 +-
 html/elements/meta.json            |  2 +-
 html/elements/meter.json           |  2 +-
 html/elements/object.json          |  2 +-
 html/elements/script.json          |  2 +-
 html/elements/tbody.json           |  4 ++--
 html/elements/td.json              |  2 +-
 html/elements/tfoot.json           |  4 ++--
 html/elements/th.json              |  2 +-
 html/elements/thead.json           |  4 ++--
 html/elements/tr.json              |  4 ++--
 svg/elements/animate.json          | 30 +++++++++++++++---------------
 svg/elements/animateMotion.json    | 30 +++++++++++++++---------------
 svg/elements/animateTransform.json | 24 ++++++++++++------------
 svg/elements/cursor.json           |  2 +-
 svg/elements/feFlood.json          | 12 ++++++------
 svg/elements/feMergeNode.json      |  4 ++--
 svg/elements/font-face-uri.json    |  2 +-
 svg/elements/glyphRef.json         |  2 +-
 svg/elements/image.json            |  7 ++++---
 svg/elements/marker.json           |  4 ++--
 svg/elements/path.json             |  6 +++---
 svg/elements/set.json              |  6 +++---
 svg/elements/stop.json             | 12 ++++++------
 svg/elements/svg.json              | 12 ++++++------
 svg/elements/textPath.json         |  4 ++--
 svg/elements/tref.json             |  4 ++--
 35 files changed, 113 insertions(+), 111 deletions(-)

@Elchi3
Copy link
Member

Elchi3 commented Jan 15, 2024

  • Most of the changes to the HTML folder have pending pull requests

I will take a look at your PRs.

@Elchi3
Copy link
Member

Elchi3 commented Mar 18, 2024

The baseline project has benefitted enormously from all of Open Web Docs' work to provide accurate compat data for all BCD features going back to 2020. I talked to Daniel Beck last week and only 283 out 14,366 features are marked as unresolved (i.e. Baseline cannot be calculated). This is already very fantastic, but I think we should attempt and fully complete this project by getting the last few missing HTML and SVG feature versions in.

See https://docs.google.com/spreadsheets/d/1RVgaq4ruHYeJvLCky-h2VAreRP5j_CKifaBvwYEhsL0/edit#gid=1279455993&fvid=1437656086 for a list. (There is also missing data for HTTP within the 283 features, but we can look at these in a separate project)

@Elchi3 Elchi3 added H1 2024 Projects for the first half of 2024 and removed H2 2023 Projects for July-December 2023 labels May 31, 2024
@Elchi3
Copy link
Member

Elchi3 commented May 31, 2024

openwebdocs/mdn-bcd-collector#1474 is probably relevant here, too.

@Elchi3
Copy link
Member

Elchi3 commented Aug 19, 2024

We updated all the remaining compat data to have a (range) version number prior to 2020.
mdn/browser-compat-data#23991 is about enforcing the 2020 cutoff in the BCD linter.

@Elchi3 Elchi3 closed this as completed Aug 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
H1 2024 Projects for the first half of 2024
Projects
None yet
Development

No branches or pull requests

2 participants