D-Programming-Language/phobos — pull request #1809 by monarchdodra (2013-12-22 22:04:00+00:00)
Title: Reduce imports in std.traits

Reduces the imports in std.traits.

Notes:

* Always un-conditionally import `std.typetuple`. I may have been able to remove typecons too, but it seems like it would have been pulled in regardless anyways, and it is a very light module. So I don't think see that as problematic.
* Always pulls the whole of conv because of `unsigned`. It might be worth removing the dependency faster than planned :/ AFAIK, the import can be removed without breaking anything, so it is *only* used for the alias (there is no actual dependency).
* Makes quite a few CTFE dependencies to `std.algorithm` and `std.string` for `format`, as well as other string processing functions, for a few trivial operation. These dependencies could probably be reduced with the cost of a bit of duplication (or better packaging).
* There were some "hidden" global import in unittests to `std.typecons`. I deactivated these unittests.