fix: Suppress SIGSEGV errors on startup#10849
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughTwo changes across two files: A Logger.error method override in the server module filters SIGSEGV-related messages to debug level instead of error. A new unit test in test_cli.py validates the get_number_of_workers function behavior under mocked system conditions. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes
Pre-merge checks and finishing touchesImportant Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional. ❌ Failed checks (1 error, 2 warnings)
✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is
❌ Your patch status has failed because the patch coverage (25.00%) is below the target coverage (40.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #10849 +/- ##
==========================================
- Coverage 32.55% 32.54% -0.02%
==========================================
Files 1370 1370
Lines 63514 63517 +3
Branches 9391 9391
==========================================
- Hits 20678 20671 -7
- Misses 41797 41806 +9
- Partials 1039 1040 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
src/backend/tests/unit/test_cli.py (1)
151-161: Consider expanding test coverage for edge cases.The test correctly validates default and explicit worker count behavior. However, the implementation in
langflow.__main__.get_number_of_workers(lines 126-130) also handlesworkers == -1as a trigger for default behavior, which is not currently tested.Consider adding a test case for the
-1value:def test_get_number_of_workers(): """Test that get_number_of_workers uses cpu_count on Linux.""" with patch("langflow.__main__.platform.system", return_value="Linux"), \ patch("langflow.__main__.cpu_count", return_value=4): # Test default behavior (None) workers = get_number_of_workers(None) assert workers == (4 * 2) + 1 # 9 workers # Test -1 triggers default behavior workers = get_number_of_workers(-1) assert workers == (4 * 2) + 1 # 9 workers # Test explicit value is respected workers = get_number_of_workers(2) assert workers == 2
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
src/backend/base/langflow/server.py(1 hunks)src/backend/tests/unit/test_cli.py(2 hunks)
🧰 Additional context used
📓 Path-based instructions (4)
src/backend/**/*.py
📄 CodeRabbit inference engine (.cursor/rules/backend_development.mdc)
src/backend/**/*.py: Use FastAPI async patterns withawaitfor async operations in component execution methods
Useasyncio.create_task()for background tasks and implement proper cleanup with try/except forasyncio.CancelledError
Usequeue.put_nowait()for non-blocking queue operations andasyncio.wait_for()with timeouts for controlled get operations
Files:
src/backend/base/langflow/server.pysrc/backend/tests/unit/test_cli.py
src/backend/tests/**/*.py
📄 CodeRabbit inference engine (.cursor/rules/testing.mdc)
src/backend/tests/**/*.py: Place backend unit tests insrc/backend/tests/directory, component tests insrc/backend/tests/unit/components/organized by component subdirectory, and integration tests accessible viamake integration_tests
Use same filename as component with appropriate test prefix/suffix (e.g.,my_component.py→test_my_component.py)
Use theclientfixture (FastAPI Test Client) defined insrc/backend/tests/conftest.pyfor API tests; it provides an asynchttpx.AsyncClientwith automatic in-memory SQLite database and mocked environment variables. Skip client creation by marking test with@pytest.mark.noclient
Inherit from the correctComponentTestBasefamily class located insrc/backend/tests/base.pybased on API access needs:ComponentTestBase(no API),ComponentTestBaseWithClient(needs API), orComponentTestBaseWithoutClient(pure logic). Provide three required fixtures:component_class,default_kwargs, andfile_names_mapping
Create comprehensive unit tests for all new backend components. If unit tests are incomplete, create a corresponding Markdown file documenting manual testing steps and expected outcomes
Test both sync and async code paths, mock external dependencies appropriately, test error handling and edge cases, validate input/output behavior, and test component initialization and configuration
Use@pytest.mark.asynciodecorator for async component tests and ensure async methods are properly awaited
Test background tasks usingasyncio.create_task()and verify completion withasyncio.wait_for()with appropriate timeout constraints
Test queue operations using non-blockingqueue.put_nowait()andasyncio.wait_for(queue.get(), timeout=...)to verify queue processing without blocking
Use@pytest.mark.no_blockbustermarker to skip the blockbuster plugin in specific tests
For database tests that may fail in batch runs, run them sequentially usinguv run pytest src/backend/tests/unit/test_database.pyr...
Files:
src/backend/tests/unit/test_cli.py
**/{test_*.py,*.test.ts,*.test.tsx}
📄 CodeRabbit inference engine (Custom checks)
Check that test files follow the project's naming conventions (test_*.py for backend, *.test.ts for frontend)
Files:
src/backend/tests/unit/test_cli.py
**/test_*.py
📄 CodeRabbit inference engine (Custom checks)
**/test_*.py: Backend tests should follow pytest structure with proper test_*.py naming
For async functions, ensure proper async testing patterns are used with pytest for backend
Files:
src/backend/tests/unit/test_cli.py
🧬 Code graph analysis (1)
src/backend/tests/unit/test_cli.py (1)
src/backend/base/langflow/__main__.py (1)
get_number_of_workers(127-131)
🪛 GitHub Actions: Ruff Style Check
src/backend/tests/unit/test_cli.py
[error] 1-1: Ruff lint error: F401 'platform' imported but unused. Command: 'uv run --only-dev ruff check --output-format=github .'
🪛 GitHub Check: Ruff Style Check (3.13)
src/backend/tests/unit/test_cli.py
[failure] 1-1: Ruff (F401)
src/backend/tests/unit/test_cli.py:1:8: F401 platform imported but unused
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (16)
- GitHub Check: Test Docker Images / Test docker images
- GitHub Check: Lint Backend / Run Mypy (3.11)
- GitHub Check: Lint Backend / Run Mypy (3.12)
- GitHub Check: Lint Backend / Run Mypy (3.13)
- GitHub Check: Lint Backend / Run Mypy (3.10)
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 3
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 1
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 5
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 4
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 2
- GitHub Check: Run Backend Tests / LFX Tests - Python 3.10
- GitHub Check: Run Backend Tests / Integration Tests - Python 3.10
- GitHub Check: Test Starter Templates
- GitHub Check: Optimize new Python code in this PR
- GitHub Check: Update Starter Projects
- GitHub Check: Update Component Index
🔇 Additional comments (1)
src/backend/base/langflow/server.py (1)
53-61: LGTM! Error filtering implementation is sound.The override correctly filters SIGSEGV messages to debug level, reducing log noise while preserving other error messages. The string matching approach using
str(msg)is defensive and the method signature properly delegates*args, **kwargs.One minor consideration: this will suppress all SIGSEGV messages, which could potentially mask legitimate segmentation faults. However, the comment indicates these are "typically handled by worker restart" on macOS, suggesting this is an intentional trade-off for cleaner logs.
* fix: Suppress SIGSEGV errors * Update test_cli.py * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: Suppress SIGSEGV errors on startup (#10849) * fix: Suppress SIGSEGV errors * Update test_cli.py * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Update News Aggregator.json Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: Suppress SIGSEGV errors * Update test_cli.py * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* docs: update component links to individual pages (#10706) * Revert "Revert "docs: update component documentation links to individual pages"" This reverts commit 0bc27d6. * [autofix.ci] apply automated fixes * llm-selector-renamed * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Apply suggestions from code review * [autofix.ci] apply automated fixes * Apply suggestions from code review * [autofix.ci] apply automated fixes * rebuild-component-index * update-component-index * [autofix.ci] apply automated fixes * build-index * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: avoid updating Message if ChatOutput is connected to ChatInput (#10586) * fix: resolved merge conflict * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: create a new message to avoid mutating shared instances * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: resolved merge conflict * [autofix.ci] apply automated fixes * fix: resolved merge conflict * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: added a check for using exisiting message object * fix: remove unwanted import * fix: resolve merge conflict * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: add None checks to prevent errors * fix: resolve merge conflict * [autofix.ci] apply automated fixes * fix: backend unit test * fix: resolve merge conflict * [autofix.ci] apply automated fixes * fix: ruff styling errors * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Feat: Runflow optimization and improved dropdown behavior (#10720) * feat: optimize dropdown filtering and output resolution misc: remove commented out code feat: add refresh button and sort flows by updated_at date from most to least recent ruff (flow.py imports) improve fn contracts in runflow and improve flow id retrieval logic based on graph exec context add dynamic outputs and optimize db lookups add flow cache and db query for getting a single flow by id or name cache run outputs and add refresh context to build config misc misc use ids for flow retrieval misc fix missing flow_id bug add unit and integration tests add input field flag to persist hidden fields at runtime move unit tests and change input and output display names chore: update component index fix: fix tool mode when flow has multiple inputs by dynamically creating resolvers chore: update component index ruff (run_flow and tests) add resolvers to outputs map for non tool mode runtime fix tests (current flow excluded in db fetch) mypy (helpers/flow.py) chore: update component index remove unused code and clean up comments fix: persist user messages in chat-based flows via session injection chore: update component index empty string fallback for sessionid in chat.py chore: update component index chore: update component index cache invalidation with timestamps misc add cache invalidation chore: update component index chore: update comp idx ruff (run_flow.py) change session_id input type to MessageTextInput chore: update component index chore: update component index chore: update component index chore: update component index sync starter projects with main chore: update component index chore: update component index chore: update component index remove dead code + impl coderabbit suggestions chore: update component index chore: update component index clear options metadata before updating chore: update component index sync starter projects with main sync starter projects with main default param val (list flows) * chore: update component index * add integration tests * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) --------- Co-authored-by: Cristhian Zanforlin <criszl@192.168.15.88> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Add dynamic tool mode descriptions for agent integration (#10744) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Add profile picture management and API endpoints (#10763) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * deps: upgrade altk (#10804) upgrade altk: * fix: use running event loop to fix asyncio error when calling mcp tools (#10806) * use existing event loop instead of recreating when calling mcp tools * component index * [autofix.ci] apply automated fixes * starter projects * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Improve file processing robustness and error feedback (#10781) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: resolve merge conflict (#10831) * fix: fixed warning on console for nested button (#10724) (#10832) * removed unnecessary buttons on the flows page * added the asChild prop and hid button so they are not accessible by tabbing * added tab index to ensure that buttons as not selectable using the tab * made sure that accessibility is possible one bulk selection is enabled * made sure that accessibility is possible one bulk selection is enabled * Fix: added testcases and refactor * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes --------- Co-authored-by: Olayinka Adelakun <olayinkaadelakun@Olayinkas-MacBook-Pro.local> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: fixed warning on console (#10745) (#10830) * remove console warnings * [autofix.ci] apply automated fixes --------- Co-authored-by: Olayinka Adelakun <olayinkaadelakun@mac.war.can.ibm.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: mask value to hide null field being returned (#10778) (#10829) * fix: mask value to hide null field being returned * [autofix.ci] apply automated fixes * fix: added testcase and updated functionality --------- Co-authored-by: Olayinka Adelakun <olayinkaadelakun@mac.war.can.ibm.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com> Co-authored-by: Olayinka Adelakun <olayinkaadelakun@Olayinkas-MacBook-Pro.local> * Fix: Allow refresh list button to stay stagnant while zoom (Safari) (… (#10827) Fix: Allow refresh list button to stay stagnant while zoom (Safari) (#10777) * remove sticky as it was causing the refresh list to float on safari * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes --------- Co-authored-by: Olayinka Adelakun <olayinkaadelakun@mac.war.can.ibm.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * feat: Add superuser support for running any user flow (#10808) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Revert "feat: Add superuser support for running any user flow (#10808)" This reverts commit 423419e. * fix: Ollama models list in Agent component (#10814) * fix: Ollama model list fails to load in Agent and Ollama components * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Fix: Ensure Default Tab is Credential (#10779) (#10826) * fix: made sure the tab is visible * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Fix: added typing * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: added testcases * fix: added handleOnValue change function and created a helper file --------- Co-authored-by: Olayinka Adelakun <olayinkaadelakun@mac.war.can.ibm.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Olayinka Adelakun <olayinkaadelakun@Olayinkas-MacBook-Pro.local> Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com> * chore: update cuga version (#10737) (#10738) Co-authored-by: Sami Marreed <sami.marreed@ibm.com> * chore: Remove DataFrameToToolsetComponent and related tests (#10845) Remove DataFrameToToolsetComponent and related tests Deleted the DataFrameToToolsetComponent implementation, its import/registration in the processing module, and all associated unit tests. This cleans up unused code and test files related to converting DataFrame rows into toolset actions. * fix: Handle GCP JSON parsing credentials (#10859) fix: Proper parsing of GCP credentials JSON (#10828) * fix: Proper parsing of GCP credentials JSON * Update save_file.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update test_save_file_component.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Fix GCP issues * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Update test_save_file_component.py * Update save_file.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Update save_file.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update save_file.py * Fix ruff errors * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: anthropic constants (#10862) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Add feature flag check to simplified_run_flow_session (#10863) * fix: Improve the debugging messages on startup (#10864) * fix: Suppress SIGSEGV errors on startup (#10849) * fix: Suppress SIGSEGV errors * Update test_cli.py * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Update News Aggregator.json Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Don't fail if doc column is missing (#10746) (#10872) * fix: Don't fail if doc column is missing * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Surface warning message to the UI * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Update test_docling_utils.py * [autofix.ci] apply automated fixes * Update test_docling_utils.py --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * add x-api-key auth option * fix(auth): Disallow refresh token access to API endpoints * fix: Properly support the Batch Run component for watsonX models (#10877) * fix: Support Batch Run with watsonX (#10848) * fix: Support Batch Run with watsonX * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update batch_run.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Image upload for Gemini/Anthropic (#10880) * fix: Image upload for Gemini/Anthropic (#10867) * Fix image upload for Gemini/Anthropic and ChatOutput session_id preservation * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix ruff erros * [autofix.ci] apply automated fixes * resolve conflicts * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * build component index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) --------- Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com> * fix: Improve the default startup logging for readability (#10894) fix: Clean up the default startup logging (#10842) * fix: Clean up the default startup logging * [autofix.ci] apply automated fixes * Update manager.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Update test_security_cors.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com> * Fix: lfx serve aysncio event loop error (#10888) fix lfx serve asyncio event loop bug * fix: Update LangflowCounts component to format star and Discord counts (#10896) * fixed counts * fix: Update LangflowCounts component to format star and Discord counts --------- Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com> * Fix: update lfx serve tests to mock the .serve() to prevent hanging (#10905) port lfx serve test fix from main * Fix: lfx run agent _noopresult not iterable error (#10893) * fix _noopresult not iterable and session.add never awaited error and warning, respectively * just make the add stub sync * Fix: lfx run agent _noopresult not iterable error (#10911) * fix _noopresult not iterable and session.add never awaited error and warning, respectively * just make the add stub sync * the real final solution v3 * real solution v4 * revert * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Add graceful subprocess cleanup during shutdown (#10906) * add mcp cleanup function * refactor(mcp_cleanup.py): simplify error handling using contextlib.suppress to improve code readability test(mcp_cleanup.py): update tests to use context manager for patching to enhance clarity and maintainability --------- Co-authored-by: Adam Aghili <Adam.Aghili@ibm.com> * fix(workflows): include src/lfx/uv.lock in git add command to ensure all necessary files are tracked fix(Makefile): add --no-sources flag to uv build command for langflow_base to optimize build process * chore(nightly_build.yml): remove unnecessary directory change for lfx in nightly build workflow to streamline the process * chore(release_nightly): update build command to include --no-sources flag for Langflow Base CLI to ensure proper build configuration fix(Makefile): remove --no-sources from build_langflow_base to align with updated build command in release workflow * chore(chat.py): remove unused future annotations import to clean up code * fix(chat.py): add future annotations import for better type hinting support fix(deps.py): move certain imports outside TYPE_CHECKING for FastAPI compatibility and update type hinting for get_cache_service function * chore: print version * chore: use release_tag as version * fix: --prerelease=allow * fix: correctly raise file not found errors in File GET endpoints (#10922) fix: correctly raise file not found errors in File GET endpoints (#10908) * Clean up the file GET endpoints * Add test * [autofix.ci] apply automated fixes * ruff/mypy * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Fix issues with async * use uvlock from main * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Eric Hare <ericrhare@gmail.com> Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com> * fix: image pathing to operate with s3 storage (#10919) (#10929) * Fix image pathing to operate with s3 storage * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * add test * [autofix.ci] apply automated fixes * ruff * Add abstract method annotation * [autofix.ci] apply automated fixes * fix: use parse_file_path in get_files for S3 storage compatibility --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: himavarshagoutham <himavarshajan17@gmail.com> * Feat: migrate MCP transport from SSE to streamable http (#10934) * port #10727 * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * refactor(deps.py): reorganize imports for clarity and compliance with FastAPI requirements fix(deps.py): update return type of get_cache_service function to use Union for better type hinting * fix: update sidebar icon styles to maintain backward compatibility (#10948) * fix: Add empty input check in ALTKAgent for Anthropic (#10926) * fix: Add empty input check in ALTKAgent for Anthropic Shamelessly copies agent.py's empty input check to prevent Anthropic API errors. * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) --------- Co-authored-by: Jason Tsay <jason.tsay@ibm.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: add condition to not make folder download fail when flow has Note component (#10953) * fix: Enhance error handling for langchain-core version compatibility (#10768) * fix: Restrict message and session access to flow owners (#10973) * feat(monitor.py): add user flow filtering to message sessions and messages endpoints to enhance data access control refactor(monitor.py): remove dependencies from route decorators and pass current_user as a parameter for better clarity and maintainability * test: update message-related test fixtures to associate messages with user-specific flows This change ensures that messages created in tests are linked to a flow specific to the active user, allowing for better filtering and organization of messages in the database. It enhances the test environment by simulating real-world usage scenarios more accurately. * chore(monitor.py): reorder import statements to follow consistent structure and improve readability * Fix: lfx run with agent component throws '_NoopResult' object is not iterable' (#10914) * fix _noopresult not iterable and session.add never awaited error and warning, respectively * just make the add stub sync * the real final solution v3 * real solution v4 * revert * fix noopresult not iterable error and add was not awaited warning * do await check in aupdate_messages * [autofix.ci] apply automated fixes --------- Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Support tool mode for components that have no inputs (#10982) fix: Support tool mode in components without inputs (#10959) * fix: Support tool mode in components without inputs * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: (Cherry Pick) default Ollama base url (#10981) * fix: Properly set a default Ollama base url (#10940) * fix: Properly set a default Ollama base url * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Add authentication to various endpoints (#10977) (#10985) * fix: Add authentication to various endpoints (#10977) * fix: Add authentication to various endpoints * [autofix.ci] apply automated fixes * Couple more endpoints * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update log_router.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update mcp.py * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * Fix ruff errors * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update test_endpoints.py * Fix tests * Update Nvidia Remix.json * Update test_registration.py * [autofix.ci] apply automated fixes * Update test_files.py Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Address review comments Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Review updates Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Fix: ensure streamable-http session manager is entered and exited from the same task (#10991) * cherry pick #10966 * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Fix: cuga integration (#10976) (#10990) * Fix: cuga integration (#10976) * feat: upgrade cuga version * chore: add component index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: cuga component * chore: update index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * fix: upgrade cuga * fix: new component index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * chore: add component index * [autofix.ci] apply automated fixes * chore: update package * chore: update index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix: cuga relatetive temp * fix: update cuga * chore: add component index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * fix: remove space * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes --------- Co-authored-by: Sami Marreed <sami.marreed@ibm.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * test(webhook): add comprehensive tests for webhook endpoint functionality and error handling (#10995) * fix: Improve image path extraction and validation (#10999) * fix: make key generated on mcp json be shown, make placeholder show up if key not generated (#10997) * changed api key to show placeholder when api key is empty * changed useMcpServer to use generated api key if store api key is empty, add dependency to callback * [autofix.ci] apply automated fixes * Added tests * [autofix.ci] apply automated fixes * Update src/frontend/src/pages/MainPage/pages/homePage/hooks/useMcpServer.ts Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com> --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com> * Fix: disable mcp sse endpoints astra (#11004) * disable mcp sse transport endpoints in astra cloud * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com> * fix: mcp-proxy process leak (#11008) * fix: mcp-proxy process leak (#10988) * fix leak * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Move MCP client imports out of loop iteration in get_servers (#10993) * Initial plan * Move MCPStdioClient and MCPStreamableHttpClient imports to get_servers function Co-authored-by: phact <1313220+phact@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: phact <1313220+phact@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Edwin Jose <edwin.jose@datastax.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: phact <1313220+phact@users.noreply.github.com> Co-authored-by: Adam Aghili <Adam.Aghili@ibm.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: Sebastián Estévez <estevezsebastian@gmail.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Edwin Jose <edwin.jose@datastax.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: phact <1313220+phact@users.noreply.github.com> * feat: add build-nightly-ep to docker-nightly-build (#10942) * feat: add build-nightly-ep to docker-nightly-build add build-nightly-ep to docker-nightly-build * chore: update where langflow-nightly-ep is used update where langflow-nightly-ep is used to match update where langflow-nightly-all * chore: add nightly-main-ep to release_nightly add nightly-main-ep to call_docker_build_main_ep in release_nightly * chore: run what is already here * chore: revert .secrets.baseline and let it regen * fix(message.py): simplify file presence check using kwargs.get() for better readability and maintainability * fix: Disable Local storage option in Write File component for cloud environments (#11003) (#11022) * fix: Disable Local storage option in Write File component for cloud environments (#11003) * modify savefile component * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * component index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update src/lfx/src/lfx/components/files_and_knowledge/save_file.py Co-authored-by: Hamza Rashid <74062092+HzaRashid@users.noreply.github.com> * fix ruff errors * fix conflicts * resolve conflicts * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix indentation error * [autofix.ci] apply automated fixes * update options dynamically * build component index * [autofix.ci] apply automated fixes * fix ruff errors * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Hamza Rashid <74062092+HzaRashid@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Hamza Rashid <74062092+HzaRashid@users.noreply.github.com> * fix: cuga update (#11019) (#11026) * fix: update cuga version * chore: build index Co-authored-by: Sami Marreed <sami.marreed@ibm.com> * fix: langwatch traces all api endpoints (#11014) * create tracerprovider so langwatch doesnt pick up fastapi calls * move opentel sdk imports to the top * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Fix: improve exception handling and status code for disabled endpoints (#11012) * port #11011 * recover line from 1.7.0 * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix(deps): Pin langchain-mcp-adapters to resolve langchain-core compatibility (#11037) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: Make sure the research translation loop template is properly operating (#11042) * fix: Make sure loop inputs are properly handled in research (#11029) * fix: Make sure loop inputs are properly handled in research Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * Update reactflowUtils.ts Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Update reactflowUtils.ts Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Revert "Update reactflowUtils.ts" This reverts commit 9c8b1d1. * Revert "Update reactflowUtils.ts" This reverts commit 6be7ab9. * Fix template Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * Update Research Translation Loop.json Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Update reactflowUtils.ts Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --------- Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * Update Research Translation Loop.json Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * fix: disable knowledge components in astra (#11047) * cherry-pick #11046 * update component index * update component index again * fix: Advanced mode in read file component (#11041) (#11056) * fix: Advanced mode in read file component (#11041) * add a proper file path * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Update file.py Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * build component index * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * build component index * [autofix.ci] apply automated fixes * Fix incorrect use of .tempdir Co-Authored-By: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Eric Hare <ericrhare@gmail.com> * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Eric Hare <ericrhare@gmail.com> * fix: validate flow file_save path is in a valid location (#11060) fix: validate flow file_save path is in a valid location (#11039) * Validate flow file save path is in a valid location * clean up logic * fix tests * comments * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * fix backslash vuln * [autofix.ci] apply automated fixes * add storage service param to function in agentic utils * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Ruff errors * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * Resolve path in setup * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * [autofix.ci] apply automated fixes * [autofix.ci] apply automated fixes (attempt 2/3) * [autofix.ci] apply automated fixes (attempt 3/3) * comp index update * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Eric Hare <ericrhare@gmail.com> * refactor: Move fetch credentials to the customizations (#11049) (#11063) move fetch credentials to the customizations * fix: Fix async context handling in serve command and add integration tests (#10776) * refactor(tests): rename test IDs from helpersCreate List and logicPass to processingCreate List and flow_controlsPass for consistency and clarity in decision flow tests * refactor: Langflow cloud updates (#10910) * refactor: Use customization to get api base urls (#10871) * fixed counts * use customization to get api base urls --------- Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com> * refactor: add code sample customizations (#10884) * add code sample customizations * import cleanup * embedded widget generator --------- Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com> * fix: release workflow (#11087) * chore(release.yml): update release_lfx input description and make it optional to improve clarity feat(release.yml): add ensure-lfx-published job to automate LFX version check and publishing process to PyPI * chore: clean up release workflow comment out unneeded cross platform test and move steps around to match the already existing pattern --------- Co-authored-by: cristhianzl <cristhian.lousa@gmail.com> * Revert "fix: release workflow " (#11088) Revert "fix: release workflow (#11087)" This reverts commit b26d032. * fix: release workflow (#11089) * chore(release.yml): update release_lfx input description and make it optional to improve clarity feat(release.yml): add ensure-lfx-published job to automate LFX version check and publishing process to PyPI * chore: clean up release workflow comment out unneeded cross platform test and move steps around to match the already existing pattern * chore: remove test-lfx-cross-platform remove test-lfx-cross-platform * chore: address some of co-pilots comments address some of co-pilots comments --------- Co-authored-by: cristhianzl <cristhian.lousa@gmail.com> * fix: use langflow package path for database location (#11107) Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> * chore: bump versions for langflow 1.7.1, langflow-base 0.7.1, and lfx 0.2.1 (#11108) * chore: update version to 0.2.1 in pyproject.toml * bump version to 1.7.1 in package.json * chore: bump version to 0.7.1 and update lfx dependency to 0.2.1 in pyproject.toml * chore: bump versions for langflow, langflow-base, and lfx in pyproject.toml and uv.lock * regenarate lock based on release branch * new package-lock fixed * fix: regenerate package-lock.json with missing nested dependencies Adds canvas@2.11.2 (for rehype-mathjax) and yaml@2.8.2 (for tailwindcss) that were missing from the lock file causing npm ci to fail. --------- Co-authored-by: cristhianzl <cristhian.lousa@gmail.com> * test(regression): update test to use box selection for Combine Text nodes instead of Ctrl/Meta+click for better reliability in Playwright with ReactFlow * test(fileUploadComponent.spec.ts): increase timeout duration for file rename tests to ensure stability test(general-bugs-reset-flow-run.spec.ts): add wait time to improve reliability of component build checks * Template update * [autofix.ci] apply automated fixes * Fix test failures --------- Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: keval shah <kevalvirat@gmail.com> Co-authored-by: Hamza Rashid <74062092+HzaRashid@users.noreply.github.com> Co-authored-by: Cristhian Zanforlin <criszl@192.168.15.88> Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com> Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com> Co-authored-by: olayinkaadelakun <olayinka.adelakun@ibm.com> Co-authored-by: Olayinka Adelakun <olayinkaadelakun@Olayinkas-MacBook-Pro.local> Co-authored-by: Olayinka Adelakun <olayinkaadelakun@mac.war.can.ibm.com> Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com> Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com> Co-authored-by: Sami Marreed <sami.marreed@ibm.com> Co-authored-by: Edwin Jose <edwin.jose@datastax.com> Co-authored-by: Eric Hare <ericrhare@gmail.com> Co-authored-by: Mike Pawlowski <mpawlow@ca.ibm.com> Co-authored-by: Viktor Avelino <64113566+viktoravelino@users.noreply.github.com> Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com> Co-authored-by: himavarshagoutham <himavarshajan17@gmail.com> Co-authored-by: Jason Tsay <jason.tsay@ibm.com> Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com> Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org> Co-authored-by: Sebastián Estévez <estevezsebastian@gmail.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: phact <1313220+phact@users.noreply.github.com> Co-authored-by: Mike Fortman <michael.fortman@datastax.com>
This pull request introduces improvements to error handling in the server code and adds new unit tests for worker count logic in the CLI. The main changes are grouped into error handling enhancements and test coverage expansion.
Error handling enhancements:
errormethod in the server class (src/backend/base/langflow/server.py) to filter out "SIGSEGV" messages. These messages, common on macOS due to multiprocessing issues, are now logged at the debug level instead of error to reduce noise in error logs.Test coverage expansion:
platformandget_number_of_workersin the CLI test module to support new tests for worker count logic (src/backend/tests/unit/test_cli.py).get_number_of_workersto verify that it correctly uses CPU count on Linux and respects explicit worker values (src/backend/tests/unit/test_cli.py).Summary by CodeRabbit
Bug Fixes
New Features
✏️ Tip: You can customize this high-level summary in your review settings.