Module hub

Module hub 

Source
Expand description

GitHub client, talking to one GitHub instance

Based on the octocrab library, which we reexport in case you need it.

§Tokens

The token is a Personal access token, as can be created via the web UI:

  • Top right user icon menu: Settings
  • Left sidebar: Developer settings
  • From menu on the left: Personal access tokens

§Limitations

It is not possible to use the API to create a merge request where the source and target repository leafnames (the PROJECT part of USER/PROJECT) are not the same. This is a GitHub API limitation. It appears to be possible to create such MRs via the GitHub web UI, so programs must be prepared to deal with them.

§Terminology and model - supplementary

  • Repository: a GitHub project. Identified by the string NAMESPACE/PROJECT eg USER/PROJECT.

  • Merge Request. a GitHub pull request. GitHub has confusing terminology: the gitforge source is the GitHub head and the gitforge target is the GitHub base.

  • User: a GitHub user or **organisation. Identified by the user or organisation slug.

Re-exports§

pub use octocrab;

Structs§

Hub
GitHub client, as Forge. Use Box<dyn Forge> instead.