Outputs#

Dynamic Files#

License: license.path Codeowners: maintainer.code_owners.path README: readme..path Health Files: health..path Website environment files: web.env Announcement file: announcement.path Package README: package.readme.path Package pyproject.toml: package.path Issue forms: issue.forms[].path Pull request forms: pull.template Discussion forms: discussion.category Tool config and env files: tools.

Changelogs: changelog.*.path

Fixed Path#

Citation: CITATION.CFF Funding: .github/FUNDING.yml gitignore: .gitignore gitattributes: .gitattributes

Dynamic Directories#

Media: theme.path Website: web.path Package: package.path Tests: test.path Control center: control.path Local directory: local.path

PyPackIT gathers all the contents of your repository’s control center into a single JSON file, which is automatically updated whenever you apply changes to the control center. This file, which is located at .github/control/.metadata.json, serves two main purposes:

  • During workflow runs triggered by events that do not modify the contents of the control center, PyPackIT uses this file to read all the necessary data and configurations, instead of unnecessarily parsing and processing the control center’s contents from scratch.

  • It is made available to your documentation website, allowing you to use all available data and configurations in your website’s content and templates, without any required intervention from PyPackIT.

The options available in your repository’s control center can be divided into three categories:

  • PyPackIT-specific configurations and data; these are directly read from your control center’s contents whenever needed.

  • GitHub-specific configurations and data that can be directly set using GitHub’s UI, CLI, or API; these are directly applied to your repository by PyPackIT.

  • Configurations and data for your GitHub/Git repository, package, test-suite, documentation website, and all external tools used in your project, which must be placed in specific files at specific locations in your repository, to be read and used by the corresponding platforms, tools, and services that require them.

This section covers the third category, providing a full reference of all such files that are automatically generated in your repository by PyPackIT.

Dynamic Files

These are all dynamic files, meaning that PyPackIT will automatically update them whenever you apply changes to the corresponding options in your control center. Therefore, you should never manually edit these files, as your changes will be overwritten by PyPackIT the next time they are updated. Instead, you should always apply your changes to the corresponding options in the control center.

Metadata File

A JSON file containing all the contents of your repository’s control center, augmented with additional data generated by PyPackIT.

metadata
Package Files

Source files for your Python package and its corresponding test suite, and all related configuration and metadata files.

package
GitHub Files

GitHub-specific configuration files for your repository, such as issue, pull request, and discussion templates, etc.

github
Git Files

Git-specific configuration files for your repository, such as gitignore and gitattributes files.

git
Tools Config Files

Configuration files for external tools and services used in your project.

tools
License Files

License files for your repository and Python package.

license
Health Files

Community health files for your project and GitHub repository, such as code of conduct, contributing guidelines, etc.

health
README Files

The main README file of your GitHub repository, along with README files for all its directories and subdirectories.

readme