Editable installation isn't working properly
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 1k
- Forks
- 203
- Merge moyen
- 1 h 20 min
- PR mergées (30 j)
- 2
Description
If pyperformance is installed as editable pip install -e . from the git repository, it doesn't work when invoked
$ /tmp/tmpdir/prefix/bin/python3 -u -m pyperformance
ERROR: pyperformance should not be run without installing first
(consider using the dev.py script)
The check is done by is_installed() which calls both _is_dev() and _is_devel_install() which are both broken.
The function is_dev() bases the logic on the presence of setup.py which is long gone.
The function _is_devel_install() instead check the presence of pyperformance.egg-link in the site-packages.
In my installation I have:
pyperformance.egg-infodirectory in the git repository__editable___pyperformance_1_0_9_finder.py,__editable__.pyperformance-1.0.9.pth,pyperformance-1.0.9.dist-infoin the site-packages
I'm trying to invoke pyperformance using a dev instance via
python3.12 /work/oss/repos/pyperformance/dev.py compile_all benchmark.conf
and it will fail eventually:
2023-10-19 15:25:52,049: Building wheels for collected packages: pyperformance
2023-10-19 15:25:52,050: Building editable for pyperformance (pyproject.toml): started
2023-10-19 15:25:52,885: Building editable for pyperformance (pyproject.toml): finished with status 'done'
2023-10-19 15:25:52,888: Created wheel for pyperformance: filename=pyperformance-1.0.9-0.editable-py3-none-any.whl size=6710 sha256=159fbc3f13ae47399e04d5f7cdf5e024c3652b2ed91096f8638844238e005c0d
2023-10-19 15:25:52,888: Stored in directory: /tmp/pip-ephem-wheel-cache-ubyuatck/wheels/0d/04/cb/add3bede8e376e8789c834f334f1834467606bde2625d5a4ad
2023-10-19 15:25:52,896: Successfully built pyperformance
2023-10-19 15:25:52,922: Installing collected packages: psutil, packaging, pyperf, pyperformance
2023-10-19 15:25:53,307: Successfully installed packaging-23.2 psutil-5.9.6 pyperf-2.6.1 pyperformance-1.0.9
2023-10-19 15:25:53,437: + /tmp/tmpdir/prefix/bin/python3 -u -m pyperformance venv recreate --venv /tmp/tmpdir/venv --benchmarks '<NONE>'
2023-10-19 15:25:53,514: ERROR: pyperformance should not be run without installing first
2023-10-19 15:25:53,515: (consider using the dev.py script)
2023-10-19 15:25:53,523: Command /tmp/tmpdir/prefix/bin/python3 -u -m pyperformance venv recreate --venv /tmp/tmpdir/venv --benchmarks '<NONE>' failed with exit code 1
2023-10-19 15:25:53,565: Command /work/oss/ENTLLT-6897/venv3.12/bin/python -m pyperformance compile /work/oss/repos/ci-scripts/projects/python/benchmark.conf be5e8a010341c4d2d28ef53a1baed402ee06466e main --no-update --no-tune failed with exit code 11
2023-10-19 15:25:53,565: Benchmark exit code: 11
2023-10-19 15:25:53,566: FAILED: main-be5e8a010341c4d2d28ef53a1baed402ee06466e
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez dans pyperformance/init.py, en particulier avec is_installed(), is_dev() et _is_devel_install(), puis examinez comment dev.py crée et invoque des installations modifiables. Reproduisez l’échec avec pip install -e . et python -m pyperformance. C’est terminé lorsque les installations modifiables passent la vérification de l’installation et que le flux de compilation de dev.py peut invoquer pyperformance avec succès.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- build-system
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100