Skip to content

fix: auto-use qdrant-edge on Windows where lancedb has no wheels (#5045)#5113

Open
iris-clawd wants to merge 1 commit intomainfrom
fix/windows-lancedb-5045
Open

fix: auto-use qdrant-edge on Windows where lancedb has no wheels (#5045)#5113
iris-clawd wants to merge 1 commit intomainfrom
fix/windows-lancedb-5045

Conversation

@iris-clawd
Copy link
Copy Markdown
Contributor

@iris-clawd iris-clawd commented Mar 26, 2026

Problem

crewai install fails on Windows because lancedb (a hard dependency) does not publish Windows wheels — only Linux and macOS are supported.

Reported in #5045.

Solution

1. Platform-conditional dependency (pyproject.toml)

  • lancedb>=0.29.2 is now installed only on non-Windows platforms (sys_platform != "win32")
  • qdrant-edge-py>=0.6.0 is automatically installed on Windows (sys_platform == "win32")

2. Auto-detect default storage backend (unified_memory.py)

  • The Memory.storage field now defaults to "qdrant-edge" on Windows and "lancedb" everywhere else
  • This uses sys.platform at class definition time, so no runtime overhead

Changes

  • lib/crewai/pyproject.toml — make lancedb conditional, add qdrant-edge-py for Windows
  • lib/crewai/src/crewai/memory/unified_memory.py — import sys, change default storage to platform-aware

Notes

  • CrewAI already has full qdrant-edge storage support (qdrant_edge_storage.py), so this just wires it as the default on Windows
  • Users on Windows can still explicitly set storage="lancedb" if they install it manually
  • No behavior change on Linux or macOS

Closes #5045


Note

Medium Risk
Changes packaging and default memory backend selection on Windows, which can impact installation and persistence/recall behavior for Windows users. Non-Windows behavior should remain unchanged aside from dependency markers.

Overview
Fixes Windows installs by making the vector-store dependency platform-specific: lancedb is now excluded on win32 and qdrant-edge-py is installed instead.

Updates Memory in unified_memory.py to default storage to qdrant-edge on Windows (and lancedb elsewhere), aligning runtime defaults with the new dependency behavior.

Written by Cursor Bugbot for commit 181a621. This will update automatically on new commits. Configure here.

lancedb v0.30.x only ships wheels for Linux and macOS. On Windows,
`crewai install` fails because there is no compatible distribution.

This change:
- Makes lancedb a platform-conditional dependency (non-Windows only)
- Adds qdrant-edge-py as an automatic dependency on Windows
- Defaults Memory storage to qdrant-edge on Windows

Closes #5045
@alex-clawd alex-clawd force-pushed the fix/windows-lancedb-5045 branch from 4f29750 to 181a621 Compare April 2, 2026 20:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] Distribution `lancedb==0.30.1 can't be installed because it doesn't have a source distribution or wheel for the current platform

1 participant