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

Update due-diligence-guidelines.md to be explicit about dependencies #509

Merged
merged 1 commit into from
Dec 14, 2021

Conversation

chira001
Copy link
Contributor

Be explicit about collecting dependencies and listing them

Be explicit about collecting dependencies and listing them
@chira001
Copy link
Contributor Author

@lizrice @quinton-hoole @erinaboyd - making a short addition to the DD guidelines to make documenting dependencies an explicit requirement

@@ -82,7 +82,7 @@ the detail where necessary.
* What are the most important holes? No High-Availability? No flow control? Inadequate integration points?
* Code quality. Does it look good, bad or mediocre to you (based on a spot review). How thorough are the code reviews? Substance over form.
Are there explicit coding guidelines for the project?
* Dependencies. What external dependencies exist, do they seem justified?
* Dependencies. What external dependencies exist, do they seem justified? Note: all core dependencies should be listed in the document along with the details of relevant repos
Copy link
Member

Choose a reason for hiding this comment

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

"core" implies "non-optional"?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yes - that was the intent - happy to change it if there is better wording.

Copy link
Member

Choose a reason for hiding this comment

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

"non-optional" seems better otherwise folks will debate what "core" is/means :)

Copy link
Contributor

Choose a reason for hiding this comment

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

I don't know how to get the terminology right here but I think we need to distinguish between significant functional dependences, and programming language / package dependencies. We don't want to be reviewing giant lists of, say, Go packages or Node dependencies, but we do want to know when a project assumes the existence of a significant external component.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The scenario we are trying to address is as follows: a project is made up of multiple repos, and all the repos are required for core functionality (i.e. this means "non-optional", but also core as in "project core", not 3rd party dependencies) - we want to be able to capture the full list, and make sure the project is viable with the list of submitted repos.

We should not need to list repos for external dependencies (e.g. etcd for K8s) or programming/package dependencies (e.g. standard available libraries).

how about: "Note: the document should list all non-optional project repos that are required for core functionality and production deployment"

@dims
Copy link
Member

dims commented Aug 11, 2020

@chira001 do we want to add another list item about cross checking licenses for all dependencies and make a list of things that do are not white listed here? https://github.com/cncf/foundation/blob/master/allowed-third-party-license-policy.md

( this is a slightly different problem then the original above )

@chira001
Copy link
Contributor Author

@chira001 do we want to add another list item about cross checking licenses for all dependencies and make a list of things that do are not white listed here? https://github.com/cncf/foundation/blob/master/allowed-third-party-license-policy.md

( this is a slightly different problem then the original above )

I think this is already covered by "Does it have a license? Which one? Does it have a CLA or DCO? Are the licenses of it's dependencies compatible with their usage and CNCF policies? CNCF staff will handle the full legal due diligence." and the graduation policy already specifies that the project needs to comply with the CNCF IP Policy, but you are right - it would be helpful to include a reference in the guidelines.

@erinaboyd
Copy link
Contributor

@chira001 @lizrice really what we are trying to get at though is "does it have a non-open source 3rd party license?"
Maybe that would be easier listing than all the possible licenses

@dims
Copy link
Member

dims commented Oct 15, 2020

@erinaboyd we already have a list :) https://github.com/cncf/foundation/blob/master/allowed-third-party-license-policy.md

Base automatically changed from master to main February 10, 2021 20:33
@amye amye merged commit d560ff2 into cncf:main Dec 14, 2021
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.

None yet

5 participants