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

Make browser-specs a data source for Specref #975

Closed
tidoust opened this issue Jun 7, 2023 · 1 comment
Closed

Make browser-specs a data source for Specref #975

tidoust opened this issue Jun 7, 2023 · 1 comment

Comments

@tidoust
Copy link
Member

tidoust commented Jun 7, 2023

Via discussion in #938 (comment)

The number of specifications listed in browser-specs but not in Specref used to be small. That list has grown over time. Today, the list contains 173 specs with a "source": "spec" property (*). For the most part, these specifications are proposals that are not yet on the standardization track.

As soon as we add a spec to browser-specs, its definitions start to appear in the cross-references databases used by spec authoring tools. These same editing tools rely on Specref for biblio references. That means spec authors can end up in a clunky situation where they can reference terms defined in another spec, but not the spec itself.

Probably time to look into making browser-specs a source of data for Specref.

(*) For completeness, the list has 93 specs with a "source": "specref" property, and 299 with a "source": "w3c" property, totalling 392 specs shared with Specref (the W3C API being a source for Specref already).

tobie pushed a commit to tobie/specref that referenced this issue Jul 8, 2023
The [w3c/browser-specs](https://github.com/w3c/browser-specs/) project contains
a curated list of specifications that compose the web platform. Most of the info
it contains comes from the W3C API (that info is already in Specref), and from
Specref itself.

That said, the list also contains additional specs that are not in Specref.
These are mostly "early" drafts developed in W3C community groups but not yet
published as Working Drafts, and WebGL extension specs.

With this update, Specref now retrieves specs from browser-specs that it does
not yet know anything about. This is useful for spec editors, because specs in
browser-specs get crawled and ingested in the cross-reference database of terms
used by Bikeshed and Respec, meaning that a spec editor can currently end up in
a situation where they can reference a term defined in a spec and yet are unable
to reference the spec itself.

The script runs first in `run-all` to drop specs from browser-specs as soon as
possible (removal from the browser-specs source should typically mean that the
spec has started to appear in another source, and it's going to be better to
rely on that other source directly).

The logic is based on `fetch-refs.js` with custom code to filter out specs that
are already in Specref, and preserve former entries that no longer exist in
browser-specs by creating aliases.

Via w3c/browser-specs#975
@tidoust
Copy link
Member Author

tidoust commented Jul 9, 2023

browser-specs has now become of source for Specref for the specs that have a "source": "spec" property. List in Specref is in refs/browser-specs.json.

Once #944 is fixed, browser-specs could also replace the WICG source in Specref, which relies on a half-maintained biblio.json file. No real change in browser-specs should be needed for that, although we may want to release a web-specs package that flags WICG specs with a "source": "spec" property right before Specref drops the WICG source to avoid any discontinuity.

@tidoust tidoust closed this as completed Jul 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant