Я подписался на https://conda.io/docs/user-guide/tutorials/build-pkgs.html, чтобы создать мой первый (приватный) пакет Python. У меня его нет на PyPi, и я бы не хотел. Я понял, что проблема, с которой я сталкиваюсь, такая же, как с демонстрацией в связанном уроке. То есть я следую инструкциям, создаю meta.yaml
и build.bat
(пропуская .sh
только для Windows), перехожу в каталог с приглашением Anaconda и запускаю conda-build .
. Сообщение об ошибке следующее:
(base) C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\test_tmp>call "C:\ProgramData\Anaconda3\Scripts\activate.bat" "C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\_test_env"
(C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\_test_env) C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\test_tmp>IF 0 NEQ 0 exit 1
(C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\_test_env) C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\test_tmp>"C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\_test_env\python.exe" -s "C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\test_tmp\run_test.py"
import: 'pyinstrument'
Traceback (most recent call last):
File "C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\test_tmp\run_test.py", line 2, in <module>
import pyinstrument
ModuleNotFoundError: No module named 'pyinstrument'
(C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\_test_env) C:\Users\jvanzundert\conda-bld\pyinstrument_1535453523573\test_tmp>IF 1 NEQ 0 exit 1
Tests failed for pyinstrument-0.13.1-py36_0.tar.bz2 - moving package to C:\Users\jvanzundert\conda-bld\broken
WARNING:conda_build.build:Tests failed for pyinstrument-0.13.1-py36_0.tar.bz2 - moving package to C:\Users\jvanzundert\conda-bld\broken
removing: pyinstrument-0.13.1-py36_0.tar.bz2
TESTS FAILED: pyinstrument-0.13.1-py36_0.tar.bz2
Это проблема с моей настройкой или с учебником?
Для моего собственного пакета, я думаю, что мой макет должен быть таким (обратите внимание, что я относительно новичок в Python)
- <package name>
+ <package name>
+ __init__.py (empty)
+ <package name>.py
+ meta.yaml
+ setup.py (only an empty print statement)
+ bld.bat
Содержимое файла meta.yaml:
package:
name: <package name>
version: "0.0.1"
requirements:
host:
- python
run:
- python
test:
imports:
- <package name>
source:
path: $RECIPE_DIR\..
Но это не работает, также не работает в тестах, подобных примеру pyinstrument
.