[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1062827: RFP: pydevtool -- CLI dev tools powered by pydoit



On 2024-02-03 21:07, c.buhtz@posteo.jp wrote:
I checked upstream README.md.
I have no clue what this is.

Can someone explain please?

Am 03.02.2024 18:05 schrieb dparsons@debian.org:
Package: wnpp

* Package name    : pydevtool
* URL             : https://github.com/pydoit/pydevtool
  Description     : CLI dev tools powered by pydoit

Python dev tool. doit powered, integration with:
- click and rich for custom CLI
- linters: pycodestlye, pyflakes


I can only explain phenomenologically, based on what scipy is trying to do with it.

scipy uses it in a dev.py script,
https://github.com/scipy/scipy/blob/eb6d8e085087ce9854e92d6b0cdc6d70f0ff0074/dev.py#L125
dev.py is a developers' tool used to run scipy's tests,
https://scipy.github.io/devdocs/dev/contributor/devpy_test.html
See also
https://scipy.github.io/devdocs/building/index.html

pydevtool provides a cli submodule, from which scipy uses UnifiedContext, CliGroup, Task These are used to create and organise a Test class, keeping track of parameters used when running tests,
such as verbosity level or install prefix.

pydevtool itself is built on top of doit, which is a framework for managing general tasks.

The dev tasks in question here are building and testing the package (we want to use it for the test tasks).

dev.py also has other tasks

Probably the best way to think about it is that dev.py is scipy's counterpart to debian's pybuild, providing a solution to the challenge of building a complex python package. We've created pybuild, which uses dhpython as a framework for managing the tasks involved in building and testing. The scipy team have created pybuild, which uses pydevtool (together with click, doit) as a framework for managing the tasks.

`grep Task dev.py` gives a list of other tasks that dev.py can handle:
Test
RefguideCheck
Build
Test
Bench
Mypy
Doc
RefguideCheck

So pydevtool is used to help manage the execution of these various tasks.


Reply to: