lib: Rewrite depcop to check transitive dependencies.

This is rewrite of most depcop functionality.  I started out
simply wanting to change the implementation to check transitive
dependencies, but the original implementation was complicated and
hard to inject this feature.  So I've restructured things and
added more tests.

On the user side, I've removed "incoming" dependency checking,
since it doesn't provide enough benefits to outweigh the extra
complexity and configuration.  I've also simplified the format of
the GO.PACKAGES file as a result.

I've also updated all GO.PACKAGE files to follow the new
formatting, and to remove some unnecessary allowed dependencies.
After this is submitted we can go through and more methodically
restrict dependencies throughout v.io.

Closes vanadium/issues#394

MultiPart: 3/4

Change-Id: I14308edb899d01d1ee52c7e70010be3355b96711
4 files changed
tree: 4c02ff544404cd0968f6035ca011b838e0131c07
  1. buildinfo/
  2. cmdline/
  3. dbutil/
  4. host/
  5. netconfig/
  6. netstate/
  7. pubsub/
  8. textutil/
  9. toposort/
  10. vlog/
  11. .gitignore
  12. AUTHORS
  13. CONTRIBUTORS
  14. GO.PACKAGE
  15. LICENSE
  16. PATENTS
  17. README.md
  18. VERSION
README.md

This repository contains general purpose libraries used by the Vanadium project.