Skip to content

Commit f75b9b2

Browse files
fix: if response is not cached make a check request
1 parent 157b6d0 commit f75b9b2

1 file changed

Lines changed: 15 additions & 16 deletions

File tree

monty/exts/info/github/cog.py

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -123,23 +123,22 @@ async def resolve_repo(
123123
"GET", f"https://api.github.com/repos/{default_user}/{repo.name}"
124124
)
125125
)
126-
if response:
127-
if response.status == 200:
128-
repo_json = await response.read()
129-
if response.headers.get("Content-Encoding") == "gzip":
130-
try:
131-
repo_json = gzip.decompress(repo_json)
132-
except Exception:
133-
pass
134-
repo_data = githubkit.rest.FullRepository.model_validate_json(repo_json.decode())
135-
return ghretos.Repo(owner=repo_data.owner.login, name=repo_data.name)
136-
if response != 404:
126+
if response and response.status == 200:
127+
repo_json = await response.read()
128+
if response.headers.get("Content-Encoding") == "gzip":
137129
try:
138-
repo_data = await self.client.fetch_repo(owner=default_user, repo=repo.name)
139-
return ghretos.Repo(owner=repo_data.owner.login, name=repo_data.name)
140-
except githubkit.exception.RequestFailed as e:
141-
if e.response.status_code != 404:
142-
raise
130+
repo_json = gzip.decompress(repo_json)
131+
except Exception:
132+
pass
133+
repo_data = githubkit.rest.FullRepository.model_validate_json(repo_json.decode())
134+
return ghretos.Repo(owner=repo_data.owner.login, name=repo_data.name)
135+
elif not response or response.status != 404:
136+
try:
137+
repo_data = await self.client.fetch_repo(owner=default_user, repo=repo.name)
138+
return ghretos.Repo(owner=repo_data.owner.login, name=repo_data.name)
139+
except githubkit.exception.RequestFailed as e:
140+
if e.response.status_code != 404:
141+
raise
143142

144143
if repo.name in self.short_repos:
145144
return ghretos.Repo(

0 commit comments

Comments
 (0)