mirror of
https://github.com/langflow-ai/langflow.git
synced 2026-07-23 21:48:22 +08:00
* Update test_exception_telemetry.py * Refactor unused variables in subprocess and test code Replaced unused variables 'stderr' and 'func' with underscores in subprocess communication and test telemetry code to clarify intent and avoid linting warnings. * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Use re.escape for exception match in tests Updated test cases to use re.escape for matching exception messages in pytest.raises, improving reliability when matching error strings containing special characters. Also replaced unused tuple variables with underscores for clarity. * Fix various ruff errors in lfx * Reorder pydantic imports in unit tests Moved pydantic imports below other imports for consistency and improved readability across multiple unit test files. * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Update test_directory_component.py * [autofix.ci] apply automated fixes * Update test_validate.py --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Eric Hare <ericrhare@gmail.com>
44 lines
1.7 KiB
Python
44 lines
1.7 KiB
Python
"""Script to update Langflow starter projects with the latest component versions."""
|
|
|
|
import asyncio
|
|
import os
|
|
|
|
import langflow.main # noqa: F401
|
|
from langflow.initial_setup.setup import (
|
|
get_project_data,
|
|
load_starter_projects,
|
|
update_edges_with_latest_component_versions,
|
|
update_project_file,
|
|
update_projects_components_with_latest_component_versions,
|
|
)
|
|
from langflow.services.utils import initialize_services
|
|
from lfx.interface.components import get_and_cache_all_types_dict
|
|
from lfx.services.deps import get_settings_service
|
|
|
|
|
|
async def main():
|
|
"""Updates the starter projects with the latest component versions.
|
|
|
|
Copies the code from langflow/initial_setup/setup.py. Doesn't use the
|
|
create_or_update_starter_projects function directly to avoid sql interactions.
|
|
"""
|
|
await initialize_services(fix_migration=False)
|
|
all_types_dict = await get_and_cache_all_types_dict(get_settings_service())
|
|
|
|
starter_projects = await load_starter_projects()
|
|
for project_path, project in starter_projects:
|
|
_, _, _, _, project_data, _, _, _, _ = get_project_data(project)
|
|
do_update_starter_projects = os.environ.get("LANGFLOW_UPDATE_STARTER_PROJECTS", "true").lower() == "true"
|
|
if do_update_starter_projects:
|
|
updated_project_data = update_projects_components_with_latest_component_versions(
|
|
project_data.copy(), all_types_dict
|
|
)
|
|
updated_project_data = update_edges_with_latest_component_versions(updated_project_data)
|
|
if updated_project_data != project_data:
|
|
project_data = updated_project_data
|
|
await update_project_file(project_path, project, updated_project_data)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main())
|