Skip to content
This repository was archived by the owner on Sep 9, 2020. It is now read-only.

#907 Warn when an importer cannot preserve a constraint #1013

Closed
wants to merge 82 commits into from

Conversation

djosephsen
Copy link
Contributor

What does this do / why do we need it?

This is a first attempt at solving one third of #907

What should your reviewer look out for in this PR?

I'd like to make sure I understand the expected behavior of the importer when no valid constraints are found in the current project's vendor deps

Do you need help or clarification on anything?

Yah that ^^ up there ^^

Which issue(s) does this PR fix?

#907

karrick and others added 30 commits August 5, 2017 12:38
* HashFromNode returns a deterministic cryptographic digest for a directory tree
* VerifyDepTree verifies dep tree according to expected digests
* prevents many accidental hash collisions
* trying to figure out condition of the testdata_digest directory on the build box
* some more edge test cases added
Remove any CRLF sequences in buf, using `bytes.Index` because that
takes advantage of machine opcodes that search for byte patterns on
many architectures. This operation is done in two parts: find and
record the CRLF sequence positions, then loop through and copy bytes
to eliminate the CR bytes.
* Only works with directories; no longer with files.

* Takes a single argument, that of the directory to hash.

* Hashes existance and type of all file system nodes in the directory
  that it finds.

* When hashing file system node names, it no longer includes the
  prefix matching the directory name parameter.
* In line with the original document describing hungarian notation,
  all file system path variable names have been prefixed with either
  `slash` or `os` to differentiate whether the variable holds a slash
  delimited pathname or a pathname delimited by an os-specific
  pathname delimiter. This is to make it much easier to visually see
  whether we are using the wrong pathname "type" than desired.
* device files, named pipes, sockets found in a vendor root tree are
  also reported, and will result in a status of `NotInLock`, because
  those node types are generally not in source control.
cmd/dep: fix vndr importpath validation
@carolynvs
Copy link
Collaborator

@djosephsen I just fixed the vndr check for an empty import path. Once you pull in the latest changes from master (either with a rebase or a merge, whatever you are comfortable with), that test should stop failing.

@djosephsen
Copy link
Contributor Author

awesome thanks! I'll rebase asap

@googlebot
Copy link
Collaborator

So there's good news and bad news.

👍 The good news is that everyone that needs to sign a CLA (the pull request submitter and all commit authors) have done so. Everything is all good there.

😕 The bad news is that it appears that one or more commits were authored by someone other than the pull request submitter. We need to confirm that they're okay with their commits being contributed to this project. Please have them confirm that here in the pull request.

Note to project maintainer: This is a terminal state, meaning the cla/google commit status will not change from this State. It's up to you to confirm consent of the commit author(s) and merge this pull request when appropriate.

@djosephsen
Copy link
Contributor Author

oh googlebot. you so silly.

@carolynvs
Copy link
Collaborator

@djosephsen Looks like your rebase didn't go quite right and the PR now has 70 commits. 😀 Once that's fixed, good ole googlebot should be happy again.

@djosephsen
Copy link
Contributor Author

Yes I'm currently exploring the nuances of this valuable learning opportunity.

@djosephsen djosephsen closed this Aug 29, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.