qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 02/10] python: drop pipenv


From: Jan Richter
Subject: Re: [PATCH 02/10] python: drop pipenv
Date: Thu, 16 Mar 2023 11:49:26 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0



On 3/16/23 09:54, Philippe Mathieu-Daudé wrote:
On 16/3/23 00:02, John Snow wrote:
On Wed, Mar 15, 2023 at 5:17 PM Philippe Mathieu-Daudé
<philmd@linaro.org> wrote:

+Jan

On 22/2/23 15:37, Paolo Bonzini wrote:
From: John Snow <jsnow@redhat.com>

The pipenv tool was nice in theory, but in practice it's just too hard
to update selectively, and it makes using it a pain. The qemu.qmp repo
dropped pipenv support a while back and it's been functioning just fine,
so I'm backporting that change here to qemu.git.

Signed-off-by: John Snow <jsnow@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
   .gitlab-ci.d/static_checks.yml         |   4 +-
   python/.gitignore                      |   4 +-
   python/Makefile                        |  53 ++--
   python/Pipfile                         |  13 -
   python/Pipfile.lock                    | 347 -------------------------
   python/README.rst                      |   3 -
   python/setup.cfg                       |   4 +-
   python/tests/minreqs.txt               |  45 ++++
   tests/docker/dockerfiles/python.docker |   1 -
   9 files changed, 86 insertions(+), 388 deletions(-)
   delete mode 100644 python/Pipfile
   delete mode 100644 python/Pipfile.lock
   create mode 100644 python/tests/minreqs.txt


diff --git a/python/setup.cfg b/python/setup.cfg
index 564181570654..9e923d97628f 100644
--- a/python/setup.cfg
+++ b/python/setup.cfg
@@ -33,9 +33,7 @@ packages =
   * = py.typed

   [options.extras_require]
-# For the devel group, When adding new dependencies or bumping the minimum
-# version, use e.g. "pipenv install --dev pylint==3.0.0".
-# Subsequently, edit 'Pipfile' to remove e.g. 'pylint = "==3.0.0'.
+# Remember to update tests/minreqs.txt if changing anything below:
   devel =
       avocado-framework >= 90.0

Here >= 90,

Yes. The "devel" group for the python packages here requires
avocado-framework 90.0 or better... to run the tests *on the python
package*.


       flake8 >= 3.6.0
diff --git a/python/tests/minreqs.txt b/python/tests/minreqs.txt
new file mode 100644
index 000000000000..dfb8abb155f4
--- /dev/null
+++ b/python/tests/minreqs.txt
@@ -0,0 +1,45 @@
+# This file lists the ***oldest possible dependencies*** needed to run
+# "make check" successfully under ***Python 3.6***. It is used primarily
+# by GitLab CI to ensure that our stated minimum versions in setup.cfg
+# are truthful and regularly validated.
+#
+# This file should not contain any dependencies that are not expressed
+# by the [devel] section of setup.cfg, except for transitive
+# dependencies which must be enumerated here explicitly to eliminate
+# dependency resolution ambiguity.
+#
+# When adding new dependencies, pin the very oldest non-yanked version
+# on PyPI that allows the test suite to pass.
+
+# Dependencies for the TUI addon (Required for successful linting)
+urwid==2.1.2
+urwid-readline==0.13
+Pygments==2.9.0
+
+# Dependencies for FUSE support for qom-fuse
+fusepy==2.0.4
+
+# Test-runners, utilities, etc.
+avocado-framework==90.0

... and here == 90.

Yes. This is the minimum requirements file for the purposes of testing
the python code via CI ("python-check-minreqs").
It installs *exactly* version 90.0 to ensure that there are no
avocado-framework features used in later versions that have
accidentally slipped in.


Anyhow I'm surprised by unreviewed commit 4320f7172f
("python: bump avocado to v90.0") and we still have:

The implication being that it wouldn't have passed review?

I want to use Avocado 90+ since more than 1 year now as this
would make my maintainer life easier, but "something" was missing
and Cleber said he'd address that, then we could move to v90.

Right now in avocado team, we are working on preparations for avocado 103LTS version which will be released in three months and AFAIK Cleber is preparing patch to enable the avocado nrunner and smooth migration of tests to avocado 103LTS.


I suppose the qemu.qmp package is not tested on Darwin/macOS,
or is not tested with Avocado.

tests/requirements.txt:5:avocado-framework==88.1

Developing the python code needs avocado >= 90,

What do you mean by "Developing the python code"?

running the avocado tests needs avocado==88.1.


1/ How do you run Avocado tests out of tests/ ?

"make check-avocado", the same as anyone else, I assume.


2/ Can we use Avocado on Darwin/macOS now? I thought we
needed one series from Cleber [*] for that, which is why
QEMU is the last project using the 'old' runner (as opposed
to the 'new' runner which is the upstream /current/ one).

I have no idea. I'm going to guess that you're wondering if you can
run the avocado *qemu* tests on Darwin/macOS, and I wouldn't know - I
don't develop avocado or those tests, and I don't have a mac.

Well currently we can not run Avocado on Darwin/macOS (at least since
macOS Big Sur which is where I started).

Avocado doesn't official support macOS, but Cleber just have created a patch [1] which might make avocado tests available on macOS in the future. But unfortunately still without official support.

[1] https://github.com/avocado-framework/avocado/pull/5622







reply via email to

[Prev in Thread] Current Thread [Next in Thread]