Message ID | 20231006195243.3131140-5-jsnow@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Python: Enable python3.12 support | expand |
On 06.10.23 22:52, John Snow wrote: > Python 3.12 has released, so update the test infrastructure to test > against this version. Update the configure script to look for it when an > explicit Python interpreter isn't chosen. > > Signed-off-by: John Snow <jsnow@redhat.com> > --- > configure | 3 ++- > python/setup.cfg | 3 ++- > tests/docker/dockerfiles/python.docker | 6 +++++- > 3 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/configure b/configure > index e9a921ffb0..b480a3d6ae 100755 > --- a/configure > +++ b/configure > @@ -561,7 +561,8 @@ first_python= > if test -z "${PYTHON}"; then > # A bare 'python' is traditionally python 2.x, but some distros > # have it as python 3.x, so check in both places. > - for binary in python3 python python3.11 python3.10 python3.9 python3.8; do > + for binary in python3 python python3.12 python3.11 \ > + python3.10 python3.9 python3.8; do > if has "$binary"; then > python=$(command -v "$binary") > if check_py_version "$python"; then > diff --git a/python/setup.cfg b/python/setup.cfg > index 8c67dce457..48668609d3 100644 > --- a/python/setup.cfg > +++ b/python/setup.cfg > @@ -18,6 +18,7 @@ classifiers = > Programming Language :: Python :: 3.9 > Programming Language :: Python :: 3.10 > Programming Language :: Python :: 3.11 > + Programming Language :: Python :: 3.12 > Typing :: Typed > > [options] > @@ -182,7 +183,7 @@ multi_line_output=3 > # of python available on your system to run this test. > > [tox:tox] > -envlist = py38, py39, py310, py311 > +envlist = py38, py39, py310, py311, py312 > skip_missing_interpreters = true > > [testenv] > diff --git a/tests/docker/dockerfiles/python.docker b/tests/docker/dockerfiles/python.docker > index 383ccbdc3a..a3c1321190 100644 > --- a/tests/docker/dockerfiles/python.docker > +++ b/tests/docker/dockerfiles/python.docker > @@ -11,7 +11,11 @@ ENV PACKAGES \ > python3-pip \ > python3-tox \ > python3-virtualenv \ > - python3.10 > + python3.10 \ > + python3.11 \ > + python3.12 \ > + python3.8 \ > + python3.9 Hmm, interesting, how did it work before? Only 3.10 was tested? > > RUN dnf install -y $PACKAGES > RUN rpm -q $PACKAGES | sort > /packages.txt weak, I'm unsure about how this all works, I just see that 3.12 is added like others in all hunks except python.docker, but I think adding several python versions to docker should be safe anyway: Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
On 06.10.23 23:39, Vladimir Sementsov-Ogievskiy wrote: > On 06.10.23 22:52, John Snow wrote: >> Python 3.12 has released, so update the test infrastructure to test >> against this version. Update the configure script to look for it when an >> explicit Python interpreter isn't chosen. >> >> Signed-off-by: John Snow <jsnow@redhat.com> >> --- >> configure | 3 ++- >> python/setup.cfg | 3 ++- >> tests/docker/dockerfiles/python.docker | 6 +++++- >> 3 files changed, 9 insertions(+), 3 deletions(-) >> >> diff --git a/configure b/configure >> index e9a921ffb0..b480a3d6ae 100755 >> --- a/configure >> +++ b/configure >> @@ -561,7 +561,8 @@ first_python= >> if test -z "${PYTHON}"; then >> # A bare 'python' is traditionally python 2.x, but some distros >> # have it as python 3.x, so check in both places. >> - for binary in python3 python python3.11 python3.10 python3.9 python3.8; do >> + for binary in python3 python python3.12 python3.11 \ >> + python3.10 python3.9 python3.8; do >> if has "$binary"; then >> python=$(command -v "$binary") >> if check_py_version "$python"; then >> diff --git a/python/setup.cfg b/python/setup.cfg >> index 8c67dce457..48668609d3 100644 >> --- a/python/setup.cfg >> +++ b/python/setup.cfg >> @@ -18,6 +18,7 @@ classifiers = >> Programming Language :: Python :: 3.9 >> Programming Language :: Python :: 3.10 >> Programming Language :: Python :: 3.11 >> + Programming Language :: Python :: 3.12 >> Typing :: Typed >> [options] >> @@ -182,7 +183,7 @@ multi_line_output=3 >> # of python available on your system to run this test. >> [tox:tox] >> -envlist = py38, py39, py310, py311 >> +envlist = py38, py39, py310, py311, py312 >> skip_missing_interpreters = true >> [testenv] >> diff --git a/tests/docker/dockerfiles/python.docker b/tests/docker/dockerfiles/python.docker >> index 383ccbdc3a..a3c1321190 100644 >> --- a/tests/docker/dockerfiles/python.docker >> +++ b/tests/docker/dockerfiles/python.docker >> @@ -11,7 +11,11 @@ ENV PACKAGES \ >> python3-pip \ >> python3-tox \ >> python3-virtualenv \ >> - python3.10 >> + python3.10 \ >> + python3.11 \ >> + python3.12 \ >> + python3.8 \ >> + python3.9 > > Hmm, interesting, how did it work before? Only 3.10 was tested? > >> RUN dnf install -y $PACKAGES >> RUN rpm -q $PACKAGES | sort > /packages.txt > > weak, I'm unsure about how this all works, I just see that 3.12 is added like others in all hunks except python.docker, but I think adding several python versions to docker should be safe anyway: > Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> > I meant, r-b is weak, not the patch :)
On Fri, Oct 6, 2023 at 4:40 PM Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> wrote: > > On 06.10.23 22:52, John Snow wrote: > > Python 3.12 has released, so update the test infrastructure to test > > against this version. Update the configure script to look for it when an > > explicit Python interpreter isn't chosen. > > > > Signed-off-by: John Snow <jsnow@redhat.com> > > --- > > configure | 3 ++- > > python/setup.cfg | 3 ++- > > tests/docker/dockerfiles/python.docker | 6 +++++- > > 3 files changed, 9 insertions(+), 3 deletions(-) > > > > diff --git a/configure b/configure > > index e9a921ffb0..b480a3d6ae 100755 > > --- a/configure > > +++ b/configure > > @@ -561,7 +561,8 @@ first_python= > > if test -z "${PYTHON}"; then > > # A bare 'python' is traditionally python 2.x, but some distros > > # have it as python 3.x, so check in both places. > > - for binary in python3 python python3.11 python3.10 python3.9 python3.8; do > > + for binary in python3 python python3.12 python3.11 \ > > + python3.10 python3.9 python3.8; do > > if has "$binary"; then > > python=$(command -v "$binary") > > if check_py_version "$python"; then > > diff --git a/python/setup.cfg b/python/setup.cfg > > index 8c67dce457..48668609d3 100644 > > --- a/python/setup.cfg > > +++ b/python/setup.cfg > > @@ -18,6 +18,7 @@ classifiers = > > Programming Language :: Python :: 3.9 > > Programming Language :: Python :: 3.10 > > Programming Language :: Python :: 3.11 > > + Programming Language :: Python :: 3.12 > > Typing :: Typed > > > > [options] > > @@ -182,7 +183,7 @@ multi_line_output=3 > > # of python available on your system to run this test. > > > > [tox:tox] > > -envlist = py38, py39, py310, py311 > > +envlist = py38, py39, py310, py311, py312 > > skip_missing_interpreters = true > > > > [testenv] > > diff --git a/tests/docker/dockerfiles/python.docker b/tests/docker/dockerfiles/python.docker > > index 383ccbdc3a..a3c1321190 100644 > > --- a/tests/docker/dockerfiles/python.docker > > +++ b/tests/docker/dockerfiles/python.docker > > @@ -11,7 +11,11 @@ ENV PACKAGES \ > > python3-pip \ > > python3-tox \ > > python3-virtualenv \ > > - python3.10 > > + python3.10 \ > > + python3.11 \ > > + python3.12 \ > > + python3.8 \ > > + python3.9 > > Hmm, interesting, how did it work before? Only 3.10 was tested? I was relying on dependencies to pull in other versions -- tox usually pulls in all but the very latest version. I made it explicit instead. I can explain this in the commit. > > > > > RUN dnf install -y $PACKAGES > > RUN rpm -q $PACKAGES | sort > /packages.txt > > weak, I'm unsure about how this all works, I just see that 3.12 is added like others in all hunks except python.docker, but I think adding several python versions to docker should be safe anyway: > Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> Thanks -- and I see your patches for iotests. I'll try to look into them shortly. > > -- > Best regards, > Vladimir >
diff --git a/configure b/configure index e9a921ffb0..b480a3d6ae 100755 --- a/configure +++ b/configure @@ -561,7 +561,8 @@ first_python= if test -z "${PYTHON}"; then # A bare 'python' is traditionally python 2.x, but some distros # have it as python 3.x, so check in both places. - for binary in python3 python python3.11 python3.10 python3.9 python3.8; do + for binary in python3 python python3.12 python3.11 \ + python3.10 python3.9 python3.8; do if has "$binary"; then python=$(command -v "$binary") if check_py_version "$python"; then diff --git a/python/setup.cfg b/python/setup.cfg index 8c67dce457..48668609d3 100644 --- a/python/setup.cfg +++ b/python/setup.cfg @@ -18,6 +18,7 @@ classifiers = Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 + Programming Language :: Python :: 3.12 Typing :: Typed [options] @@ -182,7 +183,7 @@ multi_line_output=3 # of python available on your system to run this test. [tox:tox] -envlist = py38, py39, py310, py311 +envlist = py38, py39, py310, py311, py312 skip_missing_interpreters = true [testenv] diff --git a/tests/docker/dockerfiles/python.docker b/tests/docker/dockerfiles/python.docker index 383ccbdc3a..a3c1321190 100644 --- a/tests/docker/dockerfiles/python.docker +++ b/tests/docker/dockerfiles/python.docker @@ -11,7 +11,11 @@ ENV PACKAGES \ python3-pip \ python3-tox \ python3-virtualenv \ - python3.10 + python3.10 \ + python3.11 \ + python3.12 \ + python3.8 \ + python3.9 RUN dnf install -y $PACKAGES RUN rpm -q $PACKAGES | sort > /packages.txt
Python 3.12 has released, so update the test infrastructure to test against this version. Update the configure script to look for it when an explicit Python interpreter isn't chosen. Signed-off-by: John Snow <jsnow@redhat.com> --- configure | 3 ++- python/setup.cfg | 3 ++- tests/docker/dockerfiles/python.docker | 6 +++++- 3 files changed, 9 insertions(+), 3 deletions(-)