Comment 6 for bug 1841277

Revision history for this message
Scott Moser (smoser) wrote :

Corey, simplestreams-dev

My thoughts here have a primary goal to educate the audience on the use cases
and users as I know them for simplestreams. That would then allow the teams
involved make an educated decision on how to handle python 2 support.

I do not personally have any need for python2.

A few things to note
a.) simplestreams as a project currently has packaging in its master
branch, and maintains a ubuntu/devel branch for easy uploads to ubuntu
using the same 'new-upstream-snapshot' infrastructure that cloud-init and
curtin use. Upstream debian/ directory is sometimes useful, but I think
I'd prefer to remove it entirely if it is going to differ from
ubuntu/devel.

If kept, I'd shoot for the general goal being little or no delta between
ubuntu/devel:debian/ and master:debian/ . Up until Dan's recent changes
upstream/master branch had no delta other than debian/changelog between
the ubuntu/devel and master branches in the debian/ directory.

b.) There are daily builds of simplestreams via recipe at
https://code.launchpad.net/%7Esimplestreams-dev/simplestreams/+git/simplestreams/+recipes
that include python2 support. We probably do not want to drop python2
output from those builds/ppas. I do not know of all the users of recipe
based builds/PPAs but I suspect that there are some users of python2
packaging from there (possibly from the openstack team).

c.) it looks like the trusty PPA/recipe has been failing for some time.
Since no one screamed loudly enough to fix that, and clearly no one is
listening to the recipe build failures, I'd suggest that it get dropped
https://code.launchpad.net/~simplestreams-dev/+recipe/simplestreams-daily-trusty

My suggestion would probably be to:
1. drop python2 support from upstream proper

2. Your choice on dropping the debian/ directory from upstream entirely and
maintaining it in ubuntu/devel branch or keeping the process that is there
right now.

3. add and maintain packaging branch (ubuntu/python2 ?) that kept python2
support functional for at least xenial and bionic and point the recipe
builds there.

4. add eoan recipe builds. I do not know of a way to magically ubuntu 'devel'
in recipe builds... for cloud-init and curtin, at the beginning of each ubuntu
release, someone has to go click through launchpad and add the release builds.
doc on that at https://github.com/CanonicalLtd/uss-tableflip/blob/master/doc/new-ubuntu-series.md

5. have someone pay attention to recipe-build-failure messages. This is
important as inevitably if upstream does not run python2 unit tests, then they
will start to fail at some point and this is what will tell us.

6. Fix doc at
https://github.com/CanonicalLtd/uss-tableflip/blob/master/doc/simplestreams-new-upstream-release.md
as I think it is currently wrong... Sorry for not updating it. It looks
like I moved that over to new-upstream-snapshot right before I left
Canonical.

All suggested changes should be done with merge proposals rather than diffs
attached to a bug.