Skip to content

Commit c575383

Browse files
committed
style: Fix import sorting to pass isort CI checks
- Sort imports in AI/ML module files following PEP8 standards - Fix import order in Cassandra database integration files - Correct import sorting in enhanced parsers and schemas - Sort imports in test files and orchestrator modules - Ensure all files pass both Black formatting and isort checks Resolves CI pipeline failure in Python 3.12 import validation
1 parent 49accb6 commit c575383

9 files changed

Lines changed: 37 additions & 34 deletions

File tree

src/ai/content_analyzer.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,23 @@
88
- Language detection and readability scoring
99
"""
1010

11+
import logging
1112
import re
1213
from datetime import datetime
13-
from typing import Dict, List, Optional, Any
14-
import logging
14+
from typing import Any, Dict, List, Optional
1515

1616
try:
17-
from langchain_core.prompts import PromptTemplate
18-
from langchain_core.output_parsers import PydanticOutputParser
19-
from langchain_community.llms import FakeListLLM
2017
from langchain.schema import BaseMessage, HumanMessage
18+
from langchain_community.llms import FakeListLLM
19+
from langchain_core.output_parsers import PydanticOutputParser
20+
from langchain_core.prompts import PromptTemplate
2121

2222
LANGCHAIN_AVAILABLE = True
2323
except ImportError:
2424
LANGCHAIN_AVAILABLE = False
2525

2626
from pydantic import BaseModel, Field
27+
2728
from src.core.logger import logger
2829
from src.schemas.news import NewsArticle
2930

src/database/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
"""
55

66
from .cassandra_manager import (
7-
CassandraManager,
87
CassandraConfig,
8+
CassandraManager,
99
create_cassandra_manager,
1010
)
1111

src/database/cassandra_manager.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,19 @@
33
Provides data persistence, deduplication, and seed management.
44
"""
55

6+
import asyncio
67
import hashlib
8+
import json
79
import uuid
10+
from dataclasses import dataclass
811
from datetime import datetime
912
from typing import Dict, List, Optional, Set
10-
from dataclasses import dataclass
11-
from cassandra.cluster import Cluster
13+
14+
import aiohttp
1215
from cassandra.auth import PlainTextAuthProvider
13-
from cassandra.query import SimpleStatement
14-
import asyncio
16+
from cassandra.cluster import Cluster
1517
from cassandra.io.asyncorereactor import AsyncoreConnection
16-
import aiohttp
17-
import json
18+
from cassandra.query import SimpleStatement
1819

1920
from src.core.logger import logger
2021
from src.schemas.news import NewsArticle

src/database/cassandra_parser_manager.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
Provides persistent storage, deduplication, and seed management.
44
"""
55

6-
from typing import Dict, List, Optional
76
from datetime import datetime
7+
from typing import Dict, List, Optional
88

9+
from src.core.logger import logger
910
from src.core.parser_manager import ParserManager as BaseParserManager
10-
from src.database.cassandra_manager import CassandraManager, CassandraConfig
11+
from src.database.cassandra_manager import CassandraConfig, CassandraManager
1112
from src.schemas.news import NewsArticle
12-
from src.core.logger import logger
1313

1414

1515
class CassandraParserManager(BaseParserManager):

src/main.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,10 @@
1212
# Add src to path for imports
1313
sys.path.insert(0, str(Path(__file__).parent))
1414

15-
from crawlee.playwright_crawler import PlaywrightCrawler
16-
17-
from src.core.logger import logger
18-
from src.core.parser_manager import ParserManager
19-
from src.core.parser_registry import create_parser_registry
20-
from src.core.proxy_config import create_proxy_configuration
21-
from src.core.seeds import resolve_seeds
22-
from src.routes import create_router
23-
2415
from crawlee import ConcurrencySettings, Request
2516
from crawlee.crawlers import PlaywrightCrawler
2617
from crawlee.fingerprint_suite import DefaultFingerprintGenerator
18+
from crawlee.playwright_crawler import PlaywrightCrawler
2719
from dotenv import load_dotenv
2820

2921
from core.logger import logger
@@ -32,6 +24,12 @@
3224
from core.proxy_config import create_proxy_configuration
3325
from core.seeds import resolve_seeds
3426
from routes import build_router
27+
from src.core.logger import logger
28+
from src.core.parser_manager import ParserManager
29+
from src.core.parser_registry import create_parser_registry
30+
from src.core.proxy_config import create_proxy_configuration
31+
from src.core.seeds import resolve_seeds
32+
from src.routes import create_router
3533

3634

3735
async def main() -> None:

src/orchestrator.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,19 @@
66
similar to AWS Step Functions + Batch but using pure K8s primitives.
77
"""
88

9+
import asyncio
10+
import json
11+
import logging
912
import os
1013
import sys
11-
import json
1214
import time
13-
import asyncio
14-
import logging
1515
from datetime import datetime
16-
from typing import List, Dict, Optional, Set
1716
from pathlib import Path
17+
from typing import Dict, List, Optional, Set
1818

1919
try:
20-
from kubernetes import client, config as k8s_config
20+
from kubernetes import client
21+
from kubernetes import config as k8s_config
2122
from kubernetes.client.rest import ApiException
2223
except ImportError:
2324
print("Kubernetes client not installed. Install with: pip install kubernetes")

src/parsers/ai_enhanced_news.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,14 @@
66
"""
77

88
from typing import Any, Dict, Optional
9+
910
from playwright.async_api import Page
1011

12+
from src.ai.content_analyzer import create_content_analyzer
1113
from src.core.base_parser import BaseParser
1214
from src.core.logger import logger
1315
from src.parsers.generic_news import GenericNewsParser
1416
from src.schemas.news import NewsArticle
15-
from src.ai.content_analyzer import create_content_analyzer
1617

1718

1819
class AIEnhancedNewsParser(GenericNewsParser):

src/schemas/news.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"""
44

55
from datetime import datetime
6-
from typing import Optional, List, Any, Dict
6+
from typing import Any, Dict, List, Optional
77

88
from pydantic import BaseModel, Field, HttpUrl
99

tests/test_cassandra_integration.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@
22
Tests for Cassandra database integration.
33
"""
44

5-
import pytest
65
import uuid
76
from datetime import datetime
8-
from unittest.mock import Mock, AsyncMock, patch
7+
from unittest.mock import AsyncMock, Mock, patch
8+
9+
import pytest
910

10-
from src.database.cassandra_manager import CassandraManager, CassandraConfig
11+
from src.database.cassandra_manager import CassandraConfig, CassandraManager
1112
from src.schemas.news import NewsArticle
1213

1314

0 commit comments

Comments
 (0)