Skip to main content

Asynchronous Python client for the GitHub API

Project description

aiogithubapi

codecov PyPI Actions

Asynchronous Python client for the GitHub API

This is not a full client for the API (Have you seen it, it's huge), and will probably never be. Things are added when needed or requested.

If something you need is missing please raise a feature request to have it added or create a PR 🎉.

For examples on how to use it see the tests directory.

Install

python3 -m pip install aiogithubapi

Project transition

Note: This project is currently in a transition phase.

In August 2021 a new API interface was introduced (in #42). With that addition, all parts of the old interface are now considered deprecated. Which includes:

Warning: The deprecated code will be removed in a future release. Please migrate to the new API interface.

Contribute

All contributions are welcome!

  1. Fork the repository
  2. Clone the repository locally and open the devcontainer or use GitHub codespaces
  3. Do your changes
  4. Lint the files with scripts/lint
  5. Ensure all tests pass with scripts/test
  6. Ensure 100% coverage with scripts/coverage
  7. Commit your work, and push it to GitHub
  8. Create a PR against the main branch

Versioning

This project follows Semantic Versioning.

Early releases used semver (0.1.02.0.0), followed by a period of calendar versioning (21.1.025.5.0). Starting with 26.0.0, the project returns to semver — using 26.x.x as the starting point to stay above the last calver release and avoid confusing package managers.

Version bumps are determined automatically by PR labels:

  • breaking-changemajor
  • feature / enhancementminor
  • All other changes → patch

Release

Releases are automated via GitHub Actions. The flow works as follows:

  1. PRs are merged to main with appropriate labels
  2. On every merge, release-drafter automatically maintains a draft GitHub Release with categorized changelog entries built from PR titles and authors
  3. Changelog entries are grouped into: Breaking changes, New features, Enhancements, Bug fixes, Maintenance, Documentation, and Dependencies
  4. A maintainer reviews the draft and publishes the release via the GitHub Releases UI
  5. Publishing the GitHub Release for a tag (creating or selecting the tag in the UI) triggers the release workflow, which stamps the version into pyproject.toml, builds the package, and publishes it to PyPI via OIDC trusted publishing

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiogithubapi-26.0.0.tar.gz (37.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aiogithubapi-26.0.0-py3-none-any.whl (72.6 kB view details)

Uploaded Python 3

File details

Details for the file aiogithubapi-26.0.0.tar.gz.

File metadata

  • Download URL: aiogithubapi-26.0.0.tar.gz
  • Upload date:
  • Size: 37.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aiogithubapi-26.0.0.tar.gz
Algorithm Hash digest
SHA256 71ee97ebb242378535551ede80605384d1d3536b83e68dae938ce201d06dac33
MD5 f51e358e00e3f144a687f088ea99bb8d
BLAKE2b-256 414c1319dc5f7772f2ad960bd84d47d972a64aa596b6cdd966956e5e85501333

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiogithubapi-26.0.0.tar.gz:

Publisher: release.yml on ludeeus/aiogithubapi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aiogithubapi-26.0.0-py3-none-any.whl.

File metadata

  • Download URL: aiogithubapi-26.0.0-py3-none-any.whl
  • Upload date:
  • Size: 72.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aiogithubapi-26.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 156b5f9217d23cb0eb65e233b19c10f499f1ba3bcf1d7d65e3a463c034e3813a
MD5 43188c9a96ed81c221e2062d6791e83c
BLAKE2b-256 02a03102dbe2457eceb2e71f295e5d08f0f07c4982f82366cce34b2a332e348e

See more details on using hashes here.

Provenance

The following attestation bundles were made for aiogithubapi-26.0.0-py3-none-any.whl:

Publisher: release.yml on ludeeus/aiogithubapi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page