[all][tc] Planning for dropping the Python2 support in OpenStack

Matthew Thode mthode at mthode.org
Wed Oct 30 00:40:35 UTC 2019


On 19-10-29 14:53:11, Ghanshyam Mann wrote:
>  ---- On Thu, 24 Oct 2019 14:32:03 -0500 Ghanshyam Mann <gmann at ghanshyammann.com> wrote ----
>  > Hello Everyone,
>  > 
>  > We had good amount of discussion on the final plan and schedule in today's TC office hour[1].
>  > 
>  > I captured the agreement on each point in etherpad (you can see the AGREE:). Also summarizing
>  > the discussions here. Imp point is if your projects are planning to keep the py2.7 support then do not delay
>  > to tell us. Reply on this ML thread or add your project in etherpad. 
>  > 
>  > - Projects can start dropping the py2.7 support. Common lib and testing tools need to wait until milestone-2.
>  >    ** pepe8 job to be included in openstack-python3-ussuri-jobs-* templates - https://review.opendev.org/#/c/688997/
>  >    ** You can drop openstack-python-jobs template and start using ussuri template once 688997 patch is merged. 
>  >    ** Cross projects dependency (if any ) can be sync up among dependent projects. 
>  > 
>  > - I will add this plan and schedule as a community goal. The goal is more about what all things to do and when.
>  >    ** If any project keeping the support then it has to be notified explicitly for its consumer. 
>  > 
>  > - Schedule: 
>  >  The schedule is aligned with the Ussuri cycle milestone[2]. I will add the plan in the release schedule also. 
>  >  Phase-1: Dec 09 - Dec 13 R-22 Ussuri-1 milestone
>  >   ** Project to start dropping the py2 support along with all the py2 CI jobs.
>  >  Phase-2: Feb 10 - Feb 14 R-13 Ussuri-2 milestone
>  >   ** This includes Oslo, QA tools (or any other testing tools), common lib (os-brick), Client library.
>  >   ** This will give enough time to projects to drop the py2 support.
>  >  Phase-3: Apr 06 - Apr 10 R-5 Ussuri-3 milestone
>  >   ** Final audit on Phase-1 and Phase-2 plan and make sure everything is done without breaking anything.
>  >       This is enough time to measure such break or anything extra to do before ussuri final release.
>  > 
>  > Other discussions points and agreement:
>  > - Projects want to keep python 2 support and need oslo, QA or any other dependent projects/lib support:
>  >   ** swift.  AI: gmann to reach out to swift team about the plan and exact required things from its dependency
>  >        (the common lib/testing tool).
> 
> I chated with timburke on IRC about things required by swift to keep the py2.7 support[1]. Below are
> client lib/middleware swift required for py2 testing.
>  @timburke, feel free to update if any missing point.
> 
> - devstack. able to keep running swift on py2 and rest all services can be on py3
> - keystonemiddleware and its dependency
> - keystoneclient and openstackclient  (dep of keystonemiddleware)
> - castellan and barbicanclient
> 
> 
> As those lib/middleware going to drop the py2.7 support in phase-2, we need to cap them for swift.
> I think capping them for python2.7 in upper constraint file would not affect any other users but Matthew Thode can
> explain better how that will work from the requirement constraint perspective. 
> 
> [1] http://eavesdrop.openstack.org/irclogs/%23openstack-swift/%23openstack-swift.2019-10-28.log.html#t2019-10-28T16:37:33
> 
> -gmann
> 

ya, there are examples already for libs that have dropped py2 support.
What you need to do is update global requirements to be something like
the following.

sphinx!=1.6.6,!=1.6.7,<2.0.0;python_version=='2.7'  # BSD
sphinx!=1.6.6,!=1.6.7,!=2.1.0;python_version>='3.4'  # BSD

or

keyring<19.0.0;python_version=='2.7'  # MIT/PSF
keyring;python_version>='3.4'  # MIT/PSF

-- 
Matthew Thode
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack-discuss/attachments/20191029/fd90bc25/attachment.sig>


More information about the openstack-discuss mailing list