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