On 2024-02-03 21:07, c.bu...@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 dpars...@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.