Forces all from imports to appear on their own line

This commit is contained in:
Joakim Hellsén 2025-11-29 21:49:44 +01:00
commit 0400fed26a
No known key found for this signature in database
7 changed files with 57 additions and 23 deletions

View file

@ -4,10 +4,12 @@ from typing import TYPE_CHECKING
from django.conf import settings from django.conf import settings
from django.conf.urls.static import static from django.conf.urls.static import static
from django.urls import include, path from django.urls import include
from django.urls import path
if TYPE_CHECKING: if TYPE_CHECKING:
from django.urls.resolvers import URLPattern, URLResolver from django.urls.resolvers import URLPattern
from django.urls.resolvers import URLResolver
urlpatterns: list[URLResolver] | list[URLPattern | URLResolver] = [ # type: ignore[assignment] urlpatterns: list[URLResolver] | list[URLPattern | URLResolver] = [ # type: ignore[assignment]
path(route="", view=include("twitch.urls", namespace="twitch")), path(route="", view=include("twitch.urls", namespace="twitch")),

View file

@ -35,6 +35,7 @@ lint.unfixable = ["F841"]
lint.pydocstyle.convention = "google" lint.pydocstyle.convention = "google"
lint.isort.required-imports = ["from __future__ import annotations"] lint.isort.required-imports = ["from __future__ import annotations"]
lint.isort.force-single-line = true
lint.ignore = [ lint.ignore = [
"ANN002", # Checks that function *args arguments have type annotations. "ANN002", # Checks that function *args arguments have type annotations.

View file

@ -9,12 +9,16 @@ from django.utils import timezone
from django.utils.html import format_html from django.utils.html import format_html
from django.utils.safestring import SafeText from django.utils.safestring import SafeText
from twitch.models import DropCampaign, Game, Organization, TimeBasedDrop from twitch.models import DropCampaign
from twitch.models import Game
from twitch.models import Organization
from twitch.models import TimeBasedDrop
if TYPE_CHECKING: if TYPE_CHECKING:
import datetime import datetime
from django.db.models import Model, QuerySet from django.db.models import Model
from django.db.models import QuerySet
# MARK: /rss/organizations/ # MARK: /rss/organizations/

View file

@ -6,17 +6,28 @@ import threading
import traceback import traceback
from functools import lru_cache from functools import lru_cache
from pathlib import Path from pathlib import Path
from typing import TYPE_CHECKING, Any from typing import TYPE_CHECKING
from typing import Any
import dateparser import dateparser
import json_repair import json_repair
from django.core.exceptions import MultipleObjectsReturned from django.core.exceptions import MultipleObjectsReturned
from django.core.management.base import BaseCommand, CommandError, CommandParser from django.core.management.base import BaseCommand
from django.db import DatabaseError, IntegrityError, transaction from django.core.management.base import CommandError
from django.core.management.base import CommandParser
from django.db import DatabaseError
from django.db import IntegrityError
from django.db import transaction
from django.utils import timezone from django.utils import timezone
from tqdm import tqdm from tqdm import tqdm
from twitch.models import Channel, DropBenefit, DropBenefitEdge, DropCampaign, Game, Organization, TimeBasedDrop from twitch.models import Channel
from twitch.models import DropBenefit
from twitch.models import DropBenefitEdge
from twitch.models import DropCampaign
from twitch.models import Game
from twitch.models import Organization
from twitch.models import TimeBasedDrop
if TYPE_CHECKING: if TYPE_CHECKING:
from datetime import datetime from datetime import datetime

View file

@ -2,7 +2,8 @@
from __future__ import annotations from __future__ import annotations
import django.db.models.deletion import django.db.models.deletion
from django.db import migrations, models from django.db import migrations
from django.db import models
class Migration(migrations.Migration): class Migration(migrations.Migration):

View file

@ -5,11 +5,9 @@ from typing import TYPE_CHECKING
from django.urls import path from django.urls import path
from twitch import views from twitch import views
from twitch.feeds import ( from twitch.feeds import DropCampaignFeed
DropCampaignFeed, from twitch.feeds import GameFeed
GameFeed, from twitch.feeds import OrganizationFeed
OrganizationFeed,
)
if TYPE_CHECKING: if TYPE_CHECKING:
from django.urls.resolvers import URLPattern from django.urls.resolvers import URLPattern

View file

@ -3,27 +3,44 @@ from __future__ import annotations
import datetime import datetime
import json import json
import logging import logging
from collections import OrderedDict, defaultdict from collections import OrderedDict
from typing import TYPE_CHECKING, Any from collections import defaultdict
from typing import TYPE_CHECKING
from typing import Any
from django.contrib.postgres.search import SearchQuery, SearchRank, SearchVector from django.contrib.postgres.search import SearchQuery
from django.contrib.postgres.search import SearchRank
from django.contrib.postgres.search import SearchVector
from django.core.serializers import serialize from django.core.serializers import serialize
from django.db.models import BaseManager, Count, F, Model, Prefetch, Q from django.db.models import BaseManager
from django.db.models import Count
from django.db.models import F
from django.db.models import Model
from django.db.models import Prefetch
from django.db.models import Q
from django.db.models.functions import Trim from django.db.models.functions import Trim
from django.db.models.query import QuerySet from django.db.models.query import QuerySet
from django.http import HttpRequest, HttpResponse from django.http import HttpRequest
from django.http import HttpResponse
from django.shortcuts import render from django.shortcuts import render
from django.utils import timezone from django.utils import timezone
from django.views.generic import DetailView, ListView from django.views.generic import DetailView
from django.views.generic import ListView
from pygments import highlight from pygments import highlight
from pygments.formatters import HtmlFormatter from pygments.formatters import HtmlFormatter
from pygments.lexers.data import JsonLexer from pygments.lexers.data import JsonLexer
from twitch.models import Channel, DropBenefit, DropCampaign, Game, Organization, TimeBasedDrop from twitch.models import Channel
from twitch.models import DropBenefit
from twitch.models import DropCampaign
from twitch.models import Game
from twitch.models import Organization
from twitch.models import TimeBasedDrop
if TYPE_CHECKING: if TYPE_CHECKING:
from django.db.models import QuerySet from django.db.models import QuerySet
from django.http import HttpRequest, HttpResponse from django.http import HttpRequest
from django.http import HttpResponse
logger: logging.Logger = logging.getLogger(__name__) logger: logging.Logger = logging.getLogger(__name__)