pjfanning opened a new issue, #266:
URL: https://github.com/apache/openserverless/issues/266

   
`build/openwhisk/common/scala/src/main/scala/org/apache/openwhisk/core/entity/ExecManifest.scala`
 (vendored from Apache OpenWhisk, shipped in the 0.9.0-incubating-RC7 source 
release) contains the Docker image-reference grammar copied from 
docker/distribution:
   
   ```scala
       // docker image name grammar, taken from: 
https://github.com/docker/distribution/blob/master/reference/reference.go
       //
       // Grammar
       //
       // reference                       := name [ ":" tag ] [ "@" digest ]
       // name                            := [domain '/'] path-component ['/' 
path-component]*
       // domain                          := domain-component ['.' 
domain-component]* [':' port-number]
       // domain-component                := 
/([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])/
       // ...
       // digest-hex                      := /[0-9a-fA-F]{32,}/ ; At least 128 
bit digest value
   ```
   
   The 18-line grammar block is copied verbatim from the package comment of 
[`reference/reference.go` in 
docker/distribution](https://github.com/distribution/distribution/blob/v2.7.1/reference/reference.go#L4-L21)
 (now maintained as 
[distribution/reference](https://github.com/distribution/reference)), and the 
parser below it (`ImageName`) implements that grammar. docker/distribution is 
licensed under the Apache License 2.0.
   
   There is no licence conflict, but the copied text is not attributed: the 
file only carries the ASF header, and the top-level `LICENSE` does not mention 
docker/distribution. The existing comment gives the source URL, which is a good 
start but not a licence attribution. The link also points at `master` of a 
repository that has since been renamed, so it no longer shows the grammar.
   
   Suggested fix, either:
   
   1. Add a `LICENSE` entry noting that the image-name grammar in this file is 
taken from docker/distribution `reference/reference.go` (Apache-2.0), and 
update the link to a pinned tag, e.g. 
`https://github.com/distribution/distribution/blob/v2.7.1/reference/reference.go`;
 or
   2. Replace the copied grammar with a short description in our own words plus 
the pinned link.
   
   The same code is in upstream Apache OpenWhisk. Related: #260.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to