diff --git a/cleancloud/providers/aws/rules/rds_idle.py b/cleancloud/providers/aws/rules/rds_idle.py index 83c3091..bc47c2e 100644 --- a/cleancloud/providers/aws/rules/rds_idle.py +++ b/cleancloud/providers/aws/rules/rds_idle.py @@ -1,5 +1,5 @@ from datetime import datetime, timedelta, timezone -from typing import List +from typing import List, Optional import boto3 from botocore.exceptions import ClientError @@ -236,7 +236,7 @@ def _estimate_monthly_cost(instance_class: str, multi_az: bool) -> str: return "Cost varies by instance class (region dependent)" -def _estimate_monthly_cost_usd(instance_class: str, multi_az: bool) -> float | None: +def _estimate_monthly_cost_usd(instance_class: str, multi_az: bool) -> Optional[float]: """Numeric monthly cost estimate for aggregation.""" cost_map = { "db.t3.micro": 12, diff --git a/cleancloud/providers/aws/session.py b/cleancloud/providers/aws/session.py index 343ebbe..38f18b9 100644 --- a/cleancloud/providers/aws/session.py +++ b/cleancloud/providers/aws/session.py @@ -1,8 +1,10 @@ +from typing import Optional + import boto3 from boto3.session import Session -def create_aws_session(profile: str | None, region: str) -> Session: +def create_aws_session(profile: Optional[str], region: str) -> Session: if profile: return boto3.Session(profile_name=profile, region_name=region) diff --git a/cleancloud/providers/azure/rules/sql_database_idle.py b/cleancloud/providers/azure/rules/sql_database_idle.py index f7484a4..b05ac1c 100644 --- a/cleancloud/providers/azure/rules/sql_database_idle.py +++ b/cleancloud/providers/azure/rules/sql_database_idle.py @@ -220,7 +220,7 @@ def _estimate_monthly_cost(sku_name: str) -> str: return "Cost varies by SKU (region dependent)" -def _estimate_monthly_cost_usd(sku_name: str) -> float | None: +def _estimate_monthly_cost_usd(sku_name: str) -> Optional[float]: """Numeric monthly cost estimate for aggregation.""" if not sku_name: return None