all-repos-depends
View the dependencies of your repositories.
all-repos-depends is an add-on project to
all-repos.
Installation
pip install all-repos-depends
CLI
To generate the database, run all-repos-depends-generate.
To run the webapp, run all-repos-depends-server. The server runs on a
configurable --port.
configuration
{
"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
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.
package providers
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!)
all_repos_depends.packages.setup_py
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.
all_repos_depends.packages.package_json
Reads the name field out of an npm package.json file.
depends providers
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).
all_repos_depends.depends.setup_py
This depends provider reads the ast of setup.py and searches for the
install_requires keyword argument.
all_repos_depends.depends.requirements_tools
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)
Release files for all-repos-depends 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| all_repos_depends-0.0.3.tar.gz | 9.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| all_repos_depends-0.0.3-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 22.4 kB
Release files / all_repos_depends-0.0.3.tar.gz
| Download URL | all_repos_depends-0.0.3.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
523f4cbdec42c2c376a4205afb9e7b345295facd04054443807a6865ca3e51db
|
|
BLAKE2b-256 checksum How to use checksums |
df6919a9a2003dbfd4ed49cfc32dcf7aa516965221985d8842332e7890e2c0fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.9
|
Release files / all_repos_depends-0.0.3-py2.py3-none-any.whl
| Download URL | all_repos_depends-0.0.3-py2.py3-none-any.whl |
|---|---|
| Size | 13.4 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
95985a9af4943b25114c72d68129b13ee1675f3747dee12629c03c4834e3adf7
|
|
BLAKE2b-256 checksum How to use checksums |
ffe1cc1f83b16c15565ba556d47ce5b6475cd91c546ef2889d10c7d14c72860a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.9
|