I recently saw some packages in cosmic that have older versions than the one in bionic, so I wrote a script to check that, and here are the results.
I think we need to be more careful when it comes to this, and regressions in security fixes (e.g. having a list of CVE regressions in devel compared to stable). The script used for this list is attached, I'd like to polish it up a bit, add team info, make it generate html and json and have it run periodically. Note that the script compares released versions from the old release to the new release. If there is a newer version in proposed, it also mentions that, but still lists it. -- script output: Version regression support for bionic to cosmic ===================================================== main ---- ceph 12.2.7-0ubuntu0.18.04.1/bionic-updates -> 12.2.4-0ubuntu1.1build1/cosmic (but 13.2.1+dfsg1-0ubuntu2 in cosmic-proposed) language-pack-gnome-mai 1:18.04+20180712/bionic-updates -> 1:18.04+20180423/cosmic language-pack-gnome-mai-base 1:18.04+20180712/bionic-updates -> 1:18.04+20180423/cosmic language-pack-mai 1:18.04+20180712/bionic-updates -> 1:18.04+20180423/cosmic language-pack-mai-base 1:18.04+20180712/bionic-updates -> 1:18.04+20180423/cosmic linux-aws 4.15.0-1023.23/bionic-updates -> 4.15.0-1021.21/cosmic (but 4.18.0-1001.2 in cosmic-proposed) linux-gcp 4.15.0-1021.22/bionic-updates -> 4.15.0-1019.20/cosmic (but 4.18.0-1001.2 in cosmic-proposed) linux-meta-aws 4.15.0.1023.23/bionic-updates -> 4.15.0.1021.21/cosmic (but 4.18.0.1001.1 in cosmic-proposed) linux-meta-gcp 4.15.0.1021.23/bionic-updates -> 4.15.0.1019.21/cosmic (but 4.18.0.1001.1 in cosmic-proposed) linux-signed-gcp 4.15.0-1021.22/bionic-updates -> 4.15.0-1019.20/cosmic (but 4.18.0-1001.2 in cosmic-proposed) thunderbird 1:52.9.1+build3-0ubuntu0.18.04.1/bionic-updates -> 1:52.7.0+build1-0ubuntu1/cosmic woff2 1.0.2-1build0.1/bionic-updates -> 1.0.2-1/cosmic restricted ---------- universe -------- mariadb-10.1 1:10.1.34-0ubuntu0.18.04.1/bionic-updates -> 1:10.1.29-6ubuntu2/cosmic (but 1:10.1.35-1ubuntu1 in cosmic-proposed) snapcraft 2.43.1+18.04/bionic-updates -> 2.43+18.10.1/cosmic (but 2.43.1+18.10 in cosmic-proposed) swauth 1.3.0-1ubuntu1/bionic-updates -> 1.3.0-1/cosmic multiverse ---------- -- debian developer - deb.li/jak | jak-linux.org - free software dev ubuntu core developer i speak de, en
#!/usr/bin/python3 """Calculate regressions in version numbers between two releases.""" import sys import urllib.request import apt_pkg apt_pkg.init() MIRROR = "http://de1.archive.ubuntu.com/ubuntu/dists/{distro}/{component}/source/Sources.gz" old = sys.argv[1] new = sys.argv[2] print("Version regression support for %s to %s" % (old, new)) print("=====================================================") for component in "main","restricted","universe", "multiverse": print(component) print(len(component) * "-") old_vers = {} new_vers = {} pro_vers = {} for pocket in "", "-updates": old_path, _ = urllib.request.urlretrieve(MIRROR.format(distro=old + pocket, component=component), "old.gz") new_path, _ = urllib.request.urlretrieve(MIRROR.format(distro=new + pocket, component=component), "new.gz") for sec in apt_pkg.TagFile(old_path): if apt_pkg.version_compare(sec["Version"], old_vers.get(sec["Package"], [""])[0]) >= 0: old_vers[sec["Package"]] = sec["Version"], old + pocket for sec in apt_pkg.TagFile(new_path): if apt_pkg.version_compare(sec["Version"], new_vers.get(sec["Package"], [""])[0]) >= 0: new_vers[sec["Package"]] = sec["Version"], new + pocket pro_path, _ = urllib.request.urlretrieve(MIRROR.format(distro=new + "-proposed", component=component), "pro.gz") for sec in apt_pkg.TagFile(pro_path): pro_vers[sec["Package"]] = sec["Version"], new + "-proposed" for pkg in sorted(old_vers): if pkg not in new_vers: continue if apt_pkg.version_compare(old_vers[pkg][0], new_vers[pkg][0]) > 0: if pkg in pro_vers and apt_pkg.version_compare(old_vers[pkg][0], pro_vers[pkg][0]) <= 0: print("%-30s %-50s -> %-40s (but %s)" % (pkg, "/".join(old_vers[pkg]), "/".join(new_vers[pkg]), (" in ".join(pro_vers[pkg])))) else: print("%-30s %-50s -> %-40s" % (pkg, "/".join(old_vers[pkg]), "/".join(new_vers[pkg]))) print()
-- ubuntu-devel mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel
