web-specs 2.74.0 → 2.75.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +61 -0
  2. package/index.json +556 -188
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -53,6 +53,7 @@ cross-references, WebIDL, quality, etc.
53
53
  - [`tests.testPaths`](#teststestpaths)
54
54
  - [`tests.excludePaths`](#testsexcludepaths)
55
55
  - [`source`](#source)
56
+ - [Spec identifiers](#spec-identifiers)
56
57
  - [How to add/update/delete a spec](#how-to-addupdatedelete-a-spec)
57
58
  - [Versioning](#versioning)<!-- COMMON-TOC: end -->
58
59
  - [Spec selection criteria](#spec-selection-criteria)
@@ -134,6 +135,9 @@ The versioned (but not dated) URL for the spec. For W3C specs published as
134
135
  TR documents, this is the TR URL. For WHATWG specs, this is the URL of the
135
136
  living standard. In other cases, this is the URL of the latest Editor's Draft.
136
137
 
138
+ The URL should be relatively stable but may still change over time. See
139
+ [Spec identifiers](#spec-identifiers) for details.
140
+
137
141
  The `url` property is always set.
138
142
 
139
143
 
@@ -153,6 +157,9 @@ fork of the WebAssembly spec for which the raw shortname would be
153
157
  `exception-handling`, the actual spec shortname will be
154
158
  `wasm-js-api-1-fork-exception-handling`.
155
159
 
160
+ The shortname should be relatively stable but may still change over time. See
161
+ [Spec identifiers](#spec-identifiers) for details.
162
+
156
163
  The `shortname` property is always set.
157
164
 
158
165
 
@@ -460,6 +467,9 @@ versioned URL is considered to be the latest Editor's Draft if the spec does
460
467
  neither exist in the W3C API nor in Specref. The [`source`](#source) property
461
468
  details the actual provenance.
462
469
 
470
+ The URL should be relatively stable but may still change over time. See
471
+ [Spec identifiers](#spec-identifiers) for details.
472
+
463
473
  The `url` property is always set.
464
474
 
465
475
 
@@ -588,11 +598,62 @@ The `excludePaths` property is seldom set.
588
598
  The provenance for the `title` and `nightly` property values. Can be one of:
589
599
  - `w3c`: information retrieved from the [W3C API](https://w3c.github.io/w3c-api/)
590
600
  - `specref`: information retrieved from [Specref](https://www.specref.org/)
601
+ - `ietf`: information retrieved from the [IETF datatracker](https://datatracker.ietf.org)
591
602
  - `spec`: information retrieved from the spec itself
592
603
 
593
604
  The `source` property is always set.
594
605
 
595
606
 
607
+ ## Spec identifiers
608
+
609
+ An entry in browser-specs contains properties that can be viewed as
610
+ identifiers: [`shortname`](#shortname), [`url`](#url), and
611
+ [`nightly.url`](#nightlyurl). Please note that these identifiers are not fully
612
+ stable.
613
+
614
+ The `shortname` property should remain mostly stable over time. The `shortname`
615
+ may still change though, for instance when a W3C specification starts being
616
+ published as a TR document with a shortname that is different from the one used
617
+ during incubation, or when an IETF specification gets published as an RFC.
618
+ Starting in July 2023, when the `shortname` of a specification changes in
619
+ browser-specs, the previous `shortname` gets added to a
620
+ [`formerNames`](#formernames) property. This makes it possible to track a
621
+ specification entry over time in browser-specs.
622
+
623
+ The `url` property contains a URL of the specification that can be regarded as
624
+ canonical and mostly stable too, but that URL will typically change when a
625
+ specification starts getting published as a formal technical document, or when
626
+ a specification transitions from one organization or group to another one.
627
+
628
+ The `nightly.url` property is the least stable identifier of a specification.
629
+ That URL may be under the control of an individual or group, who may decide to
630
+ change the URL at any time. Or it may be affected by a change of status. For
631
+ instance, the `nightly.url` property will change when a W3C spec incubated in
632
+ the Web Platform Incubator Community Group (WICG) transitions to a Working
633
+ Group, or when a new version of an IETF draft gets published.
634
+
635
+ If your project tracks specifications over time and relies on browser-specs to
636
+ gather information about these specifications, you will need to record the
637
+ `shortname` of the specifications you're tracking, and apply the following
638
+ algorithm to find the relevant specification entry in browser-specs:
639
+
640
+ 1. Look for an entry in browser-specs whose `shortname` matches the recorded
641
+ shortname. If one is found, that is the relevant specification entry.
642
+ 2. Look for entries in browser-specs that have the recorded shortname in its
643
+ `formerNames` property. If one is found, that is the relevant specification
644
+ entry.
645
+ 3. If you found more than one entry in the previous step, that looks like a bug
646
+ in browser-specs, please [raise an
647
+ issue](https://github.com/w3c/browser-specs/issues/new).
648
+ 3. If you're still looking for a relevant specification entry at this point
649
+ whereas the recorded shortname used to exist in browser-specs, that looks like
650
+ a bug in browser-specs too, please [raise an
651
+ issue](https://github.com/w3c/browser-specs/issues/new).
652
+
653
+ Shortname changes may occur in major and minor releases of npm packages but not
654
+ in patch releases.
655
+
656
+
596
657
  ## How to add/update/delete a spec
597
658
 
598
659
  If you believe that a spec should be added, modified, or removed from the list,