mirror of
https://github.com/langgenius/dify.git
synced 2026-05-20 08:46:57 +08:00
21 lines
736 B
Python
21 lines
736 B
Python
from packaging import version
|
|
|
|
from services.entities.dsl_entities import ImportStatus
|
|
|
|
|
|
def check_version_compatibility(imported_version: str, current_version: str) -> ImportStatus:
|
|
"""Determine DSL import status based on imported and current versions."""
|
|
try:
|
|
current_ver = version.parse(current_version)
|
|
imported_ver = version.parse(imported_version)
|
|
except version.InvalidVersion:
|
|
return ImportStatus.FAILED
|
|
|
|
if imported_ver > current_ver:
|
|
return ImportStatus.PENDING
|
|
if imported_ver.major < current_ver.major:
|
|
return ImportStatus.PENDING
|
|
if imported_ver.minor < current_ver.minor:
|
|
return ImportStatus.COMPLETED_WITH_WARNINGS
|
|
return ImportStatus.COMPLETED
|