#!/usr/bin/env python # -*- encoding: utf-8 -*- #TODO: Move the imports out. setup related class Github(object): """ You can preconfigure all services globally with a ``config`` dict. See :attr:`~pygithub3.services.base.Service` Example:: gh = Github(user='kennethreitz', token='ABC...', repo='requests') """ def __init__(self, **config): from pygithub3.services.users import User from pygithub3.services.repos import Repo from pygithub3.services.gists import Gist from pygithub3.services.orgs import Org self._users = User(**config) self._repos = Repo(**config) self._gists = Gist(**config) self._orgs = Org(**config) @property def remaining_requests(self): """ Limit of Github API v3 """ from pygithub3.core.client import Client return Client.remaining_requests @property def users(self): """ :ref:`Users service ` """ return self._users @property def repos(self): """ :ref:`Repos service ` """ return self._repos @property def gists(self): """ :ref:`Gists service ` """ return self._gists @property def orgs(self): """ :ref:`Orgs service ` """ return self._orgs