diff --git a/src/backend/base/langflow/components/nvidia/nvidia_ingest.py b/src/backend/base/langflow/components/nvidia/nvidia_ingest.py index 5d5673bdf..158339186 100644 --- a/src/backend/base/langflow/components/nvidia/nvidia_ingest.py +++ b/src/backend/base/langflow/components/nvidia/nvidia_ingest.py @@ -24,7 +24,7 @@ class NvidiaIngestComponent(Component): except ImportError: msg = ( "NVIDIA Ingest dependencies missing. " - "Please install them using your package manager. (e.g. uv sync --extra nv-ingest)" + "Please install them using your package manager. (e.g. uv pip install langflow[nv-ingest])" ) logger.warning(msg) file_types = [msg] @@ -126,7 +126,7 @@ class NvidiaIngestComponent(Component): except ImportError as e: msg = ( "NVIDIA Ingest dependencies missing. " - "Please install them using your package manager. (e.g. uv sync --extra nv-ingest)" + "Please install them using your package manager. (e.g. uv pip install langflow[nv-ingest])" ) raise ImportError(msg) from e diff --git a/src/backend/base/langflow/services/storage/local.py b/src/backend/base/langflow/services/storage/local.py index 72ad7e9f4..0344770ef 100644 --- a/src/backend/base/langflow/services/storage/local.py +++ b/src/backend/base/langflow/services/storage/local.py @@ -1,6 +1,3 @@ -import asyncio -from pathlib import Path - import anyio from aiofile import async_open from loguru import logger @@ -91,9 +88,8 @@ class LocalStorageService(StorageService): msg = f"Flow {flow_id} directory does not exist." raise FileNotFoundError(msg) - files = [ - file.name for file in await asyncio.to_thread(Path(folder_path).iterdir) if await anyio.Path(file).is_file() - ] + files = [file.name async for file in anyio.Path(folder_path).iterdir() if await anyio.Path(file).is_file()] + logger.info(f"Listed {len(files)} files in flow {flow_id}.") return files diff --git a/src/backend/tests/conftest.py b/src/backend/tests/conftest.py index 17bca1e1b..54ebac064 100644 --- a/src/backend/tests/conftest.py +++ b/src/backend/tests/conftest.py @@ -401,8 +401,9 @@ async def client_fixture( @pytest.fixture -def runner(): - return CliRunner() +def runner(tmp_path): + env = {"LANGFLOW_DATABASE_URL": f"sqlite:///{tmp_path}/test.db"} + return CliRunner(env=env) @pytest.fixture diff --git a/src/backend/tests/unit/api/v1/test_files.py b/src/backend/tests/unit/api/v1/test_files.py index bd749c0e4..c4a9574d2 100644 --- a/src/backend/tests/unit/api/v1/test_files.py +++ b/src/backend/tests/unit/api/v1/test_files.py @@ -199,7 +199,7 @@ async def test_list_files(files_client, files_created_api_key, files_flow): # Then list the files response = await files_client.get(f"api/v1/files/list/{files_flow.id}", headers=headers) - assert response.status_code == 200 + assert response.status_code == 200, f"Expected 200, got {response.status_code}: {response.json()}" files = response.json()["files"] assert len(files) == 1 assert files[0].endswith("test.txt") diff --git a/src/backend/tests/unit/graph/graph/test_cycles.py b/src/backend/tests/unit/graph/graph/test_cycles.py index 015e09836..4aaeb4fcf 100644 --- a/src/backend/tests/unit/graph/graph/test_cycles.py +++ b/src/backend/tests/unit/graph/graph/test_cycles.py @@ -144,6 +144,7 @@ def test_that_outputs_cache_is_set_to_false_in_cycle(): assert output.cache is True +@pytest.mark.skip(reason="Cycles should have a `allows_loop` Output to work.") @pytest.mark.skipif(not os.getenv("OPENAI_API_KEY"), reason="OpenAI API key required") def test_updated_graph_with_prompts(): # Chat input initialization @@ -212,6 +213,7 @@ def test_updated_graph_with_prompts(): assert "chat_output_1" in results_ids, f"Expected outputs not in results: {results_ids}" +@pytest.mark.skip(reason="Cycles should have a `allows_loop` Output to work.") @pytest.mark.skipif(not os.getenv("OPENAI_API_KEY"), reason="OpenAI API key required") def test_updated_graph_with_max_iterations(): # Chat input initialization