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 WalkthroughThis change deletes the old manual and shared cross-platform test workflows, introduces a unified and expanded cross-platform test workflow ( Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant GitHub Actions
participant Build Job
participant Test Matrix Job
participant Test Summary Job
User->>GitHub Actions: Trigger workflow (manual or programmatic)
alt Manual trigger
GitHub Actions->>Build Job: (if source install required)
else Programmatic trigger
GitHub Actions->>Build Job: (if source install required)
end
GitHub Actions->>Test Matrix Job: Start test jobs (matrix over OS/arch/Python)
Test Matrix Job->>GitHub Actions: Report results
GitHub Actions->>Test Summary Job: Run summary (depends on test jobs)
Test Summary Job->>User: Output test results
Estimated code review effort🎯 4 (Complex) | ⏱️ ~40 minutes Possibly related PRs
Suggested labels
Suggested reviewers
✨ Finishing Touches🧪 Generate unit tests
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
|
There was a problem hiding this comment.
Actionable comments posted: 0
🔭 Outside diff range comments (1)
.github/workflows/cross-platform-test.yml (1)
78-97: Base artifact may contain both wheels – build order/upload sequence.
adhoc-dist-baseis uploaded after the main package is built, so thedistdirectory already contains both wheels.
This defeats the purpose of having a dedicated “base” artifact and laterfind … | head -1could yield the wrong file.- - name: Build base package - run: make build_langflow_base args="--wheel" - - name: Build main package - run: make build_langflow args="--wheel" - - name: Upload base artifact + - name: Build base package + run: make build_langflow_base args="--wheel" + - name: Upload base artifact # upload immediately while dist is clean uses: actions/upload-artifact@v4 with: name: adhoc-dist-base path: /home/runner/work/langflow/langflow/dist + + - name: Clean dist for main package # avoid cross-contamination + run: rm -rf dist && mkdir dist + + - name: Build main package + run: make build_langflow args="--wheel" + - name: Upload main artifact
🧹 Nitpick comments (3)
.github/workflows/cross-platform-test.md (2)
3-4: Consistently capitalize “Langflow”.Company-wide docs guidance (see retrieved learnings) states we always capitalize “Langflow”. Please update the lower-case occurrences in these lines and elsewhere in the file for consistency and searchability.
Also applies to: 67-72
112-122: Add a language tag to the fenced block (MD040).markdownlint flags this block because it lacks a language spec.
textworks well for directory trees:-``` +```text cross-platform-test.yml ├── workflow_dispatch (Manual UI) ... -``` +```.github/workflows/cross-platform-test.yml (1)
357-368: Multiline Python -c block is fragile on Windowscmd.
cmdtreats the line breaks inside the double-quoted string unpredictably; the embedded newlines may truncate the command.Safer one-liner:
-test-env\Scripts\python.exe -c " -try: - import langflow - ... -" +test-env\Scripts\python.exe - <<'PY' +import sys, importlib +import langflow +print("✅ langflow import successful on %s" % sys.platform) +PY
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
.github/workflows/cross-platform-test-manual.yml(0 hunks).github/workflows/cross-platform-test-shared.yml(0 hunks).github/workflows/cross-platform-test.md(4 hunks).github/workflows/cross-platform-test.yml(2 hunks)
💤 Files with no reviewable changes (2)
- .github/workflows/cross-platform-test-manual.yml
- .github/workflows/cross-platform-test-shared.yml
🧰 Additional context used
🧠 Learnings (2)
.github/workflows/cross-platform-test.md (5)
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/docs_development.mdc:0-0
Timestamp: 2025-07-18T18:26:42.027Z
Learning: Applies to docs/docs/**/*.{md,mdx} : Use consistent terminology: always capitalize Langflow, Component, Flow, and uppercase API and JSON.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-07-21T14:16:14.125Z
Learning: Applies to src/backend/tests/**/*.py : Test flows using predefined JSON data and utility functions such as 'create_flow', 'build_flow', 'get_build_events', and 'consume_and_assert_stream' in backend Python tests.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/backend_development.mdc:0-0
Timestamp: 2025-07-18T18:25:54.487Z
Learning: Applies to src/backend/tests/unit/**/*.py : Test component integration within flows using create_flow, build_flow, and get_build_events utilities
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-07-21T14:16:14.125Z
Learning: Applies to src/backend/tests/**/*.py : Test Langflow's REST API endpoints in backend Python tests using the async client fixture and asserting response codes and payloads.
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-07-21T14:16:14.125Z
Learning: Applies to src/backend/tests/**/*.py : Test timeout and performance constraints in backend Python tests using 'asyncio.wait_for' and timing assertions.
.github/workflows/cross-platform-test.yml (2)
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/backend_development.mdc:0-0
Timestamp: 2025-07-18T18:25:54.487Z
Learning: Applies to src/backend/tests/unit/**/*.py : Test component integration within flows using create_flow, build_flow, and get_build_events utilities
Learnt from: CR
PR: langflow-ai/langflow#0
File: .cursor/rules/testing.mdc:0-0
Timestamp: 2025-07-21T14:16:14.125Z
Learning: Applies to src/backend/tests/**/*.py : Test flows using predefined JSON data and utility functions such as 'create_flow', 'build_flow', 'get_build_events', and 'consume_and_assert_stream' in backend Python tests.
🪛 markdownlint-cli2 (0.17.2)
.github/workflows/cross-platform-test.md
114-114: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (1)
.github/workflows/cross-platform-test.yml (1)
160-164: Verifyactions/setup-pythonARM64 support.
architecture: arm64is passed for macOS runners. Native arm64 support only landed recently and may still be in preview. If the runner image lacks the requested architecture you’ll get a “version not found” error.Run the workflow once on
macos-latest/arm64 to confirm 3.13 downloads successfully; fall back to Rosetta (x64) if it fails.



Summary by CodeRabbit