From 497724f3a4e7298f37fe4b9b143c652f4f7794bc Mon Sep 17 00:00:00 2001 From: Shahar Yair Date: Thu, 12 Dec 2024 22:13:10 +0200 Subject: [PATCH] Fix: CrewJSONEncoder now accepts enums (#1752) * bugfix: CrewJSONEncoder now accepts enums * sort imports --------- Co-authored-by: Brandon Hancock (bhancock_ai) <109994880+bhancockio@users.noreply.github.com> --- src/crewai/utilities/crew_json_encoder.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/crewai/utilities/crew_json_encoder.py b/src/crewai/utilities/crew_json_encoder.py index 70c1e9274..298c9681a 100644 --- a/src/crewai/utilities/crew_json_encoder.py +++ b/src/crewai/utilities/crew_json_encoder.py @@ -1,6 +1,7 @@ import json from datetime import date, datetime from decimal import Decimal +from enum import Enum from uuid import UUID from pydantic import BaseModel @@ -10,7 +11,7 @@ class CrewJSONEncoder(json.JSONEncoder): def default(self, obj): if isinstance(obj, BaseModel): return self._handle_pydantic_model(obj) - elif isinstance(obj, UUID) or isinstance(obj, Decimal): + elif isinstance(obj, UUID) or isinstance(obj, Decimal) or isinstance(obj, Enum): return str(obj) elif isinstance(obj, datetime) or isinstance(obj, date):