generated from w3c-ccg/markdown-to-spec
-
Notifications
You must be signed in to change notification settings - Fork 42
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote-tracking branch 'upstream/main' into spec-rfc2
- Loading branch information
Showing
67 changed files
with
6,232 additions
and
566 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,3 +5,4 @@ _build | |
_bikeshed | ||
.tox | ||
.vscode | ||
.*plist |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
$(document).ready( function () { | ||
$('table.datatable').DataTable(); | ||
} ); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
bikeshed | ||
bikeshed<4.2 | ||
myst-parser | ||
sphinx-book-theme |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,166 @@ | ||
RFC-0 | ||
===== | ||
# RFC-0: Consensus model | ||
|
||
Example | ||
Original NGFF consensus process | ||
|
||
## Status | ||
|
||
This is a historical RFC, drafted after the fact, and has | ||
been outdated by [RFC-1][1]. | ||
|
||
```{list-table} Record | ||
:widths: 20, 20, 20, 15, 10 | ||
:header-rows: 1 | ||
:stub-columns: 1 | ||
* - Name | ||
- GitHub Handle | ||
- Institution | ||
- Date | ||
- Status | ||
* - Josh Moore | ||
- [joshmoore](https://github.com/joshmoore) | ||
- [German BioImaging, e.V.](https://ror.org/05tpnw772) | ||
- 2022-07-11 ([issue-132](https://github.com/ome/ngff/issues/132)) / 2024-08-30 (RFC-0) | ||
- Author | ||
``` | ||
|
||
## Overview | ||
|
||
Versions of the NGFF specification up to and including v0.4 followed a | ||
consensus model of decision making. This process is being recorded as RFC-0 | ||
to simplify referencing the former process in [RFC-1][2] and elsewhere. | ||
|
||
## Background | ||
|
||
NGFF development began as a relatively focused group of individuals writing | ||
specifications. At the time, this group was called "editors". This document | ||
describes the process that was used for reviewing and finding a consensus on | ||
their work before [RFC-1][3] was adopted. This period started with the | ||
first commit 2020-11-17 and covers versions 0.1 through 0.4, while | ||
version 0.5 was largely developed concurrently with [RFC-1][4]. | ||
|
||
## Proposal | ||
|
||
A general outline of how versions were decided: | ||
|
||
* **Proposals** generally gathered initial support during **community calls** which often led to the drafting of an issue. In the case of v0.1, | ||
the first issue was on the zarr-specs repository, | ||
[https://github.com/zarr-developers/zarr-specs/issues/50][5]. | ||
* To the extent possible, **implementations** were started as soon as there was | ||
a general consensus since it is much easier to show what is intended when | ||
there is draft data which requires a writer implementation. This data was | ||
often uploaded to a temporary S3 location. | ||
* Once the **PR was opened**, there was a general call for **feedback** | ||
typically via the [https://image.sc][6] **@ngff group** with various iterations. | ||
Sometimes a second **community call** occurred at this point. | ||
* Once no further changes were requested, a final call with a deadline for | ||
release was made either via the image.sc group or a community call or both. | ||
* The tag was pushed and then an attempt to make sure all implementations were | ||
aligned followed. | ||
|
||
An exception to the above were a small number of "transitional" specifications. | ||
This includes the `omero` and `bioformats2raw.layout` sections. They differ | ||
from other proposals in that: | ||
|
||
- They captured a format that was already in use in the wild. | ||
- They affected one or more _existing_ versions. | ||
- Support in all clients seemed to be less essential, though there was no precise definition of “essential” . | ||
|
||
## Requirements | ||
|
||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", | ||
"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be | ||
interpreted as described in IETF RFC 2119. | ||
|
||
## Stakeholders | ||
|
||
* **editors**: those authored specifications. Note: this terminology | ||
differs from that in [RFC-1][7] and the website and specifications have been updated to reflect this change. | ||
* **Implementers**: those who maintain a library or client which implements specs (see below) | ||
* **developer community**: those who build tools that are expected to support NGFFs (e.g., napari, BDV, Viv) | ||
* **[the ngff group][8]**: those who have actively signed up for calls, feedback, etc. | ||
* and, of course, the wider community of users. | ||
|
||
## Implementation | ||
|
||
Typically a specification proposal included a single PR which updated the `latest` version | ||
of the specification in the `index.bs` file and additionally included examples and schema | ||
files representing the changes. | ||
|
||
Once data could be generated by one of the implementations, there was then a | ||
general attempt to update all implementing libraries (ome-zarr-py, n5-zarr, | ||
[validator][9], etc.) and implementing | ||
clients (MoBIE, ViZarr, napari-ome-zarr, neuroglancer, ITK, etc.). Minimally, | ||
one update in each of the three primary languages, Java, Python and Javascript, | ||
was undertaken. | ||
|
||
|
||
### Phases | ||
|
||
The phases below were sometimes concurrent and/or in a different order. | ||
|
||
* **Proposal**: an informal statement that someone would like to lead an effort | ||
to change the specification. | ||
* **Issue opened** (optional): a slightly more formal statement of the purposes of a | ||
Proposal that tracked all of the associated work. | ||
* **Community call**: an open call, usually on Zoom, announced under | ||
[https://forum.image.sc/tag/ome-ngff][10] where a proposal might be discussed. | ||
* **Hackathon**: an open, often in-person, meeting to work on a Proposal. | ||
* **Drafting**: period during which the specification is being actively | ||
modified. | ||
* **PR Opened**: a change to the specification including the normative text, | ||
examples, schemas and schema tests. | ||
* **Discussions**: once a formal change was opened, period of time during | ||
which comments and feedback were collected and changes made. | ||
* **PR Merged**: no further changes intended and the specification is | ||
considered acceptable to be part of "latest". | ||
* **Acceptance**: the changes to "latest" are considered acceptable for a | ||
release and are ported to the appropriate version directory. | ||
* **Implementation**: support added to each of the libraries and clients | ||
listed above. A differentiation MAY be made between core (MUST) and | ||
additional (SHOULD) components. | ||
* **Release**: an NGFF specification version was formally released by adding the | ||
appropriate tag to the NGFF repository. | ||
|
||
## Drawbacks, risks, alternatives, and unknowns | ||
|
||
Beyond a certain scale, the consensus model does not help maintainers of the | ||
specification to move discussions forward. There is no clear arbiter of | ||
decisions, and the timeline of discussions are not specified. A decision may | ||
have been made, but without a clear record pull requests open for | ||
implementation are effectively still in play. Additionally, authors were often | ||
left with many separate questions on GitHub pull requests that needed answering | ||
with no clear mechanism for managing those. | ||
|
||
## Future possibilities | ||
|
||
Please see [RFC-1][11]. | ||
|
||
## Examples | ||
|
||
The following PRs updated the specification under the RFC-0 model: | ||
* [3][12] labels (v0.1.3) | ||
* [5][13] high-content-screening (v0.1.4) | ||
* [40][14] nested storage (0.2.0) | ||
* [46][15] and [57][16] axes (0.3.0) | ||
* [64][17] table (closed) | ||
* [112][18] transitional bioformats2raw (0.4.1) | ||
|
||
[1]: ../1/index | ||
[2]: ../1/index | ||
[3]: ../1/index | ||
[4]: ../1/index | ||
[5]: https://github.com/zarr-developers/zarr-specs/issues/50 | ||
[6]: https://image.sc | ||
[7]: ../1/index | ||
[8]: https://forum.image.sc/g/ngff | ||
[9]: https://github.com/ome/ome-ngff-validator/ | ||
[10]: https://forum.image.sc/tag/ome-ngff | ||
[11]: ../1/index | ||
[12]: https://github.com/ome/ngff/pull/3 | ||
[13]: https://github.com/ome/ngff/pull/5 | ||
[14]: https://github.com/ome/ngff/pull/40 | ||
[15]: https://github.com/ome/ngff/pull/46 | ||
[16]: https://github.com/ome/ngff/pull/57 | ||
[17]: https://github.com/ome/ngff/pull/64 | ||
[18]: https://github.com/ome/ngff/pull/112 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# Comments | ||
|
||
Additional comments of RFC-1: | ||
|
||
```{toctree} | ||
:maxdepth: 1 | ||
:glob: | ||
*/index | ||
``` |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.