Hi Simon, On Mon, Aug 17, 2015 at 01:46:16PM +0100, Simon McVittie wrote: > I notice that Ubuntu has gone ahead with a lot of library renames. Did > the Ubuntu developers doing these uploads test the results, or did you > just "upload and hope"? One reason I have held back from doing more NMUs > is that for the majority of transitioning packages, I have no idea how > to smoke-test the results, and I'm not happy with putting my signature > on a package that I haven't tested. However, if we're going for a lower > standard of "successfully rebuilding the package and some random rdeps > is enough testing", then there are quite a lot of NMUs that can be done.
Yes, this has been the standard in Ubuntu. First, because the presence of a C++ ABI change in a new version of the compiler does not imply an increased risk of wrong code compilation, and we normally assume (in both Debian and Ubuntu) that rebuilding without making other changes is safe; and second because if there's anything *beyond* buildability of reverse-dependencies that warrants testing as part of no-change rebuilds, the right way to express that is by declaration of autopkgtests. So a number of these library packages have gotten suitable smoke testing by way of autopkgtests (indeed, publishing these libraries to wily involved bypassing a number of buggy autopkgtests on reverse dependencies), and many others did not but are assumed to be ok unless someone reports otherwise. > If we wait for a maintainer who knows the relevant package (who is > likely on holiday and/or MIA in many cases) to inspect each of the > packages involved, then I don't think anything vaguely C++-related is > going to migrate for weeks, possibly months. That's a long time for > developers without the appropriate C++ or specific-library knowledge to > avoid touching unstable and hope security bug fixes get to them via t-p-u. Right. I certainly wouldn't recommend that Debian as a whole wait on individual maintainers to make these decisions. Indeed, in Ubuntu we went ahead and pushed "conservative" transitions - namely, assuming that everything needed to be renamed - with the rationale that in cases where we find out that the transition was not needed *and* someone in Debian cares enough to prevent having a transition, we can roll back the transition with some combination of Provides: and dummy packages. So the cost of waiting for careful evaluation of each package is high (weeks or months spent blocking testing), and the cost of having to revert a transition is low (revert the library name, throw in some Provides:, and carry on). > Having done more rebuilds in Ubuntu, it would be great if you could > publish a complete list of the transitions you believe to be necessary, > including those that are not ready to be uploaded until their > dependencies have transitioned, so we can get an idea of the size of the > problem. Here's the count of source packages in Ubuntu wily that produce binary packages ending in 'v5', which is probably a good approximation: $ grep-dctrl -n -sSource:Package -FPackage -r 'v5$' /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_wily*Packages | sort -u | wc -l 333 $ Full list attached. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
adplug afflib alglib assimp astyle atkmm1.6 atlas-cpp blackbox bobcat boolstuff botan1.10 bulletml cairomm cal3d camp canl-c++ cauchy ccfits cg3 cgal cigi-ccl clam clanlib clhep clipper clucene-core coin3 coinor-flopc++ coinor-ipopt coinutils colpack console-bridge cppunit csound ctemplate ctpp2 cvc3 cwidget cxxtools dar davix dbus-c++ dcmtk dolfin double-conversion ecasound eclib fbreader ffmpegthumbnailer flac flatzebra flightcrew flowcanvas flxmlrpc freefem freehdl ganv gconfmm2.6 gecode gemanx-gtk2 geos getfem++ gettext gflags ginac givaro glibmm2.4 gloox gmetadom gmsh gnome-chemistry-utils gnuift google-glog gr-air-modes gr-fcdproplus gr-osmosdr graphicsmagick gsmlib gtkmm2.4 gtkmm3.0 guichan gyoto h323plus hdf5 healpix-cxx hmat-oss htmlcxx hunspell ibutils id3lib3.8.3 ignition-math2 igraph imagemagick ipe kyotocabinet kytea lasi leveldb libabw libaria libassa libbinio libbitcoin libbpp-core libbpp-phyl libbpp-phyl-omics libbpp-popgen libbpp-qt libbpp-raa libbpp-seq libbpp-seq-omics libccrtp libcdr libcec libcec-platform libcgicc libclaw libcmis libcolumbus libcommoncpp2 libconfig libcoverart libcoyotl libcrypto++ libdap libdc0 libebml libetonyek libevocosm libftdi libftdi1 libgenome libgetopt++ libghemical libgig libgltf libgtextutils libgtksourceviewmm libhmsbeagle libitpp libixion libjsoncpp libkexiv2 libkml libkolab libkolabxml libktoblzcheck libloki libmatroska libmediainfo libmems libmsn libmusicbrainz3 libmusicbrainz5 libmwaw libnzb libodfgen libofa libopenraw libopkele liborcus liborigin liborigin2 libosl libpagemaker libpar2 libpcre++ libplist libpodofo libprelude libproxy libpyzy libqalculate librostlab-blast libsfml libshevek libsidplay libsigc++-2.0 libsmbios libstxxl libsynthesis libtorrent-rasterbar libtrace3 libucimf libusb libvigraimpex libvoikko libvsqlitepp libwildmagic libwpd libwps libxs libzeep libzen liggghts llvm-toolchain-3.5 llvm-toolchain-3.6 log4cplus log4cpp log4cxx log4shib logservice lttoolbox luabind lucene++ lv2-c++-tools mecab med-fichier mercator mimetic modglue movit mozjs24 mpqc muparser music mygui mysql++ mysql-connector-c++ netcdf netxx nexus normaliz ns3 nxcl octomap ogre-1.8 ogre-1.9 ois omnievents openbabel openchange opencolorio opencsg opencv openigtlink openimageio openlayer openmama openrpt opensaml2 openscenegraph ossim owncloud-client pajeng pangomm pcre3 pcsc-cyberjack petsc pktools player poco portsmf projectm protobuf pstoedit psurface ptlib pugixml pynac pythia8 qca2 qd qpdf qqwing qscintilla2 qtruby quickfix qwtplot3d raul re2 relion rlog rtaudio rtmidi rubberband rudecgi scalc scim shiboken sidplay-libs sigx silgraphite2.0 simbody simgrid siscone skstream sleuthkit smokegen smokeqt snapper snappy sndobj snmpkit soci socket++ sofa-framework spatialindex srecord strigi syfi synopsis tercpp tesseract ticcutils tinyxml tinyxml2 tulip ucommon udt uhd usbprog vamp-plugin-sdk varconf verbiste vips voms vtk wfmath wxsvg wxwidgets3.0 xapian-core xml-security-c xmlrpc-c xmltooling xqilla xylib yaml-cpp yaml-cpp0.3 zeroc-ice zeroc-icee zinnia zipios++
signature.asc
Description: Digital signature