Skip to content

fix(ragfs): load Windows abi3 pyd artifact#1801

Merged
ZaynJarvis merged 1 commit intomainfrom
fix/windows-ragfs-python-pyd
Apr 29, 2026
Merged

fix(ragfs): load Windows abi3 pyd artifact#1801
ZaynJarvis merged 1 commit intomainfrom
fix/windows-ragfs-python-pyd

Conversation

@qin-ctx
Copy link
Copy Markdown
Collaborator

@qin-ctx qin-ctx commented Apr 29, 2026

Description

修复 Windows wheel 构建中 ragfs Python binding 提取失败的问题。PR #1756 将 loader 和打包逻辑收紧到 stable ABI artifact,方向正确,但 Windows 的 maturin abi3 wheel 内部扩展文件名通常是 ragfs_python.pyd,不是 ragfs_python.abi3.pyd,导致构建成功后被误判为缺失。

本 PR 保留“不加载 cpython-specific 旧产物”的原则,同时允许 Windows stable ABI exact artifact ragfs_python.pyd 被打包和加载。

Related Issue

N/A

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality not to work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test update

Changes Made

  • 允许 setup.py 从 maturin wheel 中提取 Windows stable ABI artifact ragfs_python.pyd
  • 更新 openviking.pyagfs loader,在 Windows 优先查找 ragfs_python.pyd,并继续兼容 ragfs_python.abi3.pyd
  • 新增回归测试,覆盖 Windows ragfs_python.pyd 加载路径和打包提取规则。

Testing

  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • I have tested this on the following platforms:
    • Linux
    • macOS
    • Windows

已执行:

  • .venv/bin/python -m pytest tests/misc/test_abi3_packaging_config.py tests/misc/test_pyagfs_loader.py -q
  • git diff --check

Checklist

  • My code follows the project's coding style
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

Screenshots (if applicable)

N/A

Additional Notes

本地 pre-commit hook 绑定的系统 Python 缺少 pre_commit 模块,因此提交使用了 --no-verify;已手动运行相关 pytest 和 git diff --check。targeted pytest 仍会输出仓库已有的 Pydantic/requests warnings,与本次改动无关。

@github-actions
Copy link
Copy Markdown

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

🎫 Ticket compliance analysis ✅

1756 - Fully compliant

Compliant requirements:

  • Fix Windows wheel build to extract and load maturin's abi3 artifact
  • Add tests for Windows abi3 pyd loading and extraction
  • Maintain ignore logic for cpython-specific artifacts
⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
🏅 Score: 95
🧪 PR contains tests
🔒 No security concerns identified
✅ No TODO sections
🔀 No multiple PR themes
⚡ No major issues detected

@github-actions
Copy link
Copy Markdown

PR Code Suggestions ✨

No code suggestions found for the PR.

Copy link
Copy Markdown
Collaborator

@ZaynJarvis ZaynJarvis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm

@ZaynJarvis ZaynJarvis merged commit 964998d into main Apr 29, 2026
22 of 23 checks passed
@ZaynJarvis ZaynJarvis deleted the fix/windows-ragfs-python-pyd branch April 29, 2026 12:10
@github-project-automation github-project-automation Bot moved this from Backlog to Done in OpenViking project Apr 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants