Please update landscape-client to 12.05

Bug #1004678 reported by Andreas Hasenack on 2012-05-25
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Landscape Client
High
Andreas Hasenack
landscape-client (Ubuntu)
Wishlist
Unassigned
Lucid
Wishlist
Unassigned
Natty
Wishlist
Unassigned
Oneiric
Wishlist
Unassigned
Precise
Wishlist
Unassigned

Bug Description

SRU request to update landscape-client to version 12.05 in lucid, natty, oneiric and precise.

Landscape has an SRU exception provided the mentioned rules are followed:
https://wiki.ubuntu.com/StableReleaseUpdates#Landscape

[Impact]
Users are not able to create activities which at the same time manipulate package holds and package changes (like install/remove/upgrade/downgrade) (LP: #972489)
Additionally, the upstream tarball had a debian/ directory in it making proper debian packaging more confusing, because the ubuntu package had patches for files that were already in debian/. That and many lintian warnings were also fixed (LP: #1005663)
Finally, the dependencies between landscape-client and landscape-common were tightened up to make sure that landscape-client always required the exact same version of landscape-common, instead of greater-or-equal, preventing a situation where, for example, landscape-client 12.05 would be installed together with landscape-common 12.04.

[Test Case]
A full test report is attached to this ticket, and also available online at https://wiki.canonical.com/Landscape/ClientSRUTests/12.05 (only for Canonical employees, sorry). It includes tests for the changes as well as some standard regression tests as defined in the Landscape Update Policy at https://wiki.ubuntu.com/LandscapeUpdates.

This is a test case for the major bug driving this release (LP: #972489)
After getting a Landscape account (a free trial is available), perform the following steps:
1. Register a computer (easier if you just create an AWS cloud and spawn a precise instance)
2. Wait for all packages to be synced (numbers in landscape closely matching apt-cache stats, close to 40k)
3. Create a package activity which installs one uninstalled package and holds an installed one.
Broken Behavior: activity fails with message:
"""
Requested changes require a more recent version of the landscape-client package.
"""
Fixed Behavior: activity succeeds

For step (3), I suggest doing a search for package "python-l" and then selecting python-ldap to install and python-launchpadlib to hold (or some other package that is already installed).

To hold a package, you have to click on the small triangle to the left of the package icon and then click on the package icon that will show up in the row below. See attached screenshot.

[Regression Potential]
- inter-package dependencies were tightened so that landscape-client now requires the same exact version of landscape-common instead of just >=. I can't imagine where this would cause problems, but a dependency change always warrants a second opinion/look.
- some things in debian/* changed to try to make the package easier to build and handle (and understand). In particular, it changed from being a "1.0" undeclared package (it didn't have debian/source/format), a mashup of a native and a non-native package, to a proper "3.0 (quilt)" package (but without patches) where the upstream tarball has no debian/ and has been officially released as such.
- package holds is a new feature in Landscape, initially supported by the previous 12.04.3 SRU. This 12.05 update fixes a particular case of mixing package holds with normal package operations like install and remove. I don't expect regressions here, just improvements really, but just mention it because holds is still a "fresh" new feature.
- all code changes have unit tests. If you have the right dependencies installed, you can run the test suite with "make check" (just above 2150 tests).
- a lot of deprecated code related to smart was removed. Smart was officially dropped from landscape-client in 12.04 but some code (and tests) was still there. The only regression potential here is if landscape-common was left at some older version and landscape-client was updated to >= 12.04, which was possible before, but we addressed that via the stricter inter-dependencies between those two packages.

For a more detailed list of the changes, see debian/changelog.

Related branches

Changed in landscape-client:
status: New → Fix Committed
Andreas Hasenack (ahasenack) wrote :

Need to do some work regarding lintian warnings.

Changed in landscape-client:
status: Fix Committed → In Progress
importance: Undecided → High
Changed in landscape-client:
assignee: nobody → Andreas Hasenack (ahasenack)
Andreas Hasenack (ahasenack) wrote :

Making progress!

andreas@nsn7:~/bzr/sru/12.05/quantal/landscape-client-12.05-0ubuntu1$ bzr bd -S
Building using working tree
Building package in normal mode
Looking for a way to retrieve the upstream tarball
Using the upstream tarball that is present in /home/andreas/bzr/sru/12.05/quantal
Building the package in /home/andreas/bzr/sru/12.05/quantal/build-area/landscape-client-12.05, using debuild -S
 dpkg-buildpackage -rfakeroot -d -us -uc -S
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security
dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor): -D_FORTIFY_SOURCE=2
dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security
dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin: vendor): -Wl,-Bsymbolic-functions -Wl,-z,relro
dpkg-buildpackage: source package landscape-client
dpkg-buildpackage: source version 12.05-0ubuntu1
dpkg-buildpackage: source changed by Andreas Hasenack <email address hidden>
 dpkg-source --before-build landscape-client-12.05
 fakeroot debian/rules clean
dh_testdir
dh_testroot
rm -f build-stamp
rm -rf build
make -C apt-update clean
make[1]: Entering directory `/home/andreas/bzr/sru/12.05/quantal/build-area/landscape-client-12.05/apt-update'
rm -f apt-update
make[1]: Leaving directory `/home/andreas/bzr/sru/12.05/quantal/build-area/landscape-client-12.05/apt-update'
dh_clean
debconf-updatepo
sed -i -e "s/^DEBIAN_REVISION = .*/DEBIAN_REVISION = \"\"/g" landscape/__init__.py
 dpkg-source -b landscape-client-12.05
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building landscape-client using existing ./landscape-client_12.05.orig.tar.gz
dpkg-source: info: building landscape-client in landscape-client_12.05-0ubuntu1.debian.tar.gz
dpkg-source: info: building landscape-client in landscape-client_12.05-0ubuntu1.dsc
 dpkg-genchanges -S >../landscape-client_12.05-0ubuntu1_source.changes
dpkg-genchanges: including full source code in upload
 dpkg-source --after-build landscape-client-12.05
dpkg-buildpackage: full upload (original source is included)
Now running lintian...
N: 2 tags overridden (2 warnings)
Finished running lintian.
Now signing changes and any dsc files...
 signfile landscape-client_12.05-0ubuntu1.dsc Andreas Hasenack <email address hidden>

You need a passphrase to unlock the secret key for
user: "Andreas Hasenack <email address hidden>"
1024-bit DSA key, ID F3DDC290, created 2000-03-28

 signfile landscape-client_12.05-0ubuntu1_source.changes Andreas Hasenack <email address hidden>

You need a passphrase to unlock the secret key for
user: "Andreas Hasenack <email address hidden>"
1024-bit DSA key, ID F3DDC290, created 2000-03-28

Successfully signed dsc and changes files
Cleaning build dir: /home/andreas/bzr/sru/12.05/quantal/build-area/landscape-client-12.05
andreas@nsn7:~/bzr/sru/12.05/quantal/landscape-client-12.05-0ubuntu1$

Andreas Hasenack (ahasenack) wrote :

Ready for another pass, please review and upload if all is ok.

Andreas Hasenack (ahasenack) wrote :

The release tarball is at https://launchpad.net/landscape-client/trunk/12.05.

I guess I could add a debian/watch file, would you like that? Like this:
"""
version=3
https://launchpad.net/landscape-client/+download https://launchpad.net/landscape-client/[^/]+/[^/]+/\+download/landscape-client-(.*)\.tar\.(?:bz2|gz)
"""

Changed in landscape-client:
status: In Progress → Fix Committed
Sebastien Bacher (seb128) wrote :

Thank you for your work, could you file a merge request or add a debdiff to the bug?

Changed in landscape-client (Ubuntu):
importance: Undecided → Wishlist
status: New → Confirmed
Andreas Hasenack (ahasenack) wrote :

MP filed

Sebastien Bacher (seb128) wrote :
Changed in landscape-client (Ubuntu):
status: Confirmed → Fix Released
Changed in landscape-client:
status: Fix Committed → Fix Released
description: updated
description: updated
Bryce Harrington (bryce) on 2012-06-21
description: updated
description: updated
description: updated
Andreas Hasenack (ahasenack) wrote :

Screenshot showing where to click to hold an installed package.

description: updated
Andreas Hasenack (ahasenack) wrote :

Test report, direct print from https://wiki.canonical.com/Landscape/ClientSRUTests/12.05. You just don't get the links describing the test case in detail.

description: updated
description: updated
description: updated
Andreas Hasenack (ahasenack) wrote :

debdiff for lucid

Andreas Hasenack (ahasenack) wrote :

debdiff for natty

Andreas Hasenack (ahasenack) wrote :

debdiff for oneiric

Andreas Hasenack (ahasenack) wrote :

debdiff for precise

description: updated
Andreas Hasenack (ahasenack) wrote :

I didn't use LP branches this time because the <distro>-updates branch for at least one of the releases was not up-to-date with the previous SRU. The package importer failed:

http://package-import.ubuntu.com/status/landscape-client.html#2012-04-22

Apparently because of this bug:

https://bugs.launchpad.net/udd/+bug/653312

summary: - Release 12.05
+ Please update landscape-client to 12.05
Changed in landscape-client (Ubuntu Precise):
importance: Undecided → Wishlist
Changed in landscape-client (Ubuntu Oneiric):
importance: Undecided → Wishlist
Changed in landscape-client (Ubuntu Natty):
importance: Undecided → Wishlist
Changed in landscape-client (Ubuntu Lucid):
importance: Undecided → Wishlist
Changed in landscape-client (Ubuntu Precise):
status: New → In Progress
Sebastien Bacher (seb128) wrote :

I've sponsored the stable serie versions, unsubscribing sponsors, the SRU team needs to review those next

Changed in landscape-client (Ubuntu Lucid):
status: New → In Progress
Changed in landscape-client (Ubuntu Natty):
status: New → In Progress
Changed in landscape-client (Ubuntu Oneiric):
status: New → In Progress

Hello Andreas, or anyone else affected,

Accepted landscape-client into natty-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/landscape-client/12.05-0ubuntu0.11.04 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in landscape-client (Ubuntu Natty):
status: In Progress → Fix Committed
tags: added: verification-needed
Changed in landscape-client (Ubuntu Lucid):
status: In Progress → Fix Committed
Clint Byrum (clint-fewbar) wrote :

Hello Andreas, or anyone else affected,

Accepted landscape-client into lucid-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/landscape-client/12.05-0ubuntu0.10.04 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Clint Byrum (clint-fewbar) wrote :

Hello Andreas, or anyone else affected,

Accepted landscape-client into oneiric-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/landscape-client/12.05-0ubuntu0.11.10 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in landscape-client (Ubuntu Oneiric):
status: In Progress → Fix Committed
Clint Byrum (clint-fewbar) wrote :

Hello Andreas, or anyone else affected,

Accepted landscape-client into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/landscape-client/12.05-0ubuntu0.12.04 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in landscape-client (Ubuntu Precise):
status: In Progress → Fix Committed
Andreas Hasenack (ahasenack) wrote :

Ran the test on lucid, natty, oneiric and precise, screenshots attached. Before (with 12.04.3) and after (with 12.05 from proposed).

Andreas Hasenack (ahasenack) wrote :

Failed activity with client 12.04.3

Andreas Hasenack (ahasenack) wrote :

Failed activity detail.

Andreas Hasenack (ahasenack) wrote :

Upgrading to 12.05 from proposed.

Andreas Hasenack (ahasenack) wrote :

Succeeded activity with 12.05

Andreas Hasenack (ahasenack) wrote :

Succeeded activity detail with 12.05

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package landscape-client - 12.05-0ubuntu0.10.04

---------------
landscape-client (12.05-0ubuntu0.10.04) lucid-proposed; urgency=low

  * New upstream release 12.05 (r561 in trunk) (LP: #1004678).
  * Make all subpackages that depend on each other require the exact same
    version, instead of >= $version.
  * Added python-gi to client depends starting natty.
  * Make change-packages also handle package holds (LP: #972489).
  * Fix typo in glade file (LP: #983096).
  * Tidy up apt facade (LP: #985493).
  * Remove SmartFacade and its tests, no longer used (LP: #996269).
  * Remove check for apt version, since we won't release this for
    Hardy where that check matters (LP: #996837).
  * Remove methods that were smart specific. We no longer use smart
    (LP: #996841).
  * Remove smart-update helper binary. We no longer use smart
    (LP: #997408).
  * Remove test-mixins that were useful only during the apt-to-smart
    code migration. Now with smart gone, they are no longer necessary
    (LP: #997760).
  * Build the packages from precise onward, not just precise.
  * Assorted packaging fixes:
    - Switched to format 3.0 (quilt).
    - Added source lintian overrides, with comments.
    - Updated debian/rules:
      - Added build-arch and build-indep dummy target.
      - Build the GUI packages from precise onwards, and not just on precise.
      - Re-enable dh_lintian.
      - Strip the binaries (dh_strip), and also call dh_shlibdeps for the
        automatic shlibs dependency.
      - Added python-gi from natty onwards.
    - Used __Choices instead of _Choices in landscape-common.templates, it's
      better for translators.
    - Updated standard version to 3.8.2, the version from Lucid (oldest one
      we support)
    - Added shlibs depends.
    - Dropped deprecated ${Source-Version} and replaced it with
      ${binary:Version}
    - Require exact version of the sibling package instead of >=.
 -- Andreas Hasenack <email address hidden> Tue, 19 Jun 2012 15:25:30 -0300

Changed in landscape-client (Ubuntu Lucid):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package landscape-client - 12.05-0ubuntu0.11.04

---------------
landscape-client (12.05-0ubuntu0.11.04) natty-proposed; urgency=low

  * New upstream release 12.05 (r561 in trunk) (LP: #1004678).
  * Make all subpackages that depend on each other require the exact same
    version, instead of >= $version.
  * Added python-gi to client depends starting natty.
  * Make change-packages also handle package holds (LP: #972489).
  * Fix typo in glade file (LP: #983096).
  * Tidy up apt facade (LP: #985493).
  * Remove SmartFacade and its tests, no longer used (LP: #996269).
  * Remove check for apt version, since we won't release this for
    Hardy where that check matters (LP: #996837).
  * Remove methods that were smart specific. We no longer use smart
    (LP: #996841).
  * Remove smart-update helper binary. We no longer use smart
    (LP: #997408).
  * Remove test-mixins that were useful only during the apt-to-smart
    code migration. Now with smart gone, they are no longer necessary
    (LP: #997760).
  * Build the packages from precise onward, not just precise.
  * Assorted packaging fixes:
    - Switched to format 3.0 (quilt).
    - Added source lintian overrides, with comments.
    - Updated debian/rules:
      - Added build-arch and build-indep dummy target.
      - Build the GUI packages from precise onwards, and not just on precise.
      - Re-enable dh_lintian.
      - Strip the binaries (dh_strip), and also call dh_shlibdeps for the
        automatic shlibs dependency.
      - Added python-gi from natty onwards.
    - Used __Choices instead of _Choices in landscape-common.templates, it's
      better for translators.
    - Updated standard version to 3.8.2, the version from Lucid (oldest one
      we support)
    - Added shlibs depends.
    - Dropped deprecated ${Source-Version} and replaced it with
      ${binary:Version}
    - Require exact version of the sibling package instead of >=.
 -- Andreas Hasenack <email address hidden> Tue, 19 Jun 2012 15:12:07 -0300

Changed in landscape-client (Ubuntu Natty):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package landscape-client - 12.05-0ubuntu0.11.10

---------------
landscape-client (12.05-0ubuntu0.11.10) oneiric-proposed; urgency=low

  * New upstream release 12.05 (r561 in trunk) (LP: #1004678).
  * Make all subpackages that depend on each other require the exact same
    version, instead of >= $version.
  * Added python-gi to client depends starting natty.
  * Make change-packages also handle package holds (LP: #972489).
  * Fix typo in glade file (LP: #983096).
  * Tidy up apt facade (LP: #985493).
  * Remove SmartFacade and its tests, no longer used (LP: #996269).
  * Remove check for apt version, since we won't release this for
    Hardy where that check matters (LP: #996837).
  * Remove methods that were smart specific. We no longer use smart
    (LP: #996841).
  * Remove smart-update helper binary. We no longer use smart
    (LP: #997408).
  * Remove test-mixins that were useful only during the apt-to-smart
    code migration. Now with smart gone, they are no longer necessary
    (LP: #997760).
  * Build the packages from precise onward, not just precise.
  * Assorted packaging fixes:
    - Switched to format 3.0 (quilt).
    - Added source lintian overrides, with comments.
    - Updated debian/rules:
      - Added build-arch and build-indep dummy target.
      - Build the GUI packages from precise onwards, and not just on precise.
      - Re-enable dh_lintian.
      - Strip the binaries (dh_strip), and also call dh_shlibdeps for the
        automatic shlibs dependency.
      - Added python-gi from natty onwards.
    - Used __Choices instead of _Choices in landscape-common.templates, it's
      better for translators.
    - Updated standard version to 3.8.2, the version from Lucid (oldest one
      we support)
    - Added shlibs depends.
    - Dropped deprecated ${Source-Version} and replaced it with
      ${binary:Version}
    - Require exact version of the sibling package instead of >=.
 -- Andreas Hasenack <email address hidden> Tue, 19 Jun 2012 14:55:03 -0300

Changed in landscape-client (Ubuntu Oneiric):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package landscape-client - 12.05-0ubuntu0.12.04

---------------
landscape-client (12.05-0ubuntu0.12.04) precise-proposed; urgency=low

  * New upstream release 12.05 (r561 in trunk) (LP: #1004678).
  * Make all subpackages that depend on each other require the exact same
    version, instead of >= $version.
  * Added python-gi to client depends starting natty.
  * Make change-packages also handle package holds (LP: #972489).
  * Fix typo in glade file (LP: #983096).
  * Tidy up apt facade (LP: #985493).
  * Remove SmartFacade and its tests, no longer used (LP: #996269).
  * Remove check for apt version, since we won't release this for
    Hardy where that check matters (LP: #996837).
  * Remove methods that were smart specific. We no longer use smart
    (LP: #996841).
  * Remove smart-update helper binary. We no longer use smart
    (LP: #997408).
  * Remove test-mixins that were useful only during the apt-to-smart
    code migration. Now with smart gone, they are no longer necessary
    (LP: #997760).
  * Build the packages from precise onward, not just precise.
  * Assorted packaging fixes:
    - Switched to format 3.0 (quilt).
    - Added source lintian overrides, with comments.
    - Updated debian/rules:
      - Added build-arch and build-indep dummy target.
      - Build the GUI packages from precise onwards, and not just on precise.
      - Re-enable dh_lintian.
      - Strip the binaries (dh_strip), and also call dh_shlibdeps for the
        automatic shlibs dependency.
      - Added python-gi from natty onwards.
    - Used __Choices instead of _Choices in landscape-common.templates, it's
      better for translators.
    - Updated standard version to 3.8.2, the version from Lucid (oldest one
      we support)
    - Added shlibs depends.
    - Dropped deprecated ${Source-Version} and replaced it with
      ${binary:Version}
    - Require exact version of the sibling package instead of >=.
 -- Andreas Hasenack <email address hidden> Tue, 19 Jun 2012 12:10:15 -0300

Changed in landscape-client (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers