I added these lines to your code, maybe you'd like to add it too.
Added an exception in case of a path does not exist.
[FEATURE] Improved error handling
Some more error handling in case of important data could
not be read, parsed or is omitted.
[FEATURE] Add an error if no package information could be found
This patch throws a warning if no package.y(a)ml file could be
found in a requested directory.