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

considerations.md: use clearer links to describe concepts #613

Merged
merged 1 commit into from
Apr 4, 2017

Conversation

erikh
Copy link
Contributor

@erikh erikh commented Mar 14, 2017

I felt the linking of the word are and content-addressible to foreign topics unrelated to the words needed to be changed to be more explicit. I hope you agree.

Thanks!

@wking
Copy link
Contributor

wking commented Mar 14, 2017 via email

@@ -5,7 +5,7 @@ Instead they MUST ignore unknown properties.

# Canonicalization

OCI Images [are](descriptor.md) [content-addressable](image-layout.md).
OCI Images are content-addressible. See [Descriptors](descriptor.md) and [Image Layout](image-layout.md) for more information.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about something like:

All of the constituent components of the OCI Image specification are content-addressable; for more background on this, see the [descriptor](descriptor.md) documentation.

Copy link
Contributor

@wking wking Mar 14, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, the refs (now index.json) are not content addressable. But @jonboulle's proposal looks good to me if we replace:

All of the constituent components of the OCI Image specification

with:

OCI Images

That just assumes that no fundamental part of the image become mutable-refs-only, which hopefully remains true going forward ;).

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm. While descriptor.md mentions Merkle DAGs, it doesn't say "content addressable". I think we need to update @jonboulle's suggestion to keep the image-layout.md link.

@jonboulle
Copy link
Contributor

agree that i) current wording could be improved; ii) current diff is an awkward middle-ground

also, please no spelling regressions :-)

@erikh
Copy link
Contributor Author

erikh commented Mar 15, 2017 via email

@erikh
Copy link
Contributor Author

erikh commented Mar 15, 2017

very sorry about the spelling error!

I've updated the verbiage to use jon's text. Please advise for future changes.

@wking
Copy link
Contributor

wking commented Mar 15, 2017 via email

@erikh
Copy link
Contributor Author

erikh commented Mar 15, 2017 via email

@stevvooe
Copy link
Contributor

image-layout.md is related to images being content addressable,
because it discusses one way to store the content-addressable blobs
which compose an image.

This is a WIDE stretch. Introducing content addressability through the image layout is not going to help the reader understand anything at all, and I think that is the point of this submission.

But you can have a Merkle DAG without content
addressability (e.g. if you're using a Merkle tree for signing [1]).
Merkle DAGs play nicely with hash-based content addressability, but
you can have either without the other.

This is an extremely odd understanding of merkle signatures. This distinction is nonsense. They are signatures that exploit the properties of merkle trees. They play nicely because one is an application of the other.

We employ content-addressable references in a tree, because they exploit the fact that holding the result of a "one way" function in a tree of references will always result in a DAG. This same property is employed in Merkle's paper in the implementation of a signature algorithm. Colloquially, trees with this property are call "Merkle trees".

@erikh It would be best to link out to the wikipedia article on content addressability and link to descriptors as the "vehicle" we use to implement content addressability.

@erikh
Copy link
Contributor Author

erikh commented Mar 20, 2017 via email

@wking
Copy link
Contributor

wking commented Mar 21, 2017 via email

@erikh
Copy link
Contributor Author

erikh commented Mar 21, 2017 via email

@AkihiroSuda
Copy link
Member

As @wking mentioned (#613 (comment)), "All of the constituent components" seems misleading, because oci-layout and index.json are not

@vbatts
Copy link
Member

vbatts commented Apr 3, 2017

this SGTM except the phrase "all the constituent components"

@erikh
Copy link
Contributor Author

erikh commented Apr 4, 2017 via email

Signed-off-by: Erik Hollensbe <github@hollensbe.org>
@erikh
Copy link
Contributor Author

erikh commented Apr 4, 2017

Actually unless you folks wish to re-incorporate some of the terms in here, the merge conflict is literally the whole paragraph between another bulleted-list patch I did that was merged today.

We kind of winded off the beaten path but I'm not seeing much that deserves keeping this PR around beyond clarification of the links. I've made those edits to the first line, and left the rest alone.

If there's something I should re-incorporate or otherwise needs to be changed, please LMK!

@jonboulle
Copy link
Contributor

I agree we've kind of wandered into (and around) the weeds here, apologies about that. Latest incarnation LGTM in itself though.

@stevvooe
Copy link
Contributor

stevvooe commented Apr 4, 2017

LGTM

Approved with PullApprove

@stevvooe stevvooe merged commit 319fb0a into opencontainers:master Apr 4, 2017
@vbatts vbatts mentioned this pull request May 19, 2017
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

Successfully merging this pull request may close these issues.

6 participants