From 6549483b18e5d637c6e0672bb2de3b7cb608948d Mon Sep 17 00:00:00 2001 From: aitbc Date: Fri, 8 May 2026 19:22:34 +0200 Subject: [PATCH] fix: resolve datetime timezone error in marketplace service - Change created_at and submitted_at fields to use datetime.utcnow instead of datetime.now(timezone.utc) - Fixes TypeError: can't subtract offset-naive and offset-aware datetimes - Database column is TIMESTAMP WITHOUT TIME ZONE, so timezone-naive datetime is required --- .../src/marketplace_service/domain/marketplace.py | 6 +++--- .../src/marketplace_service/domain/marketplace.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/marketplace-service-debug/src/marketplace_service/domain/marketplace.py b/apps/marketplace-service-debug/src/marketplace_service/domain/marketplace.py index 50e60d4b..3959f963 100644 --- a/apps/marketplace-service-debug/src/marketplace_service/domain/marketplace.py +++ b/apps/marketplace-service-debug/src/marketplace_service/domain/marketplace.py @@ -1,6 +1,6 @@ from __future__ import annotations -from datetime import datetime, timezone +from datetime import datetime from uuid import uuid4 from sqlalchemy import JSON, Column @@ -17,7 +17,7 @@ class MarketplaceOffer(SQLModel, table=True): price: float = Field(default=0.0, nullable=False) sla: str = Field(default="") status: str = Field(default="open", max_length=20) - created_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc), nullable=False, index=True) + created_at: datetime = Field(default_factory=datetime.utcnow, nullable=False, index=True) attributes: dict = Field(default_factory=dict, sa_column=Column(JSON, nullable=False)) # GPU-specific fields gpu_model: str | None = Field(default=None, index=True) @@ -38,4 +38,4 @@ class MarketplaceBid(SQLModel, table=True): price: float = Field(default=0.0, nullable=False) notes: str | None = Field(default=None) status: str = Field(default="pending", nullable=False) - submitted_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc), nullable=False, index=True) + submitted_at: datetime = Field(default_factory=datetime.utcnow, nullable=False, index=True) diff --git a/apps/marketplace-service/src/marketplace_service/domain/marketplace.py b/apps/marketplace-service/src/marketplace_service/domain/marketplace.py index 50e60d4b..3959f963 100644 --- a/apps/marketplace-service/src/marketplace_service/domain/marketplace.py +++ b/apps/marketplace-service/src/marketplace_service/domain/marketplace.py @@ -1,6 +1,6 @@ from __future__ import annotations -from datetime import datetime, timezone +from datetime import datetime from uuid import uuid4 from sqlalchemy import JSON, Column @@ -17,7 +17,7 @@ class MarketplaceOffer(SQLModel, table=True): price: float = Field(default=0.0, nullable=False) sla: str = Field(default="") status: str = Field(default="open", max_length=20) - created_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc), nullable=False, index=True) + created_at: datetime = Field(default_factory=datetime.utcnow, nullable=False, index=True) attributes: dict = Field(default_factory=dict, sa_column=Column(JSON, nullable=False)) # GPU-specific fields gpu_model: str | None = Field(default=None, index=True) @@ -38,4 +38,4 @@ class MarketplaceBid(SQLModel, table=True): price: float = Field(default=0.0, nullable=False) notes: str | None = Field(default=None) status: str = Field(default="pending", nullable=False) - submitted_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc), nullable=False, index=True) + submitted_at: datetime = Field(default_factory=datetime.utcnow, nullable=False, index=True)