From b0d94e039ff39d12b6e88a10530119d2f5c2cc1c Mon Sep 17 00:00:00 2001
From: Alexandra Hobbs <ahobbs@contractor.usgs.gov>
Date: Wed, 13 Nov 2024 08:22:32 -0700
Subject: [PATCH] cleanup warnings

---
 geomagio/api/secure/login.py            |  2 +-
 geomagio/metadata/Metadata.py           |  2 +-
 geomagio/metadata/MetadataFactory.py    |  2 +-
 geomagio/metadata/MetadataQuery.py      |  2 +-
 geomagio/metadata/flag/Flag.py          |  4 ++--
 geomagio/processing/affine_matrix.py    |  2 +-
 geomagio/processing/copy_observatory.py |  2 +-
 geomagio/pydantic_utcdatetime.py        |  3 ---
 geomagio/residual/Calculation.py        |  2 +-
 test/pydantic_utcdatetime_test.py       | 10 +++++-----
 10 files changed, 14 insertions(+), 17 deletions(-)

diff --git a/geomagio/api/secure/login.py b/geomagio/api/secure/login.py
index 9e77de815..f76275d25 100644
--- a/geomagio/api/secure/login.py
+++ b/geomagio/api/secure/login.py
@@ -75,7 +75,7 @@ async def current_user(request: Request) -> Optional[User]:
     elif "Authorization" in request.headers:
         user = await get_gitlab_user(token=request.headers["Authorization"])
         if user is not None:
-            request.session["user"] = user.dict()
+            request.session["user"] = user.model_dump()
     return user
 
 
diff --git a/geomagio/metadata/Metadata.py b/geomagio/metadata/Metadata.py
index 5f61483af..c93a4ecf2 100644
--- a/geomagio/metadata/Metadata.py
+++ b/geomagio/metadata/Metadata.py
@@ -80,7 +80,7 @@ class Metadata(BaseModel):
     status: Optional[str] = None
 
     def datetime_dict(self, **kwargs):
-        values = self.dict(**kwargs)
+        values = self.model_dump(**kwargs)
         for key in ["created_time", "updated_time", "starttime", "endtime"]:
             if key in values and values[key] is not None:
                 values[key] = values[key].datetime.replace(tzinfo=timezone.utc)
