refactor: streamline tracing condition checks and clean up deprecated warnings (#3358)

This commit simplifies the conditions for enabling tracing in both the Crew and Flow classes by removing the redundant call to `on_first_execution_tracing_confirmation()`. Additionally, it removes deprecated warning filters related to Pydantic in the KnowledgeStorage and RAGStorage classes, improving code clarity and maintainability.
This commit is contained in:
Lorenze Jay
2025-08-18 19:56:00 -07:00
committed by GitHub
parent 6068fe941f
commit d743e12a06
4 changed files with 13 additions and 20 deletions

View File

@@ -79,7 +79,6 @@ from crewai.utilities.events.listeners.tracing.trace_listener import (
from crewai.utilities.events.listeners.tracing.utils import (
is_tracing_enabled,
on_first_execution_tracing_confirmation,
)
from crewai.utilities.formatter import (
aggregate_raw_outputs_from_task_outputs,
@@ -287,11 +286,7 @@ class Crew(FlowTrackable, BaseModel):
self._cache_handler = CacheHandler()
event_listener = EventListener()
if (
on_first_execution_tracing_confirmation()
or is_tracing_enabled()
or self.tracing
):
if is_tracing_enabled() or self.tracing:
trace_listener = TraceCollectionListener()
trace_listener.setup_listeners(crewai_event_bus)
event_listener.verbose = self.verbose
@@ -505,7 +500,6 @@ class Crew(FlowTrackable, BaseModel):
)
return self
@property
def key(self) -> str:
source: List[str] = [agent.key for agent in self.agents] + [
@@ -1514,8 +1508,16 @@ class Crew(FlowTrackable, BaseModel):
ks.reset()
def _set_allow_crewai_trigger_context_for_first_task(self):
crewai_trigger_payload = self._inputs and self._inputs.get("crewai_trigger_payload")
able_to_inject = self.tasks and self.tasks[0].allow_crewai_trigger_context is None
crewai_trigger_payload = self._inputs and self._inputs.get(
"crewai_trigger_payload"
)
able_to_inject = (
self.tasks and self.tasks[0].allow_crewai_trigger_context is None
)
if self.process == Process.sequential and crewai_trigger_payload and able_to_inject:
if (
self.process == Process.sequential
and crewai_trigger_payload
and able_to_inject
):
self.tasks[0].allow_crewai_trigger_context = True

View File

@@ -40,7 +40,6 @@ from crewai.utilities.events.listeners.tracing.trace_listener import (
)
from crewai.utilities.events.listeners.tracing.utils import (
is_tracing_enabled,
on_first_execution_tracing_confirmation,
)
from crewai.utilities.printer import Printer
@@ -479,11 +478,7 @@ class Flow(Generic[T], metaclass=FlowMeta):
# Initialize state with initial values
self._state = self._create_initial_state()
self.tracing = tracing
if (
on_first_execution_tracing_confirmation()
or is_tracing_enabled()
or self.tracing
):
if is_tracing_enabled() or self.tracing:
trace_listener = TraceCollectionListener()
trace_listener.setup_listeners(crewai_event_bus)
# Apply any additional kwargs

View File

@@ -11,7 +11,6 @@ import chromadb.errors
from chromadb.api import ClientAPI
from chromadb.api.types import OneOrMany
from chromadb.config import Settings
from pydantic.warnings import PydanticDeprecatedSince211
import warnings
from crewai.knowledge.storage.base_knowledge_storage import BaseKnowledgeStorage
@@ -91,7 +90,6 @@ class KnowledgeStorage(BaseKnowledgeStorage):
# TODO: Remove this once we upgrade chromadb to at least 1.0.8.
warnings.filterwarnings(
"ignore",
category=PydanticDeprecatedSince211,
message=r".*'model_fields'.*is deprecated.*",
module=r"^chromadb(\.|$)",
)

View File

@@ -13,7 +13,6 @@ from crewai.utilities.chromadb import create_persistent_client
from crewai.utilities.constants import MAX_FILE_NAME_LENGTH
from crewai.utilities.paths import db_storage_path
import warnings
from pydantic.warnings import PydanticDeprecatedSince211
@contextlib.contextmanager
@@ -68,7 +67,6 @@ class RAGStorage(BaseRAGStorage):
# TODO: Remove this once we upgrade chromadb to at least 1.0.8.
warnings.filterwarnings(
"ignore",
category=PydanticDeprecatedSince211,
message=r".*'model_fields'.*is deprecated.*",
module=r"^chromadb(\.|$)",
)