# [tex-live] a few thoughts on automatical dependency lists validation

Ivan Shmakov oneingray at gmail.com
Mon Nov 10 07:12:56 CET 2008

>>>>> Karl Berry <karl at freefriends.org> writes:

[...]

> There is no harm in adding package-level dependencies, especially
> of "important" packages like beamer, when the issue arises and the
> solution is clear.

> We definitely have no plans to try to systematically identify and
> record all dependencies of all packages.

I'd say that it's technically infeasible with the set of tools
currently implemented.

Would there be a tool to automatically validate (at least some
of) the dependencies, it wouldn't be a big deal to record them
all.

The basic (if not obvious) ideas beyond this tool could be:

* get the minimal possible TeX Live installation in a temporary
directory; install a package with all of its dependencies on
top of it;

* confine'' the installation, so that nothing (except of the
basic system tools) will ever be used from outside of the
installation tree;

* if the package provides any LaTeX classes, try to compile a
minimal possible test .tex file using each of them, e. g.:

\documentclass {CLASS}

\begin {document}
Hello, world!
\end {document}

check for the errors;

* likewise for the LaTeX packages, e. g.:

\documentclass {minimal}

\usepackage {PACKAGE}

\begin {document}
Hello, world!
\end {document}

* in the case of errors, check the log file for any missing
files; check the database for these files; make a report;

* allow packages to supply these test .tex files, to override
the ones autogenerated by the tool;

* once the package is checked, destroy the whole installation
directory before trying another one (unless, say, there were
errors and a kind of debug'' mode is in use.)