--- glances/event.py 2024-05-15 17:20:23.000000000 +0800 +++ glances/event.py 2024-05-16 23:18:13.000000000 +0800 @@ -32,7 +32,13 @@ } """ -from pydantic.dataclasses import dataclass +from glances.logger import logger + +try: + from pydantic.dataclasses import dataclass +except ImportError as e: + logger.warning(f"Missing Python Lib ({e}), EventList will be skipping data validation") + from dataclasses import dataclass from glances.processes import sort_stats --- glances/events_list.py 2024-05-15 17:20:23.000000000 +0800 +++ glances/events_list.py 2024-05-16 23:16:49.000000000 +0800 @@ -11,7 +11,7 @@ import time from datetime import datetime -from pydantic import RootModel +from dataclasses import asdict from glances.processes import glances_processes from glances.thresholds import glances_thresholds @@ -201,7 +201,7 @@ def get(self): """Return the RAW events list.""" - return [RootModel[GlancesEvent](e).model_dump() for e in self.events_list] + return [asdict(e) for e in self.events_list] def len(self): """Return the number of events in the logs list.""" --- optional-requirements.txt 2024-05-15 17:20:23.000000000 +0800 +++ optional-requirements.txt 2024-05-16 23:16:04.000000000 +0800 @@ -22,6 +22,7 @@ potsdb prometheus_client pycouchdb +pydantic pygal pymdstat pymongo; python_version >= "3.7" --- requirements.txt 2024-05-15 17:20:23.000000000 +0800 +++ requirements.txt 2024-05-16 23:15:29.000000000 +0800 @@ -2,4 +2,3 @@ defusedxml packaging ujson>=5.4.0 -pydantic