Как я могу собрать модули Python CFFI во время разработки?

Каковы лучшие практики для создания модулей CFFI во время разработки?

Прямо сейчас я использую Makefile:

mylib/_ffi.so: my_lib/build_ffi.py
    python $<

И тогда для проверки я могу использовать:

$ make && python test.py

Но это кажется неоптимальным. Есть ли лучший способ создания модулей CFFI во время разработки?

2 ответа

Если проект использует setuptools, python setup.py develop появляется, чтобы построить библиотеку на месте:

$ python setup.py develop
...
Finished processing dependencies for my-lib==0.1
$ ls my_lib/
_ffi.so
...

Но не похоже, что есть make clean эквивалентный (setup.py clean только очищает build/ каталог), так что это не совсем идеально.

Не полный ответ, но предлагаемое усовершенствование вашего "неоптимального" решения состояло бы в том, чтобы добавить запуск pytest в файл make, в соответствии с:

all: mylib/_ffi.so
    /usr/bin/python test.py

что позволит вам просто запустить make.

Другие вопросы по тегам