Skip to content

Add GitHub URL and requirements file support for Python dependencies - #2888

Draft
whyour with Copilot wants to merge 5 commits into
developfrom
copilot/add-install-methods-module
Draft

Add GitHub URL and requirements file support for Python dependencies#2888
whyour with Copilot wants to merge 5 commits into
developfrom
copilot/add-install-methods-module

Conversation

Copilot AI commented Dec 27, 2025

Copy link
Copy Markdown
Contributor

Currently Python dependencies can only be installed by package name. Users need support for GitHub URLs and automatic dependency detection from subscription repositories.

Changes

Backend (back/config/util.ts)

  • Added getInstallCommand() logic to handle:
    • GitHub URLs: git+https://github.com/user/repo.git or https://github.com/user/repo/archive/main.zip
    • Requirements files: requirements.txt, requirements-dev.txt, requirements.in
    • pyproject.toml: installs from containing directory
  • Modified getGetCommand() to skip version checks for URLs and requirement files (prevents false install detection)
  • Extracted helper functions (isGitHubUrl(), isRequirementsFile(), isPyprojectToml()) for cleaner pattern matching

Shell (shell/update.sh)

  • Added auto_install_python_deps() to detect and auto-install from subscription repos
  • Copies requirements/pyproject files to scripts directory
  • Creates dependency tasks via API with error handling

Frontend (src/pages/dependence/modal.tsx)

  • Added dynamic tooltip and placeholder for Python dependencies
  • Updates based on selected dependency type

Example Usage

// Now supports:
name: "requests"                           // Package name (existing)
name: "git+https://github.com/user/repo.git"  // GitHub URL (new)
name: "path/to/requirements.txt"           // Requirements file (new)
name: "path/to/pyproject.toml"             // pyproject.toml (new)

When subscriptions update, requirements.txt and pyproject.toml are automatically detected and queued for installation.

Original prompt

This section details on the original issue you should resolve

<issue_title>希望Python模块添加更多的安装方法,而不是只能输入名称</issue_title>
<issue_description>### Clear and concise description of the problem

目前python订阅需要手动安装依赖,并且只能通过依赖名称进行安装。

Suggested solution

我希望运行订阅时可以自动安装订阅仓库中定义的依赖,并且可以通过其他方式安装。
1、可以通过github链接安装
2、识别订阅仓库中的 requirements.txt 或者 pyproject.toml 文件进行安装

Alternative

No response

Additional context

No response

Validations

  • Check that there isn't already an issue that request the same feature to avoid creating a duplicate.</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

@vercel

vercel Bot commented Dec 27, 2025

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
qinglong Ready Ready Preview, Comment Dec 27, 2025 8:53am
qinglong-back Ready Ready Preview, Comment Dec 27, 2025 8:53am

…cies

Co-authored-by: whyour <22700758+whyour@users.noreply.github.com>
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com>
Copilot AI and others added 2 commits December 27, 2025 08:49
…ling

Co-authored-by: whyour <22700758+whyour@users.noreply.github.com>
Co-authored-by: whyour <22700758+whyour@users.noreply.github.com>
Copilot AI changed the title [WIP] Add more installation methods for Python module Add GitHub URL and requirements file support for Python dependencies Dec 27, 2025
Copilot AI requested a review from whyour December 27, 2025 08:56
@whyour
whyour force-pushed the develop branch 7 times, most recently from 7539d75 to e8ac195 Compare June 1, 2026 10:20
@whyour
whyour force-pushed the develop branch 3 times, most recently from 33554bd to 23124c2 Compare June 14, 2026 13:15
@whyour
whyour force-pushed the develop branch 3 times, most recently from 7933fe0 to aa0f902 Compare June 21, 2026 04:12
@whyour
whyour force-pushed the develop branch 7 times, most recently from 0169ebf to d301643 Compare June 28, 2026 10:08
@whyour
whyour force-pushed the develop branch 4 times, most recently from 23a1835 to 4ebc049 Compare July 7, 2026 16:28
@whyour
whyour force-pushed the develop branch 2 times, most recently from 509b0d0 to da6dac8 Compare July 9, 2026 17:43
@whyour
whyour force-pushed the develop branch 8 times, most recently from 152a9aa to 92e4f26 Compare July 24, 2026 14:34
@whyour
whyour force-pushed the develop branch 3 times, most recently from 9b37f06 to 0bb41eb Compare July 25, 2026 05:29
@whyour
whyour force-pushed the develop branch 2 times, most recently from de65d7f to 5f6049d Compare August 29, 2026 11:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

希望Python模块添加更多的安装方法,而不是只能输入名称

2 participants