AOSSIE-Org / AOSSIE-Org/PictoPy

BUG: Missing 'requests' in requirements.txt causes ModuleNotFoundError in API utils

未关闭 适合新手
#1,533 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug enhancement
主要语言
Python
星标
284
派生
680
平均合并
7 天 5 小时
30 天内合并 PR
4

描述

In backend/app/utils/API.py, line 1 imports requests:
import requests
from app.config.settings import SYNC_MICROSERVICE_URL
However, requests is neither listed in backend/requirements.txt nor in PyInstaller's PictoPy.spec hiddenimports.
As a result, running tests (such as tests/test_folders.py) or invoking backend functions that trigger sync microservice restarts on a clean virtual environment fails with:
ModuleNotFoundError: No module named 'requests'

Steps to Reproduce

Set up a fresh virtual environment.
Install dependencies using pip install -r backend/requirements.txt.
Run pytest tests/test_folders.py.
Observe test collection failure due to ModuleNotFoundError: No module named 'requests'.

Proposed Solution

Since the project already standardizes on httpx (pinned in requirements.txt:73 and bundled in PictoPy.spec), we can either:
Refactor app/utils/API.py to use httpx.post() to keep dependencies minimal and consistent with the rest of the backend (similar to model_downloader.py).
Or explicitly add requests to requirements.txt and PictoPy.spec.
I've verified this locally and would love to be assigned to submit a clean PR with unit test coverage.

贡献指南

打开贡献指南

调研方向

Start with backend/app/utils/API.py and reproduce the clean-environment failure using backend/requirements.txt, then inspect PictoPy.spec and the existing httpx entry. Run pytest tests/test_folders.py to confirm the import problem and use the project’s dependency and packaging configuration to decide which supported approach fits. Done means dependency installation and packaging no longer leave the API utility import unresolved.

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
backend, build-system, testing
Issue 类型
缺陷
难度
2/5
预计耗时
1-3 小时
活跃度
活跃
描述清晰度
基本清楚
新手友好度
72/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。