I never really finished this project -- and github dependencies kinda works?
The original version of this project was much better but unfortunately was lost to closed source.
View the dependencies of your repositories.
all-repos-depends is an add-on project to
all-repos.
pip install all-repos-dependsTo generate the database, run all-repos-depends-generate.
To run the webapp, run all-repos-depends-server. The server runs on a
configurable --port.
{
"all_repos_config": "../all-repos/all-repos.json",
"get_packages": [
"all_repos_depends.packages.setup_py",
"all_repos_depends.packages.package_json"
],
"get_depends": [
"all_repos_depends.depends.setup_py",
"all_repos_depends.depends.requirements_tools"
]
}Providers are the pluggable bits of all-repos-depends. A few providers are
given for free.
The types that the providers will produce are in all_repos_depends.types:
Package = collections.namedtuple('Package', ('type', 'key', 'name'))
Depends = collections.namedtuple(
'Depends', ('relationship', 'package_type', 'package_key', 'spec'),
)If a provider encounters a detectable error state, it should raise an
exception of the type all_repos_depends.errors.DependsError.
A package provider will be called while the cwd is at the root of the
repository. It must return a all_repos_depends.types.Package that the
repository provides (or None if it is not applicable).
A few are provided out of the box (PRs welcome for more!)
This package provider reads the ast of setup.py and searches for the
name keyword argument. For now this means it will only be able to read
setup.py files which have python3-compatible syntax and set their name
literally.
Reads the name field out of an npm package.json file.
A depends provider will be called while the cwd is at the root of the
repository. It must return a sequence or all_repos_depends.types.Depends
that the repository provides (or an empty sequence if it is not applicable).
This depends provider reads the ast of setup.py and searches for the
install_requires keyword argument.
This depends provider reads the following requirements files according to
the conventions for
requirements-tools:
requirements-minimal.txt(DEPENDS)requirements.txt(REQUIRES)requirements-dev-minimal.txt(DEPENDS_DEV)requirements-dev.txt(REQUIRES_DEVif-minimalis present otherwiseDEPENDS_DEV)