[all][tc] Thoughts on Python 3.7 support
Pierre Riteau
pierre at stackhpc.com
Wed Jan 6 21:23:56 UTC 2021
On Wed, 6 Jan 2021 at 18:58, Ghanshyam Mann <gmann at ghanshyammann.com> wrote:
>
> ---- On Wed, 06 Jan 2021 10:34:35 -0600 Ben Nemec <openstack at nemebean.com> wrote ----
> >
> >
> > On 1/5/21 3:51 PM, Jeremy Stanley wrote:
> > > On 2021-01-05 22:32:58 +0100 (+0100), Pierre Riteau wrote:
> > >> There have been many patches submitted to drop the Python 3.7
> > >> classifier from setup.cfg:
> > >> https://review.opendev.org/q/%2522remove+py37%2522
> > >> The justification is that Wallaby tested runtimes only include 3.6 and 3.8.
> > >>
> > >> Most projects are merging these patches, but I've seen a couple of
> > >> objections from ironic and horizon:
> > >>
> > >> - https://review.opendev.org/c/openstack/python-ironicclient/+/769044
> > >> - https://review.opendev.org/c/openstack/horizon/+/769237
> > >>
> > >> What are the thoughts of the TC and of the overall community on this?
> > >> Should we really drop these classifiers when there are no
> > >> corresponding CI jobs, even though more Python versions may well be
> > >> supported?
> > >
> > > My recollection of the many discussions we held was that the runtime
> > > document would recommend the default python3 available in our
> > > targeted platforms, but that we would also make a best effort to
> > > test with the latest python3 available to us at the start of the
> > > cycle as well. It was suggested more than once that we should test
> > > all minor versions in between, but this was ruled out based on the
> > > additional CI resources it would consume for minimal gain. Instead
> > > we deemed that testing our target version and the latest available
> > > would give us sufficient confidence that, if those worked, the
> > > versions in between them were likely fine as well. Based on that, I
> > > think the versions projects claim to work with should be contiguous
> > > ranges, not contiguous lists of the exact versions tested (noting
> > > that those aren't particularly *exact* versions to begin with).
> > >
> > > Apologies for the lack of references to old discussions, I can
> > > probably dig some up from the ML and TC meetings several years back
> > > of folks think it will help inform this further.
> > >
> >
> > For what little it's worth, that jives with my hazy memories of the
> > discussion too. The assumption was that if we tested the upper and lower
> > bounds of our Python versions then the ones in the middle would be
> > unlikely to break. It was a compromise to support multiple versions of
> > Python without spending a ton of testing resources on it.
>
>
> Exactly, py3.7 is not broken for OpenStack so declaring it not supported is not the right thing.
> I remember the discussion when we declared the wallaby (probably from Victoria) testing runtime,
> we decided if we test py3.6 and py3.8 it means we are not going to break py3.7 support so indirectly
> it is tested and supported.
>
> And testing runtime does not mean we have to drop everything else testing means projects are all
> welcome to keep running the py3.7 testing job on the gate there is no harm in that.
>
> In both cases, either project has an explicit py3.7 job or not we should not remove it from classifiers.
>
>
> -gmann
Thanks everyone for your input. Then should we request that those
patches dropping the 3.7 classifier are abandoned, or reverted if
already merged?
More information about the openstack-discuss
mailing list