We need a source code analyzer that looks at the includes, imports, requires etc. in the source code and the functions that are used is able to extract the correct dependencies in order to compile and run the program. This would save a ton of time in open source development. I think this is possible too. This could also be used to help developers to move to new versions of their dependencies.
Then in the future for dependency injection, users would not even need to specify the specific libraries or versions. Could be inferred from how the methods are used in the code. I think this is essential for more complicated programs.