Automatic merge from submit-queue (batch tested with PRs 60475, 60514, 60506, 59903, 60319). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
sh2ju.sh: suppress `which` command output when gdate not found in $PATH
**What this PR does / why we need it**:
`make quick-verify` (and probably some other commands) doesn't produce a lot of unrelated and useless information to a console now.
Here is the related PR in the upstream: https://github.com/manolo/shell2junit/pull/7
How it was before:
>SUCCESS verify-pkg-names.sh 1s
>Verifying verify-readonly-packages.sh
>which: no gdate in (/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/coder/bin:/home/coder/git/bin:/opt/maven/bin:/opt/go1.9.2/bin:/home/coder/.cargo/bin:/home/coder/git/src/github.com/openshift/origin/_output/local/bin/linux/amd64:/home/coder/git/kubernetes/third_party/etcd:/opt/groovy-2.4.12/bin:/home/coder/bin:/home/coder/git/bin:/opt/maven/bin:/opt/go1.9.2/bin:/home/coder/.cargo/bin:/home/coder/git/src/github.com/openshift/origin/_output/local/bin/linux/amd64:/home/coder/git/kubernetes/third_party/etcd:/opt/groovy-2.4.12/bin)
Ts is go/types forked from go@236abdb46b (just after 1.10) and
cherry-picked go@1006f703ffc, which fixes https://github.com/golang/go/issues/23712.
It can be removed when all builders are >= go1.11.
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
fix typos: remove duplicated word in comments
**What this PR does / why we need it**: Remove the duplicated word `the` in comments
**Which issue this PR fixes** : fixes #
**Special notes for your reviewer**:
```release-note
NONE
```
Automatic merge from submit-queue
fix naming for testgrid to pick up cmd test junit
Fixes#47613
The file name for testgrid to pick up should match regex `'junit(_[^_]+)?(_\d+-\d+)?(_\d+)?.xml'`
Name before is `junit-test-cmd.xml`
Name after is `junit_test-cmd.xml`
```release-note
NONE
```
/assign @krzyzacy
Use visitors to avoid allocating slices to hold nodes during traversal (and to allow short-circuiting)
Benchmarked at 95% space savings traversing nodes with many edges.
Implements graph.Directed capable of storing at most one edge between any two nodes.
Uses the Undirected implementation for space efficiency (~30% space savings).