Skip to content

Commit af98c70

Browse files
committed
fix UP042 by using StrEnum
1 parent edbd1ad commit af98c70

File tree

28 files changed

+62
-62
lines changed

28 files changed

+62
-62
lines changed

api/core/app/app_config/entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from collections.abc import Sequence
2-
from enum import Enum
2+
from enum import Enum, StrEnum
33
from typing import Any, Optional
44

55
from pydantic import BaseModel, Field, field_validator
@@ -88,7 +88,7 @@ def value_of(cls, value: str):
8888
advanced_completion_prompt_template: Optional[AdvancedCompletionPromptTemplateEntity] = None
8989

9090

91-
class VariableEntityType(str, Enum):
91+
class VariableEntityType(StrEnum):
9292
TEXT_INPUT = "text-input"
9393
SELECT = "select"
9494
PARAGRAPH = "paragraph"

api/core/app/entities/queue_entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from datetime import datetime
2-
from enum import Enum
2+
from enum import Enum, StrEnum
33
from typing import Any, Optional
44

55
from pydantic import BaseModel, field_validator
@@ -11,7 +11,7 @@
1111
from core.workflow.nodes.base import BaseNodeData
1212

1313

14-
class QueueEvent(str, Enum):
14+
class QueueEvent(StrEnum):
1515
"""
1616
QueueEvent enum
1717
"""

api/core/file/enums.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class FileType(str, Enum):
4+
class FileType(StrEnum):
55
IMAGE = "image"
66
DOCUMENT = "document"
77
AUDIO = "audio"
@@ -16,7 +16,7 @@ def value_of(value):
1616
raise ValueError(f"No matching enum found for value '{value}'")
1717

1818

19-
class FileTransferMethod(str, Enum):
19+
class FileTransferMethod(StrEnum):
2020
REMOTE_URL = "remote_url"
2121
LOCAL_FILE = "local_file"
2222
TOOL_FILE = "tool_file"
@@ -29,7 +29,7 @@ def value_of(value):
2929
raise ValueError(f"No matching enum found for value '{value}'")
3030

3131

32-
class FileBelongsTo(str, Enum):
32+
class FileBelongsTo(StrEnum):
3333
USER = "user"
3434
ASSISTANT = "assistant"
3535

@@ -41,7 +41,7 @@ def value_of(value):
4141
raise ValueError(f"No matching enum found for value '{value}'")
4242

4343

44-
class FileAttribute(str, Enum):
44+
class FileAttribute(StrEnum):
4545
TYPE = "type"
4646
SIZE = "size"
4747
NAME = "name"
@@ -51,5 +51,5 @@ class FileAttribute(str, Enum):
5151
EXTENSION = "extension"
5252

5353

54-
class ArrayFileAttribute(str, Enum):
54+
class ArrayFileAttribute(StrEnum):
5555
LENGTH = "length"

api/core/helper/code_executor/code_executor.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import logging
2-
from enum import Enum
2+
from enum import StrEnum
33
from threading import Lock
44
from typing import Optional
55

@@ -30,7 +30,7 @@ class Data(BaseModel):
3030
data: Data
3131

3232

33-
class CodeLanguage(str, Enum):
33+
class CodeLanguage(StrEnum):
3434
PYTHON3 = "python3"
3535
JINJA2 = "jinja2"
3636
JAVASCRIPT = "javascript"

api/core/model_runtime/entities/message_entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from abc import ABC
2-
from enum import Enum
2+
from enum import Enum, StrEnum
33
from typing import Optional
44

55
from pydantic import BaseModel, Field, field_validator
@@ -86,7 +86,7 @@ class ImagePromptMessageContent(PromptMessageContent):
8686
Model class for image prompt message content.
8787
"""
8888

89-
class DETAIL(str, Enum):
89+
class DETAIL(StrEnum):
9090
LOW = "low"
9191
HIGH = "high"
9292

api/core/model_runtime/entities/model_entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from decimal import Decimal
2-
from enum import Enum
2+
from enum import Enum, StrEnum
33
from typing import Any, Optional
44

55
from pydantic import BaseModel, ConfigDict
@@ -89,7 +89,7 @@ class ModelFeature(Enum):
8989
STREAM_TOOL_CALL = "stream-tool-call"
9090

9191

92-
class DefaultParameterName(str, Enum):
92+
class DefaultParameterName(StrEnum):
9393
"""
9494
Enum class for parameter template variable.
9595
"""

api/core/ops/entities/trace_entity.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from datetime import datetime
2-
from enum import Enum
2+
from enum import StrEnum
33
from typing import Any, Optional, Union
44

55
from pydantic import BaseModel, ConfigDict, field_validator
@@ -111,7 +111,7 @@ class GenerateNameTraceInfo(BaseTraceInfo):
111111
}
112112

113113

114-
class TraceTaskName(str, Enum):
114+
class TraceTaskName(StrEnum):
115115
CONVERSATION_TRACE = "conversation"
116116
WORKFLOW_TRACE = "workflow"
117117
MESSAGE_TRACE = "message"

api/core/ops/langfuse_trace/entities/langfuse_trace_entity.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from datetime import datetime
2-
from enum import Enum
2+
from enum import StrEnum
33
from typing import Any, Optional, Union
44

55
from pydantic import BaseModel, ConfigDict, Field, field_validator
@@ -39,7 +39,7 @@ def validate_input_output(v, field_name):
3939
return v
4040

4141

42-
class LevelEnum(str, Enum):
42+
class LevelEnum(StrEnum):
4343
DEBUG = "DEBUG"
4444
WARNING = "WARNING"
4545
ERROR = "ERROR"
@@ -178,7 +178,7 @@ def ensure_dict(cls, v, info: ValidationInfo):
178178
return validate_input_output(v, field_name)
179179

180180

181-
class UnitEnum(str, Enum):
181+
class UnitEnum(StrEnum):
182182
CHARACTERS = "CHARACTERS"
183183
TOKENS = "TOKENS"
184184
SECONDS = "SECONDS"

api/core/ops/langsmith_trace/entities/langsmith_trace_entity.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from datetime import datetime
2-
from enum import Enum
2+
from enum import StrEnum
33
from typing import Any, Optional, Union
44

55
from pydantic import BaseModel, Field, field_validator
@@ -8,7 +8,7 @@
88
from core.ops.utils import replace_text_with_content
99

1010

11-
class LangSmithRunType(str, Enum):
11+
class LangSmithRunType(StrEnum):
1212
tool = "tool"
1313
chain = "chain"
1414
llm = "llm"

api/core/prompt/simple_prompt_transform.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
from core.file.models import File
2424

2525

26-
class ModelMode(str, enum.Enum):
26+
class ModelMode(enum.StrEnum):
2727
COMPLETION = "completion"
2828
CHAT = "chat"
2929

Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class KeyWordType(str, Enum):
4+
class KeyWordType(StrEnum):
55
JIEBA = "jieba"

api/core/rag/datasource/vdb/vector_type.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class VectorType(str, Enum):
4+
class VectorType(StrEnum):
55
ANALYTICDB = "analyticdb"
66
CHROMA = "chroma"
77
MILVUS = "milvus"

api/core/rag/rerank/rerank_type.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class RerankMode(str, Enum):
4+
class RerankMode(StrEnum):
55
RERANKING_MODEL = "reranking_model"
66
WEIGHTED_SCORE = "weighted_score"

api/core/tools/entities/tool_entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from enum import Enum
1+
from enum import Enum, StrEnum
22
from typing import Any, Optional, Union, cast
33

44
from pydantic import BaseModel, Field, field_validator
@@ -137,7 +137,7 @@ def transform_id_to_str(cls, value) -> str:
137137

138138

139139
class ToolParameter(BaseModel):
140-
class ToolParameterType(str, Enum):
140+
class ToolParameterType(StrEnum):
141141
STRING = "string"
142142
NUMBER = "number"
143143
BOOLEAN = "boolean"

api/core/tools/tool/tool.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from abc import ABC, abstractmethod
22
from collections.abc import Mapping
33
from copy import deepcopy
4-
from enum import Enum
4+
from enum import Enum, StrEnum
55
from typing import TYPE_CHECKING, Any, Optional, Union
66

77
from pydantic import BaseModel, ConfigDict, field_validator
@@ -62,7 +62,7 @@ def __init__(self, **data: Any):
6262
def __init__(self, **data: Any):
6363
super().__init__(**data)
6464

65-
class VariableKey(str, Enum):
65+
class VariableKey(StrEnum):
6666
IMAGE = "image"
6767
DOCUMENT = "document"
6868
VIDEO = "video"

api/core/variables/types.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class SegmentType(str, Enum):
4+
class SegmentType(StrEnum):
55
NONE = "none"
66
NUMBER = "number"
77
STRING = "string"

api/core/workflow/entities/node_entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from collections.abc import Mapping
2-
from enum import Enum
2+
from enum import StrEnum
33
from typing import Any, Optional
44

55
from pydantic import BaseModel
@@ -8,7 +8,7 @@
88
from models.workflow import WorkflowNodeExecutionStatus
99

1010

11-
class NodeRunMetadataKey(str, Enum):
11+
class NodeRunMetadataKey(StrEnum):
1212
"""
1313
Node Run Metadata Key.
1414
"""

api/core/workflow/enums.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class SystemVariableKey(str, Enum):
4+
class SystemVariableKey(StrEnum):
55
"""
66
System Variables.
77
"""

api/core/workflow/nodes/enums.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class NodeType(str, Enum):
4+
class NodeType(StrEnum):
55
START = "start"
66
END = "end"
77
ANSWER = "answer"

api/core/workflow/nodes/iteration/entities.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
from enum import Enum
1+
from enum import StrEnum
22
from typing import Any, Optional
33

44
from pydantic import Field
55

66
from core.workflow.nodes.base import BaseIterationNodeData, BaseIterationState, BaseNodeData
77

88

9-
class ErrorHandleMode(str, Enum):
9+
class ErrorHandleMode(StrEnum):
1010
TERMINATED = "terminated"
1111
CONTINUE_ON_ERROR = "continue-on-error"
1212
REMOVE_ABNORMAL_OUTPUT = "remove-abnormal-output"

api/core/workflow/nodes/variable_assigner/node_data.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
from collections.abc import Sequence
2-
from enum import Enum
2+
from enum import StrEnum
33
from typing import Optional
44

55
from core.workflow.nodes.base import BaseNodeData
66

77

8-
class WriteMode(str, Enum):
8+
class WriteMode(StrEnum):
99
OVER_WRITE = "over-write"
1010
APPEND = "append"
1111
CLEAR = "clear"

api/extensions/storage/storage_type.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class StorageType(str, Enum):
4+
class StorageType(StrEnum):
55
ALIYUN_OSS = "aliyun-oss"
66
AZURE_BLOB = "azure-blob"
77
BAIDU_OBS = "baidu-obs"

api/models/account.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from .types import StringUUID
99

1010

11-
class AccountStatus(str, enum.Enum):
11+
class AccountStatus(enum.StrEnum):
1212
PENDING = "pending"
1313
UNINITIALIZED = "uninitialized"
1414
ACTIVE = "active"
@@ -121,12 +121,12 @@ def is_dataset_operator(self):
121121
return self._current_tenant.current_role == TenantAccountRole.DATASET_OPERATOR
122122

123123

124-
class TenantStatus(str, enum.Enum):
124+
class TenantStatus(enum.StrEnum):
125125
NORMAL = "normal"
126126
ARCHIVE = "archive"
127127

128128

129-
class TenantAccountRole(str, enum.Enum):
129+
class TenantAccountRole(enum.StrEnum):
130130
OWNER = "owner"
131131
ADMIN = "admin"
132132
EDITOR = "editor"

api/models/dataset.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
from .types import StringUUID
2424

2525

26-
class DatasetPermissionEnum(str, enum.Enum):
26+
class DatasetPermissionEnum(enum.StrEnum):
2727
ONLY_ME = "only_me"
2828
ALL_TEAM = "all_team_members"
2929
PARTIAL_TEAM = "partial_members"

api/models/enums.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
from enum import Enum
1+
from enum import StrEnum
22

33

4-
class CreatedByRole(str, Enum):
4+
class CreatedByRole(StrEnum):
55
ACCOUNT = "account"
66
END_USER = "end_user"
77

88

9-
class UserFrom(str, Enum):
9+
class UserFrom(StrEnum):
1010
ACCOUNT = "account"
1111
END_USER = "end-user"
1212

1313

14-
class WorkflowRunTriggeredFrom(str, Enum):
14+
class WorkflowRunTriggeredFrom(StrEnum):
1515
DEBUGGING = "debugging"
1616
APP_RUN = "app-run"

0 commit comments

Comments
 (0)