Skip to content

Commit

Permalink
Merge pull request #2778 from nicolargo/2777-make-pydantic-dep-optional
Browse files Browse the repository at this point in the history
chg: event_list - enable data validation only if pydantic available
  • Loading branch information
RazCrimson committed May 16, 2024
2 parents 6583109 + 98f2bb7 commit 396e78c
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 4 deletions.
8 changes: 7 additions & 1 deletion glances/event.py
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
4 changes: 2 additions & 2 deletions glances/events_list.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -201,7 +201,7 @@ def set_min_interval(self, min_interval):

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."""
Expand Down
1 change: 1 addition & 0 deletions optional-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ podman; python_version >= "3.6"
potsdb
prometheus_client
pycouchdb
pydantic
pygal
pymdstat
pymongo; python_version >= "3.7"
Expand Down
1 change: 0 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,3 @@ psutil>=5.6.7
defusedxml
packaging
ujson>=5.4.0
pydantic>=2.0.0

0 comments on commit 396e78c

Please sign in to comment.