Refer to the main README for an explanation of what this is about.
The most important parts of the graph repository looks like this:
cf-graph-countyfair
├── import_to_pkg_maps
│ └── ...
├── mappings/pypi
│ └── ...
├── node_attrs
│ ├── somepackage.json
│ └── ...
├── pr_info
│ ├── somepackage.json
│ └── ...
├── pr_json
│ ├── 123456789.json
│ └── ...
├── version_pr_info
│ ├── somepackage.json
│ └── ...
├── versions
│ ├── somepackage.json
│ └── ...
├── graph.json
└── ranked_hubs_authorities.json
For efficiency reasons, all subdirectories make use of sharded paths. For example, the path
node_attrs/pytest.json
is actually a sharded path, and the actual path in the repository is
node_attrs/d/9/a/8/c/pytest.json
. This is done to avoid having too many files in a single directory, allowing
git to efficiently manage the repository.
Undocumented.
Undocumented.
One file per conda-forge package containing metadata about the package.
Pydantic Model: NodeAttributes
in node_attributes.py.
One file per conda-forge package containing information about pull requests that have been created for performing
migrations (including version migrations). Not all packages have a file in this directory.
Every file is this directory is referenced by the NodeAttributes.pr_info
field using a Lazy JSON reference.
Pydantic Model: PRInfo
in pr_info.py.
One file per pull request (filename: <pr_id>.json
) containing information about a migration-related GitHub pull
request.
Previously, the data of this directory was inlined in the pr_info
files (and in some instances, it still is), but
today Lazy JSON references are used to link to pr_json
files.
Pydantic Model: PullRequestData
in pr_json.py.
This directory is NOT analogous to pr_info
. It contains metadata about attempted version migrations, and is
referenced by the NodeAttributes.version_pr_info
field using a Lazy JSON reference.
Pydantic Model: VersionPrInfo
in version_pr_info.py
One file per conda-forge package containing upstream version update information about the package. For some packages, this file may not exist, indicating absent upstream version update information.
Pydantic Model: Versions
in versions.py.
The JSON representation of a networkx graph. The graph is a directed graph, where the nodes are package names and the edges are dependencies. The node list of this graph is treated as the set of all packages in the conda-forge ecosystem. The edges are directed from the dependency package to the dependent package.
The nodes have attributes which reference JSON files in the node_attrs
directory.
Undocumented.