Skip to content

Commit f760279

Browse files
committed
considerations: DRY extensibility
As I suggested in the PR landing these blocks [1,2,3]. I've shifted the extensibility section to a separate considerations.md, since it's a generic policy that applies to both our manifest and manifest-list. The extensibility requirements might arguably apply to our other JSON types as well (like annotations, which were recently DRYed up in f15a268, annotations: make a designated doc and DRY a bit, 2016-12-15, opencontainers#501). The new extensibility section sets the stage for that, but I've left the other types off this commit to focus on making the current requirements more DRY without changing the specified behavior. My personal preference would be to have separate canonicalization.md and extensibility.md files, but Jonathan wanted the single file: On Mon, Oct 10, 2016 at 09:22:46AM -0700, Jonathan Boulle wrote [4]: > Ehh, I preferred it where it was - now worried about death by a > thousand files (extensibility, canonicalization, etc etc). Can we > combine them (into a generic "considerations" document or similar), > or just put this back? [1]: opencontainers#164 (comment) [2]: opencontainers#164 (comment) [3]: opencontainers#164 (comment) [4]: opencontainers#340 (comment) Signed-off-by: W. Trevor King <[email protected]>
1 parent 84a74b0 commit f760279

File tree

5 files changed

+9
-10
lines changed

5 files changed

+9
-10
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ DOC_FILES := \
3030
layer.md \
3131
config.md \
3232
annotations.md \
33-
canonicalization.md
33+
considerations.md
3434

3535
FIGURE_FILES := \
3636
img/media-types.png

canonicalization.md renamed to considerations.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
# Extensibility
2+
3+
Implementations that are reading/processing [manifests](manifest.md) or [manifest lists](manifest-list.md) MUST NOT generate an error if they encounter an unknown property.
4+
Instead they MUST ignore unknown properties.
5+
16
# Canonicalization
27

38
OCI Images [are](descriptor.md) [content-addressable](image-layout.md).

manifest-list.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,10 +71,6 @@ For the media type(s) that this document is compatible with, see the [matrix][ma
7171

7272
See [Pre-Defined Annotation Keys](annotations.md#pre-defined-annotation-keys).
7373

74-
### Extensibility
75-
Implementations that are reading/processing manifest lists MUST NOT generate an error if they encounter an unknown property.
76-
Instead they MUST ignore unknown properties.
77-
7874
## Example Manifest List
7975

8076
*Example showing a simple manifest list pointing to image manifests for two platforms:*

manifest.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,6 @@ Unlike the [Manifest List](manifest-list.md), which contains information about a
6666

6767
See [Pre-Defined Annotation Keys](annotations.md#pre-defined-annotation-keys).
6868

69-
### Extensibility
70-
Implementations that are reading/processing image manifests MUST NOT generate an error if they encounter an unknown property.
71-
Instead they MUST ignore unknown properties.
72-
7369
## Example Image Manifest
7470

7571
*Example showing an image manifest:*

spec.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@ The goal of this specification is to enable the creation of interoperable tools
1818
- [Filesystem Layers](layer.md)
1919
- [Image Configuration](config.md)
2020
- [Annotations](annotations.md)
21-
- [Canonicalization](canonicalization.md)
21+
- [Considerations](considerations.md)
22+
- [Extensibility](considerations.md#extensibility)
23+
- [Canonicalization](considerations.md#canonicalization)
2224

2325
# Notational Conventions
2426

0 commit comments

Comments
 (0)