Skip to content
This repository was archived by the owner on Jun 13, 2025. It is now read-only.

Commit 0c294c4

Browse files
committed
API Improvements: Fix typings for various files pt5
1 parent 902a5cb commit 0c294c4

File tree

10 files changed

+95
-58
lines changed

10 files changed

+95
-58
lines changed

api/internal/feature/views.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import logging
22
import pickle
3+
from typing import Any, Dict, List
34

45
from rest_framework import status
5-
from rest_framework.response import Response
6+
from rest_framework.response import Request, Response
67
from rest_framework.views import APIView
78
from shared.django_apps.rollouts.models import FeatureFlag
89
from shared.rollouts import Feature
@@ -20,15 +21,15 @@ class FeaturesView(APIView):
2021
skip_feature_cache = get_config("setup", "skip_feature_cache", default=False)
2122
timeout = 300
2223

23-
def __init__(self, *args, **kwargs):
24+
def __init__(self, *args: Any, **kwargs: Any) -> None:
2425
self.redis = get_redis_connection()
2526
super().__init__(*args, **kwargs)
2627

27-
def get_many_from_redis(self, keys):
28+
def get_many_from_redis(self, keys: List) -> Dict[str, Any]:
2829
ret = self.redis.mget(keys)
2930
return {k: pickle.loads(v) for k, v in zip(keys, ret) if v is not None}
3031

31-
def set_many_to_redis(self, data):
32+
def set_many_to_redis(self, data: Dict[str, Any]) -> None:
3233
pipeline = self.redis.pipeline()
3334
pipeline.mset({k: pickle.dumps(v) for k, v in data.items()})
3435

@@ -38,7 +39,7 @@ def set_many_to_redis(self, data):
3839
pipeline.expire(key, self.timeout)
3940
pipeline.execute()
4041

41-
def post(self, request):
42+
def post(self, request: Request) -> Response:
4243
serializer = FeatureRequestSerializer(data=request.data)
4344
if serializer.is_valid():
4445
flag_evaluations = {}

codecov_auth/management/commands/set_trial_status_values.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from datetime import datetime
2+
from typing import Any
23

34
from django.core.management.base import BaseCommand, CommandParser
45
from django.db.models import Q
@@ -20,7 +21,7 @@ class Command(BaseCommand):
2021
def add_arguments(self, parser: CommandParser) -> None:
2122
parser.add_argument("trial_status_type", type=str)
2223

23-
def handle(self, *args, **options) -> None:
24+
def handle(self, *args: Any, **options: Any) -> None:
2425
trial_status_type = options.get("trial_status_type", {})
2526

2627
# NOT_STARTED

core/commands/pull/interactors/fetch_pull_request.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from datetime import datetime, timedelta
22

3-
from shared.django_apps.core.models import Pull
3+
from shared.django_apps.core.models import Pull, Repository
44

55
from codecov.commands.base import BaseInteractor
66
from codecov.db import sync_to_async
@@ -17,7 +17,7 @@ def _should_sync_pull(self, pull: Pull | None) -> bool:
1717
)
1818

1919
@sync_to_async
20-
def execute(self, repository, id):
20+
def execute(self, repository: Repository, id: int) -> Pull:
2121
pull = repository.pull_requests.filter(pullid=id).first()
2222
if self._should_sync_pull(pull):
2323
TaskService().pulls_sync(repository.repoid, id)

core/commands/repository/interactors/erase_repository.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212

1313
class EraseRepositoryInteractor(BaseInteractor):
14-
def validate_owner(self, owner: Owner):
14+
def validate_owner(self, owner: Owner) -> None:
1515
if not current_user_part_of_org(self.current_owner, owner):
1616
raise Unauthorized()
1717

@@ -23,7 +23,7 @@ def validate_owner(self, owner: Owner):
2323
raise Unauthorized()
2424

2525
@sync_to_async
26-
def execute(self, repo_name: str, owner: Owner):
26+
def execute(self, repo_name: str, owner: Owner) -> None:
2727
self.validate_owner(owner)
2828
repo = Repository.objects.filter(author_id=owner.pk, name=repo_name).first()
2929
if not repo:

graphql_api/actions/flags.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
from timeseries.models import Interval, MeasurementName
1111

1212

13-
def flags_for_repo(repository: Repository, filters: Mapping = None) -> QuerySet:
13+
def flags_for_repo(repository: Repository, filters: Mapping = {}) -> QuerySet:
1414
queryset = RepositoryFlag.objects.filter(
1515
repository=repository,
1616
deleted__isnot=True,

graphql_api/types/branch/branch.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from typing import Optional
22

33
from ariadne import ObjectType
4+
from graphql import GraphQLResolveInfo
45

56
from core.models import Branch, Commit
67
from graphql_api.dataloader.commit import CommitLoader
@@ -9,13 +10,15 @@
910

1011

1112
@branch_bindable.field("headSha")
12-
def resolve_head_sha(branch: Branch, info) -> str:
13+
def resolve_head_sha(branch: Branch, info: GraphQLResolveInfo) -> str:
1314
head = branch.head
1415
return head
1516

1617

1718
@branch_bindable.field("head")
18-
async def resolve_head_commit(branch: Branch, info) -> Optional[Commit]:
19+
async def resolve_head_commit(
20+
branch: Branch, info: GraphQLResolveInfo
21+
) -> Optional[Commit]:
1922
head = branch.head
2023
if head:
2124
loader = CommitLoader.loader(info, branch.repository_id)

graphql_api/types/mutation/save_okta_config/save_okta_config.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1+
from typing import Any, Dict
2+
13
from ariadne import UnionType
4+
from graphql import GraphQLResolveInfo
25

36
from graphql_api.helpers.mutation import (
47
require_authenticated,
@@ -9,7 +12,9 @@
912

1013
@wrap_error_handling_mutation
1114
@require_authenticated
12-
async def resolve_save_okta_config(_, info, input):
15+
async def resolve_save_okta_config(
16+
_: Any, info: GraphQLResolveInfo, input: Dict[str, Any]
17+
) -> None:
1318
command = info.context["executor"].get_command("owner")
1419
return await command.save_okta_config(input)
1520

graphs/mixins.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
from typing import Any
2+
13
from django.http import HttpResponse
24
from rest_framework import status
3-
from rest_framework.response import Response
5+
from rest_framework.response import Request, Response
46

57

68
class GraphBadgeAPIMixin(object):
7-
def get(self, request, *args, **kwargs):
9+
def get(self, request: Request, *args: Any, **kwargs: Any) -> Response:
810
ext = self.kwargs.get("ext")
911
if ext not in self.extensions:
1012
return Response(

0 commit comments

Comments
 (0)