aws / aws/amazon-redshift-python-driver
Building wheel from source and publishing source on pypi
- 主要言語
- Python
- スター
- 220
- フォーク
- 86
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
## Python version
3.11
## Problem description
We try to build wheels from source (and not use provided wheels).
```
pip uninstall redshift-connector -y && pip install --no-binary :all: redshift-connector==2.1.3 --index-url https://pypi.python.org/simple
ERROR: Could not find a version that satisfies the requirement redshift-connector==2.1.3 (from versions: none)
ERROR: No matching distribution found for redshift-connector==2.1.3
```
First problem is that https://pypi.org/project/redshift-connector/#files does not contain source distribution.
When trying to build it locally (the source distribution from git:
```
python -m build --sdist
pip wheel dist/redshift_connector-2.1.3.tar.gz
```
we get:
```
(.venv) ➜ amazon-redshift-python-driver git:(master) ✗ pip wheel dist/redshift_connector-2.1.3.tar.gz
Processing ./dist/redshift_connector-2.1.3.tar.gz
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [7 lines of output]
Traceback (most recent call last):
File "", line 2, in
File "", line 34, in
File "/private/var/folders/sj/1swnwb8n6tb_3cnl8zq6wgjh0000gn/T/pip-req-build-jhbghmqn/setup.py", line 107, in
install_requires=open("requirements.txt").read().strip().split("\n"),
^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
```
Adding to MANIFEST.in:
```
include requirements.txt
```
Solve the problem of building from source tar.gz.
## Reproduction code
```
git clone https://github.com/aws/amazon-redshift-python-driver.git
cd amazon-redshift-python-driver
python3.11 -m venv .venv
source .venv/bin/activate
pip install wheel build
python -m build --sdist
pip wheel dist/redshift_connector-2.1.3.tar.gz
```
コントリビューションガイド
調査の方向性
setup.py と MANIFEST.in を確認し、再現手順にある提供されたコマンド python -m build --sdist と pip wheel を実行します。生成されたソースアーカイブにメタデータ生成時に必要な依存関係ファイルが含まれていること、および pip wheel が正常に完了することを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- build-system
- issue の種類
- バグ
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 35/100