From e34d67b5819571bf522e4fab7b7bb558b78e29c9 Mon Sep 17 00:00:00 2001 From: VarMonke Date: Wed, 27 Apr 2022 15:03:18 +0530 Subject: [PATCH] Fix repr and bump version --- Github/__init__.py | 2 +- Github/main.py | 8 ++++++++ Github/objects.py | 15 +++++++-------- setup.py | 6 +++--- 4 files changed, 19 insertions(+), 12 deletions(-) diff --git a/Github/__init__.py b/Github/__init__.py index d07521e..7a6a611 100644 --- a/Github/__init__.py +++ b/Github/__init__.py @@ -8,4 +8,4 @@ from .exceptions import * __title__ = 'Github-Api-Wrapper' __authors__ = 'VarMonke', 'sudosnok' -__version__ = '0.0.1' \ No newline at end of file +__version__ = '1.0.0' \ No newline at end of file diff --git a/Github/main.py b/Github/main.py index 391e7cc..9bc1cb1 100644 --- a/Github/main.py +++ b/Github/main.py @@ -1,5 +1,6 @@ #== main.py ==# from __future__ import annotations +from datetime import datetime __all__ = ( 'GHClient', @@ -15,6 +16,7 @@ from . import exceptions from .cache import RepoCache, UserCache from .http import http from .objects import Gist, Issue, Organization, Repository, User, File +from Github.urls import BASE_URL class GHClient: @@ -105,6 +107,12 @@ class GHClient: return wrapped return wrapper + async def latency(self) -> int: + """Returns the latency of the client.""" + start = datetime.utcnow() + await self.http.session.get(BASE_URL + '/zen') + return (datetime.utcnow() - start).total_seconds() + #@_cache(type='User') async def get_self(self) -> User: """Returns the authenticated User object.""" diff --git a/Github/objects.py b/Github/objects.py index 7554fc2..f3ad0b6 100644 --- a/Github/objects.py +++ b/Github/objects.py @@ -9,7 +9,6 @@ if TYPE_CHECKING: from datetime import datetime import io import os -from contextlib import nullcontext __all__ = ( 'APIObject', @@ -60,7 +59,7 @@ class _BaseUser(APIObject): self.id = response.get('id') def __repr__(self) -> str: - return f'<{self.__class__.__name__}; id = {self.id}, login = {self.login!r}>' + return f'<{self.__class__.__name__} id = {self.id}, login = {self.login!r}>' async def repos(self) -> list[Repository]: results = await self._http.get_user_repos(self) @@ -100,7 +99,7 @@ class User(_BaseUser): continue def __repr__(self) -> str: - return f'<{self.__class__.__name__}; login: {self.login!r}, id: {self.id}, created_at: {self.created_at}>' + return f'<{self.__class__.__name__} login: {self.login!r}, id: {self.id}, created_at: {self.created_at}>' class PartialUser(_BaseUser): @@ -117,7 +116,7 @@ class PartialUser(_BaseUser): self.avatar_url = response.get('avatar_url') def __repr__(self) -> str: - return f'<{self.__class__.__name__}; login: {self.login!r}, id: {self.id}, site_admin: {self.site_admin}, html_url: {self.html_url}>' + return f'<{self.__class__.__name__} login: {self.login!r}, id: {self.id}, site_admin: {self.site_admin}, html_url: {self.html_url}>' async def _get_user(self) -> User: """Upgrades the PartialUser to a User object.""" @@ -174,7 +173,7 @@ class Repository(APIObject): continue def __repr__(self) -> str: - return f'<{self.__class__.__name__}; id: {self.id}, name: {self.name!r}, owner: {self.owner!r}>' + return f'<{self.__class__.__name__} id: {self.id}, name: {self.name!r}, owner: {self.owner!r}>' @property def is_fork(self) -> bool: @@ -225,7 +224,7 @@ class Issue(APIObject): continue def __repr__(self) -> str: - return f'<{self.__class__.__name__}; id: {self.id}, title: {self.title}, user: {self.user}, created_at: {self.created_at}, state: {self.state}>' + return f'<{self.__class__.__name__} id: {self.id}, title: {self.title}, user: {self.user}, created_at: {self.created_at}, state: {self.state}>' @property def updated_at(self) -> str: @@ -282,7 +281,7 @@ class Gist(APIObject): setattr(self, key, value) def __repr__(self) -> str: - return f'<{self.__class__.__name__}; id: {self.id}, owner: {self.owner}, created_at: {self.created_at}>' + return f'<{self.__class__.__name__} id: {self.id}, owner: {self.owner}, created_at: {self.created_at}>' @property def updated_at(self) -> str: @@ -333,7 +332,7 @@ class Organization(APIObject): continue def __repr__(self): - return f'<{self.__class__.__name__}; login: {self.login!r}, id: {self.id}, is_verified: {self.is_verified}, public_repos: {self.public_repos}, public_gists: {self.public_gists}, created_at: {self.created_at}>' + return f'<{self.__class__.__name__} login: {self.login!r}, id: {self.id}, is_verified: {self.is_verified}, public_repos: {self.public_repos}, public_gists: {self.public_gists}, created_at: {self.created_at}>' @property def description(self): diff --git a/setup.py b/setup.py index eba24a5..9cbc08c 100644 --- a/setup.py +++ b/setup.py @@ -3,10 +3,10 @@ from setuptools import setup with open('requirements.txt') as f: requirements = f.read().splitlines() -version = '0.0.1' +version = '1.0.0' packages = [ - 'Github', + 'github', ] readme = '' @@ -14,7 +14,7 @@ with open('README.md') as f: readme = f.read() setup( - name='GithubAPI', + name='github', author='VarMonke & sudosnok', url='https://github.com/VarMonke/Github-Api-Wrapper', version=version,