[SRU] ruby2.5 DEP-8 tests are failing in Bionic

Bug #1903905 reported by Lucas Kanashiro
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ruby2.5 (Ubuntu)
Fix Released
Undecided
Unassigned
Bionic
Fix Released
Undecided
Unassigned

Bug Description

[Impact]

The ruby2.5 DEP-8 tests are failing since ever, so there is no good way to caught regressions automatically (via autopkgtest). This impacts our ability to provide updates to this package more reliably.

Below is a list of the failing tests and the reason:

* run-all: This DEP-8 test runs upstream tests. Some tests are failing because the tzdata package was updated in Bionic, a couple of upstream patches need to be backported to fix this, they are:

https://github.com/ruby/ruby/commit/2965c2d4df7
https://github.com/ruby/ruby/commit/584b5929f9b7

Take a look at this upstream bug: https://bugs.ruby-lang.org/issues/14655

* bundled-gems: This DEP-8 test checks if some gems supposed to be bundled with the interpreter (in our case they are separate packages) are available in the system with the expected version constraints. Some gems were shipped in Bionic with versions not expected by the ruby upstream maintainers, and they are making this test to fail:

  - power_assert: upstream expects version >= 1.1.1. Bionic has version 0.3.0-1 but actually it contains 0.2.7, look at the gemspec: /usr/share/rubygems-integration/all/specifications/power_assert-0.2.7.gemspec
  - test-unit: upstream expects version >= 3.2.7. Bionic has version 3.2.5-1.
  - xmlrpc: upstream expects version >= 0.3.0. This package is not available in Bionic, just from Focal onwards.

We should ignore them since there is nothing we can do at this point. AFAIK there is no severe issue caused by those versions mismatch.

* rubyconfig: This DEP-8 test checks for the ruby config. Currently it fails because of a call to dpkg-architecture which is printing a warning to stderr:

$ dpkg-architecture -qDEB_HOST_MULTIARCH
dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation)
x86_64-linux-gnu

An allow-stderr restriction can be added to fix this.

[Test Case]

At the moment ruby2.5 FTBFS in Bionic, so first apply the fix proposed in LP #1903902 and then run autopkgtest against it:

$ dget -u https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ruby2.5/2.5.1-1ubuntu1.6/ruby2.5_2.5.1-1ubuntu1.6.dsc
$ cd ruby2.5-2.5.1
# Add tzdata as a build dependency
$ autopkgtest -U . -- lxd ubuntu-daily:bionic

Here is the autopkgtest output: https://paste.ubuntu.com/p/KGxzhhGRxC/

With the fixes proposed above the tests pass successfully.

[Potential Regression]

There is no regression since the tests have been failing. The proposed changes are all related to tests only, except the TZ patches but they fix some covered issues with a very specific TZ (Kiritimati). So if there is room for a regression it will be related to TZ.

Related branches

Changed in ruby2.5 (Ubuntu):
status: New → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Lucas, or anyone else affected,

Accepted ruby2.5 into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ruby2.5/2.5.1-1ubuntu1.7 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 on 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 add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

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

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in ruby2.5 (Ubuntu Bionic):
status: New → Fix Committed
tags: added: verification-needed verification-needed-bionic
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (ruby2.5/2.5.1-1ubuntu1.7)

All autopkgtests for the newly accepted ruby2.5 (2.5.1-1ubuntu1.7) for bionic have finished running.
The following regressions have been reported in tests triggered by the package:

ruby-gnome2/3.2.4-1 (arm64, armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/bionic/update_excuses.html#ruby2.5

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

The DEP-8 tests present in the package in bionic-proposed successfully pass now. I did the following to confirm that:

$ lxc launch ubuntu-daily:bionic ruby25-dep8
$ lxc shell ruby25-dep8
# echo "deb-src http://archive.ubuntu.com/ubuntu bionic-proposed main" >> /etc/apt/sources.list
# apt update && apt install -y autopkgtest
# autopkgtest ruby2.5 -- null

The summary output was:

autopkgtest [19:39:35]: @@@@@@@@@@@@@@@@@@@@ summary
run-all PASS
bundled-gems PASS
builtin-extensions PASS
rubyconfig PASS

tags: added: verification-done verification-done-bionic
removed: verification-needed verification-needed-bionic
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for ruby2.5 has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ruby2.5 - 2.5.1-1ubuntu1.7

---------------
ruby2.5 (2.5.1-1ubuntu1.7) bionic; urgency=medium

  * d/p/arm64-optimizations.patch: enable arm64 optimizations that exist
    for power/x86. It includes enabling unaligned memory access, gc and
    vm_exec.c optimizations (LP: #1901074).
  * Fix FTBFS, many tests were failing during the build (LP: #1903902).
    - Add missing b-d on tzdata.
  * Fix DEP-8 tests (LP: #1903905).
    - Backport patches to fix Kiritimati TZ tests:
      + 0029-Backport-upstream-patch-to-fix-Kiritimati-TZ-test-1-.patch
      + 0030-Backport-upstream-patch-to-fix-Kiritimati-TZ-test-2-.patch
    - d/t/control: add restriction to allow-stderr. The rubyconfig test calls
      dpkg-architecture which is returning a warning in Bionic.
    - d/t/bundled-gems: skip gems which do not match upstream expectations.
      Some gems listed as bundled by upstream are not satisfied by the Ubuntu
      Bionic archive.

 -- Lucas Kanashiro <email address hidden> Thu, 05 Nov 2020 10:30:22 -0300

Changed in ruby2.5 (Ubuntu Bionic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.