If recursive is TRUE, any package that is specified as a
  dependency will in turn have its dependencies included (and so on),
  these are known as indirect dependencies.  If recursive is
  FALSE, only the dependencies directly named by the vignette
  will be used.
If local is TRUE, the system will only look at the
  user's local machine and not online to find dependencies.
If reduce is TRUE, the system will collapse the fields in the
  DependsList object such that a minimal set of dependencies
  are specified (for instance if there was
  foo, foo (>= 1.0.0), foo (>= 1.3.0), it would only return
  foo (>= 1.3.0)).