diff --git a/devel/management/commands/generate_keyring.py b/devel/management/commands/generate_keyring.py
index 0ce5f3e7..aceef994 100644
--- a/devel/management/commands/generate_keyring.py
+++ b/devel/management/commands/generate_keyring.py
@@ -76,7 +76,7 @@ def generate_keyring(keyserver, keyring):
}
-def generate_ownertrust(trust_path):
+def generate_ownertrust(trust_path: str) -> None:
master_key_ids = MasterKey.objects.values_list("pgp_key", flat=True)
with open(trust_path, "w") as trustfile:
for key_id in master_key_ids:
diff --git a/devel/models.py b/devel/models.py
index bfe9f452..8714d533 100644
--- a/devel/models.py
+++ b/devel/models.py
@@ -66,14 +66,14 @@ class Meta:
verbose_name = 'additional profile data'
verbose_name_plural = 'additional profile data'
- def get_absolute_url(self):
+ def get_absolute_url(self) -> str | None:
user = self.user
group = StaffGroup.objects.filter(group=user.groups.all().first()).get()
if group:
return f'{group.get_absolute_url()}#{user.username}'
return None
- def __str__(self):
+ def __str__(self) -> str:
return f"{self.user}"
@@ -114,7 +114,7 @@ class Meta:
ordering = ('created',)
get_latest_by = 'created'
- def __str__(self):
+ def __str__(self) -> str:
return f'{self.owner.get_full_name()}, created {self.created}'
@@ -145,7 +145,7 @@ class Meta:
get_latest_by = 'created'
verbose_name = 'PGP signature'
- def __str__(self):
+ def __str__(self) -> str:
return f'{self.signer} → {self.signee}'
diff --git a/devel/reports.py b/devel/reports.py
index 7ff9c2ac..9cd3ff0f 100644
--- a/devel/reports.py
+++ b/devel/reports.py
@@ -20,7 +20,7 @@ def __init__(self, href, title, desc):
self.title = title
self.desc = desc
- def __str__(self):
+ def __str__(self) -> str:
return format_html('{desc}',
href=self.href, title=self.title, desc=self.desc)
diff --git a/devel/tests/test_pgp_import.py b/devel/tests/test_pgp_import.py
index 54f8d0a8..4b47282b 100644
--- a/devel/tests/test_pgp_import.py
+++ b/devel/tests/test_pgp_import.py
@@ -18,7 +18,7 @@
]
-def test_pgp_import_error():
+def test_pgp_import_error() -> None:
with pytest.raises(CommandError) as e:
call_command('pgp_import')
assert 'keyring_path' in str(e)
diff --git a/devel/tests/test_reports.py b/devel/tests/test_reports.py
index c942c5dd..b5707f45 100644
--- a/devel/tests/test_reports.py
+++ b/devel/tests/test_reports.py
@@ -1,12 +1,15 @@
+from collections.abc import Generator
+
import pytest
from django.contrib.auth.models import User
+from django.test import Client
from devel.reports import Linkify
from packages.models import PackageRelation
@pytest.fixture
-def devel_client(client, arches, repos, package):
+def devel_client(client: Client, arches: None, repos: None, package: None) -> Generator[Client]:
password = 'test'
user = User.objects.create_superuser('admin',
'admin@archlinux.org',
@@ -21,57 +24,57 @@ def devel_client(client, arches, repos, package):
user.delete()
-def test_overview(devel_client):
+def test_overview(devel_client: Client) -> None:
response = devel_client.get('/devel/')
assert response.status_code == 200
-def test_reports_old(devel_client):
+def test_reports_old(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/old', follow=True)
assert response.status_code == 200
-def test_reports_outofdate(devel_client):
+def test_reports_outofdate(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/long-out-of-date', follow=True)
assert response.status_code == 200
-def test_reports_big(devel_client):
+def test_reports_big(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/big', follow=True)
assert response.status_code == 200
-def test_reports_badcompression(devel_client):
+def test_reports_badcompression(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/badcompression', follow=True)
assert response.status_code == 200
-def test_reports_uncompressed_man(devel_client):
+def test_reports_uncompressed_man(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/uncompressed-man', follow=True)
assert response.status_code == 200
-def test_reports_uncompressed_info(devel_client):
+def test_reports_uncompressed_info(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/uncompressed-info', follow=True)
assert response.status_code == 200
-def test_reports_unneeded_orphans(devel_client):
+def test_reports_unneeded_orphans(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/unneeded-orphans', follow=True)
assert response.status_code == 200
-def test_reports_mismatched_signature(devel_client):
+def test_reports_mismatched_signature(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/mismatched-signature', follow=True)
assert response.status_code == 200
-def test_reports_signature_time(devel_client):
+def test_reports_signature_time(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/signature-time', follow=True)
assert response.status_code == 200
-def test_reports_pkgbases(devel_client):
+def test_reports_pkgbases(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/old/pkgbases/')
assert response.status_code == 200
assert response['Content-Type'] == 'text/plain'
@@ -83,12 +86,12 @@ def test_reports_pkgbases_with_username(devel_client):
assert response['Content-Type'] == 'text/plain'
-def test_reports_pkgbases_invalid_report(devel_client):
+def test_reports_pkgbases_invalid_report(devel_client: Client) -> None:
response = devel_client.get('/devel/reports/nonexistent/pkgbases/')
assert response.status_code == 404
-def test_report_filtered_by_maintainer(devel_client):
+def test_report_filtered_by_maintainer(devel_client: Client) -> None:
user = User.objects.get(username='admin')
PackageRelation.objects.create(
pkgbase='linux',
@@ -104,7 +107,7 @@ def test_report_filtered_by_maintainer(devel_client):
assert pkgbases == {'linux'}
-def test_report_pkgbases_filtered_by_maintainer(devel_client):
+def test_report_pkgbases_filtered_by_maintainer(devel_client: Client) -> None:
user = User.objects.get(username='admin')
PackageRelation.objects.create(
pkgbase='linux',
@@ -118,7 +121,7 @@ def test_report_pkgbases_filtered_by_maintainer(devel_client):
assert response.content.decode().strip() == 'linux'
-def test_linkify_escapes_html():
+def test_linkify_escapes_html() -> None:
link = Linkify(href='">', title='
', desc='xss')
result = str(link)
assert '