diff --git a/geomagio/metadata/MetadataFactory.py b/geomagio/metadata/MetadataFactory.py
index 0c1a902a2..6b136013f 100644
--- a/geomagio/metadata/MetadataFactory.py
+++ b/geomagio/metadata/MetadataFactory.py
@@ -204,7 +204,7 @@ def parse_params(query: MetadataQuery) -> str:
         dict:
             A dictionary of parameters formatted for the API request.
     """
-    query = query.dict(exclude_none=True)
+    query = query.model_dump(exclude_none=True)
     args = {}
     for key in query.keys():
         element = query[key]
diff --git a/geomagio/metadata/MetadataQuery.py b/geomagio/metadata/MetadataQuery.py
index 7d4ac301e..c3ae84856 100644
--- a/geomagio/metadata/MetadataQuery.py
+++ b/geomagio/metadata/MetadataQuery.py
@@ -24,7 +24,7 @@ class MetadataQuery(BaseModel):
     status: Optional[List[str]] = None
 
     def datetime_dict(self, **kwargs):
-        values = self.dict(**kwargs)
+        values = self.model_dump(**kwargs)
         for key in ["starttime", "endtime", "created_after", "created_before"]:
             if key in values and values[key] is not None:
                 values[key] = values[key].datetime.replace(tzinfo=timezone.utc)
diff --git a/geomagio/metadata/flag/Flag.py b/geomagio/metadata/flag/Flag.py
index 12d190b17..a493d98c3 100644
--- a/geomagio/metadata/flag/Flag.py
+++ b/geomagio/metadata/flag/Flag.py
@@ -185,5 +185,5 @@ geomagnetic_storm_data = {
 spike_instance = ArtificialDisturbance(**spikes_data)
 offset_instance = ArtificialDisturbance(**offset_data)
 
-print(spike_instance.dict())
-print(offset_instance.dict())
+print(spike_instance.model_dump())
+print(offset_instance.model_dump())
diff --git a/geomagio/processing/affine_matrix.py b/geomagio/processing/affine_matrix.py
index 51c8746a5..e0957761e 100644
--- a/geomagio/processing/affine_matrix.py
+++ b/geomagio/processing/affine_matrix.py
@@ -79,7 +79,7 @@ def generate_matrix(
             metadata=Metadata(
                 station=observatory,
                 created_by="generate_matrix",
-                metadata=result.dict(),
+                metadata=result.model_dump(),
                 starttime=result.starttime,
                 endtime=result.endtime,
                 network="NT",
diff --git a/geomagio/processing/copy_observatory.py b/geomagio/processing/copy_observatory.py
index 331418eef..8e2097d6f 100644
--- a/geomagio/processing/copy_observatory.py
+++ b/geomagio/processing/copy_observatory.py
@@ -82,7 +82,7 @@ def create_observatory_metadata(observatory, created_by_label: str) -> Metadata:
         created_by=created_by_label,
         network=network,
         station=observatory.id,
-        metadata=observatory.dict(),
+        metadata=observatory.model_dump(),
     )
     return metadata
 
diff --git a/geomagio/pydantic_utcdatetime.py b/geomagio/pydantic_utcdatetime.py
index 6d6b56b1e..a923b2bb9 100644
--- a/geomagio/pydantic_utcdatetime.py
+++ b/geomagio/pydantic_utcdatetime.py
@@ -8,9 +8,6 @@ from typing import Annotated, Any
 from pydantic import (
     GetCoreSchemaHandler,
     GetJsonSchemaHandler,
-    PydanticUserError,
-    TypeAdapter,
-    ValidationError,
 )
 
 from pydantic.json_schema import JsonSchemaValue
diff --git a/geomagio/residual/Calculation.py b/geomagio/residual/Calculation.py
index 7eb1ca1f0..d912d5810 100644
--- a/geomagio/residual/Calculation.py
+++ b/geomagio/residual/Calculation.py
@@ -134,7 +134,7 @@ def calculate(reading: Reading, adjust_reference: bool = True) -> Reading:
         diagnostics=diagnostics,
         scale_value=scale_value,
         # copy other attributes
-        **reading.dict(exclude={"absolutes", "diagnostics", "scale_value"}),
+        **reading.model_dump(exclude={"absolutes", "diagnostics", "scale_value"}),
     )
 
     return calculated
diff --git a/test/pydantic_utcdatetime_test.py b/test/pydantic_utcdatetime_test.py
index 0b4e37070..120bbabcf 100644
--- a/test/pydantic_utcdatetime_test.py
+++ b/test/pydantic_utcdatetime_test.py
@@ -7,24 +7,24 @@ from numpy.testing import assert_equal
 from geomagio.pydantic_utcdatetime import CustomUTCDateTimeType
 
 
-class TestClass(BaseModel):
+class TimeClass(BaseModel):
     starttime: CustomUTCDateTimeType
 
 
 def test_UTCDateTime_string():
-    t = TestClass(starttime="2024-11-05T00:00:00.00Z")
+    t = TimeClass(starttime="2024-11-05T00:00:00.00Z")
 
     assert_equal(t.starttime, UTCDateTime(2024, 11, 5, 0, 0))
 
 
 def test_UTCDateTime_timestamp():
-    t = TestClass(starttime=datetime.datetime(2024, 11, 5, tzinfo=tz.tzutc()))
+    t = TimeClass(starttime=datetime.datetime(2024, 11, 5, tzinfo=tz.tzutc()))
 
     assert_equal(t.starttime, UTCDateTime(2024, 11, 5, 0, 0))
 
 
 def test_UTCDateTime_unix_timestamp():
-    t = TestClass(starttime=1730764800)
+    t = TimeClass(starttime=1730764800)
 
     assert_equal(t.starttime, UTCDateTime(2024, 11, 5, 0, 0))
 
@@ -32,7 +32,7 @@ def test_UTCDateTime_unix_timestamp():
 def test_invalid():
     t = None
     try:
-        t = TestClass(starttime="November 8th 2024 12:00pm")
+        t = TimeClass(starttime="November 8th 2024 12:00pm")
     except Exception as e:
         err = e.errors()
         assert "Input should be an instance of UTCDateTime" == err[0]["msg"]
-- 
GitLab