← Back to team overview

touch-packages team mailing list archive

[Bug 1293944] Re: Mir deb packages with versioned names cannot be installed simultaneously any more

 

** Changed in: mir
    Milestone: None => 0.7.0

** Changed in: mir
       Status: Fix Released => Fix Committed

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1293944

Title:
  Mir deb packages with versioned names cannot be installed
  simultaneously any more

Status in Mir:
  Fix Committed
Status in Mir 0.6 series:
  Fix Released
Status in “mir” package in Ubuntu:
  Fix Released

Bug description:
  Mir has some packages with ABI-versioned names (libmirserver17,
  libmirclient7) so that multiple versions can be installed
  simultaneously, in theory. However this plan is not working;

  Package: libmirserver17
  Section: libs
  Architecture: i386 amd64 armhf arm64
  Multi-Arch: same
  Pre-Depends: ${misc:Pre-Depends}
  Depends: ${misc:Depends},
           ${shlibs:Depends},
           libmirplatform (= ${binary:Version}),
           libmirplatformgraphics-mesa (= ${binary:Version}) |
             libmirplatformgraphics-android (= ${binary:Version}),

  When we bump an ABI number, we also increase the ${binary:Version}. So
  you can see from the names that libmirplatform* can only have one
  version installed at a time. And that indirectly means that
  libmirserverN can never be installed simultaneously with
  libmirserverN+1.

  This also leads to annoying CI failures as we're seeing this week:

  The following packages have unmet dependencies:
   libmirserver16 : Depends: libmirplatform (= 0.1.6+14.04.20140310-0ubuntu1) but 0.1.7+autopilot0 is to be installed
                    Depends: libmirplatformgraphics-mesa (= 0.1.6+14.04.20140310-0ubuntu1) but 0.1.7+autopilot0 is to be installed or
                             libmirplatformgraphics-android (= 0.1.6+14.04.20140310-0ubuntu1) but 0.1.7+autopilot0 is to be installed
  E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

  There are at least two possible solutions I can think of so far:

  (1) Change our Depends' to not use straight equality. So we must change:
     libmirplatform (= ${binary:Version}),
  to:
     libmirplatform (>= ${binary:Version}),
  or even to
     libmirplatform (>= some_older_version_based_on_real_requirements),

  (2) Change libplatform* to include some ABI number in their names. Not
  ideal.

  I like (1).

To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1293944/+subscriptions