Foundations Team Updates - Thursday 30 March 2023

The previous status is here: Foundations Team Updates - Thursday 23 March 2023

1 Like
  • subiquity
    • PR: 1619 - review saving of cloud-init logs and help fixup for merge
    • PR: 1623 - fix call to netplan apply. It lives outside the snap, and needs run with a suitable environment
    • PR: 1624 - fix removal of a file during snap build, also causing the version number of the snap to be marked ‘+dirty’.
    • PR: 1625 - attach journal to bug reports. Some program outputs only go there.
  • ubuntu-desktop-installer
    • PR: 1747 - the u-d-i part of the fix for netplan apply. Save environment variables so we can restore them as needed. For GH: #1723 / LP: #2008952
  • probert
    • PR: 132 (LP: #2011344) - fix program capture when some of the output is not valid utf-8
  • LP: #2011751 - review and sponsor openbox fix for @arraybolt3
  • 23.10 planning
  • greenhouse
1 Like

ubuntu-image

  • Lots of work on preinstalled raspberry pi desktop images: all packaging changes should now be complete
  • Found issue in snapd, reported it and pulled in the changes once they were available
  • Merged PR for preseeding classic images after getting snapd changes
  • Merged PR for updating bootloaders
  • Found issue with staged version of e2fsprogs and compatibility with the new ext4 orphan_file feature
    • Fixed this by no longer staging e2fsprogs
  • Prepared PR for merging 3.0 into main \o/

miscellaneous

  • Take home test reviews
  • Interviews
  • Reviewing and sponsoring testng7 for @vpa1977
1 Like

Distro

Netplan

  • Improvements in the documentation (PR#337)
  • Code review for @slyon (PR#336)
  • Working on the netplan status --diff specification
1 Like

Analyze missing RISC-V packages
For riscv64 we provide ca. 93 % of the packages available for amd64. I am analyzing the build dependencies to see where we should get started to improve the coverage.

libreoffice-voikko
The riscv64 build failed last year due to a missing dependency. Sponsor needed for rebuild LP: #2013342.

1 Like
  • Roadmap planning
  • Take-home tests grading, Meet&Greet interview
  • Town Hall meeting
  • Lost a day due to nvidia driver issue
  • Spec reviews
  • Usual batch of apport reviews, with some new contributors :slight_smile:
1 Like

Distro

1 Like

Release Team

  • Worked on the lunar beta which is happening this week

+1 maintenance

  • Looked at bootstrapping crystal which has a self-build-dependency. The Debian unstable binary isn’t installable because libevent has a different package name in Debian vs Ubuntu. Turns out @zhsj patched libevent in Debian to not break ABI. Merged this from Debian to restore package dependency compatibility, then requested a bootstrap build against the now-installable Debian binary.
  • Had a second thought about the libevent implementation, decided this should be a transitional package for the upgrade from kinetic to lunar instead of a Provides. Reuploaded.
  • Groomed the NBS list; contacted Till about sourceful changes required to the two packages referencing libcupsfilters1 (because he’s the maintainer of both). Those packages are now in -proposed awaiting autopkgtest results. With this and libevent resolved, we’ll be down to 0 NBS packages for lunar.
  • took another brief look at nthash. FTBFS (regression) on riscv64 in its own right due to non-portable references to atomic function implementations. blocked on s390x because btllib build-depends on libomp-dev from llvm, which has not been ported to s390x (a brief attempt to address this at s390x build of llvm-toolchain-15 1:15.0.7-3ppa5 : PPA for Steve Langasek : Steve Langasek, but
    ultimately requires s390x assembly coding which I’m not touching. And it FTBFS on armhf due to test timeouts; it would be reasonable to raise the timeouts or skip the tests on this slower arch, but as that’s the only change that’s particularly tractable and wouldn’t unblock, I’m not spending effort on it currently.
  • looked at node-address autopkgtest failure on ppc64el. Appears to be a genuine upstream regression, and is probably cross-architecture but happens to only trigger on ppc64el because of coincidental idiosyncracies of device naming on the testbed for ppc64el. Not trivially reproducible and packaging all of NPM in Ubuntu is uninteresting, so punting.
  • kgb-bot: package in release pocket FTBFS the same way (since the package in -proposed is a no-change rebuild). Reproducible locally, so is not caused by a proxy configuration or network issue. The build failure is not reproducible in a Debian chroot. Thanks to a hint from @juliank, learned about apt build-dep -s which can be used to find out which packages apt would install as build-dependencies, with version numbers, to ease comparison of build-deps between Debian and Ubuntu. After eliminating all
    the interesting package version differences in the perl build-deps between Debian and Ubuntu (i.e., any differences that are not due to no-change rebuilds), the package still FTBFS in Ubuntu. So unfortunately I had to dig down into what the test suite was actually doing. Ultimately strace seemed the best tool for cutting through the various layers, and showed me an error that:
I had a problem posting to event json_request of session KGB for DIR
handler '^/json-rpc'. As reported by Kernel: 'No such file or directory',
perhaps the session name is spelled incorrectly for this handler? at
/usr/share/perl5/POE/Session.pm line 483

and the immediately prior syscall is wait4() which fails, as this process has never spawned a subprocess anyway. And an attempt to get a stack trace out of perl shows nothing but POE::Kernel functions, and libpoe-kernel isn’t even one of the packages that was at a different version between Debian and Ubuntu. So at this point I’ve given up.

  • sc-im: FTBFS, sponsored a fix from the Debian maintainer (@ItzSwirlz)
  • bettercap-caplets: uninstallable because it depends on bettercap-ui which is in the Debian NEW queue. Ignoring for now, but if someone wanted it removed and out of the way, we could remove it and add it to extra-removals so that it got pulled back in once bettercap-ui is available.
  • nextepc: confirmed that the ppc64el ftbfs is caused by a compiler issue incorrectly calculating object sizes when identifying overflows (-Werror=stringop-overflow), seen on ppc64el in several cases. Filed LP: #2013140 for this.
  • obexpushd: FTBFS, references an obsolete linux header, has a Debian bug open about it failing to build since 2018, not in the past two Debian stable releases or in testing, and I don’t think anyone has used OBEX as a protocol since Android was created. Removed.
  • aws-checksums: build-depends on package that doesn’t exist, even in the Debian NEW queue. https://bugs.debian.org/1029332 is open about this. Removed from lunar-proposed and added to extra-removals so it can come back if its dependency appears.
  • ruby-rackup, ruby-rack-session: build-depend on ruby-rack from experimental that we’re not going to sync for lunar. No good way to remove these and track that they get back, so leaving in -proposed.
  • x-loader, brings back memories from the early days of Ubuntu ARM enablement. Originally an Ubuntu package, it was copied to Debian in 2012 and was never rebuilt since. The new version fails to build, but this is an early boot package that is only useful on OMAP-based boards that we haven’t supported in a long time so not worth fixing. Removed.
  • rust-snapbox: depends on obsolete rust packages, https://bugs.debian.org/1029331. Removed.
  • fpga-icestorm: autopkgtest regression, reproducible in Debian but there the baseline regressed and the regression was allowed into the release. The test is failing on invocation of a command in a different package, so marking as a badtest and letting migrate.
  • wtforms-alchemy: new package, requires newer python3-sqlalchemy to build. Not something to be touched post-FF, leaving it for the next cycle. Opened an update-excuse bug.
  • wtforms-json: build-depends on wtforms-alchemy, self explanatory.
  • papi: FTBFS only on ppc64el, builds when LTO is disabled. Patched, uploaded, submitted to Debian.
  • wtdbg2: Debian maintainer dropped all archs except for amd64, and this has migrated to Debian testing. Followed suit.
  • eye: build-depends on newer swi-prolog-nox than we have; swi-prolog hasn’t been merged since March 2022. Since there are only three reverse-build-deps, I went ahead and merged it. This should be low-risk for lunar buildability as the other reverse-dependencies are in sync with Debian unstable and have no reported build failures.
    • oh, except logol depends on libswipl.so.8, which is somehow NOT one of the virtual packages provided, and therefore has autopkgtests that correctly break because now we have libswipl.so.9. Filed a bug against swi-prolog in Debian for this.
  • clasp: ftbfs on s390x only with a regression in the test suite. skipped for now.
  • libprotocol-http2-perl: existing ftbfs in lunar release as well. Does not fail in Debian. No significant differences in versions of build-deps between lunar and unstable. Skipped.
  • azure-functions-devops-build: depends on azure-cli which is blacklisted. Added this to the blacklist and removed from -proposed and the release pocket, since this is an unsatisfiable build-dep for the release version also.
  • libpoe-component-server-simplehttp-perl: FTBFS with the same libpoe-kernel error as kgb-bot. Skipped.
  • r-cran-gstat: s390x build dep-wait on r-cran-lwgeom because its new build-dep r-cran-stars depends on it. The s390x binary was removed in Debian, so followed suit.
  • github-backup: FTBFS in release pocket and in Debian unstable with undeclared build-dependency on an old libghc-github-dev. Not in Debian testing; removed from -proposed and the release pocket.
  • otf2: regressed in riscv64 support because it expects gcc atomics and isn’t finding them. Pinged @xypron for advice. The answer is we need to explicitly link to -latomic; added this to debian/rules rather than hacking upstream m4, and forwarded to Debian.
  • elementpath: regresses autopkgtests, being worked out in Debian.
  • vectorscan: blocked because ppc64el was removed, but this is reverted in unstable. Synced new version.
  • mailman3: autopkgtest fails on ppc64el, but this package was removed from the release pocket so this is not a true autopkgtest regression. Also it’s an arch: all package but the test only fails on one arch, so likely still a timing issue. Hinted.
  • rust-document-features build-depends on dh-sequence-cargo, a virtual package provided by dh-cargo 30 in Debian but not version 28 that we have. This is not for merging post-FF. Next release cycle someone will need to manually retry the package since dep-waits on virtual packages don’t clear automatically.
  • php-dompdf-svg-lib: build-depends on horde which is blacklisted. Removed and also blacklisted.
  • godot: build failures also unresolved in Debian. Skipping.
  • newsboat: gcc can’t detect that a variable won’t be used without initialization so fails under -Werror. False positive, pass -Wno-error=maybe-uninitialized and forward to Debian.
  • zulucrypt: released in Debian because autopkgtests require machine isolation and are therefore skipped. But these tests passed on the previous Ubuntu version and now fail. Low confidence that this isn’t a genuine regression, so moving on.
  • meta-phosh: depends on newer gnome-calls which is in Debian but hasn’t been merged. Leave for next cycle.
  • gmenuharness: the single relevant change in the Debian update was to add a symbol to the symbols file - a C++ template symbol that isn’t emitted on most Ubuntu archs. Marked the symbol optional, uploaded, forwarded to Debian.
  • firefox-esr-mobile-config: blacklisted with the rest of firefox debs.
  • libsigc++-3.0: mess of template symbols being listed in symbols file, causing build failures on various archs (specifically, LTO-enabled archs). Patched, submitted to Debian.
  • cppad: binary-indep build fails in Ubuntu and Debian. Removed from -proposed, let the maintainer take care of it.

NBS

1 Like

systemd

Other

  • Created Lunar upgrade page for the wiki (https://help.ubuntu.com/community/LunarUpgrades)
  • Investigating LP 2011458 “ssh fails to rebind when it is killed with -HUP”
    • In simple terms, the re-execution logic needs to be fixed when used in systemd socket activation. I have a rough patch, and I will circle back on this after completing other work.
  • Working on adding deb822 support for PPA sources created by add-apt-repository
1 Like
  • Tested fix for HDMI audio bug on Jammy (LP: #2009136)
  • Patched tests in sbuild for changed zstd output (LP: #2003201); sponsorship pending
  • Loooots of ubuntu-image testing with @jawn-smith
  • Related to the above: migrated several hacks from livecd-rootfs to ubuntu-settings (LP: #2004430 and LP: #2013080)
  • Writing of lunar blog posts
  • Pi meetings
1 Like
1 Like
  • Go snap
    Investigating FTBFS on riscv64. First thought it’s related to old snapcraft version. So I have refactored the build script for snapcraft 7.x (plugin is no longer available in 7.x).
    But it turns out still FTBFS. So I have opened https://forum.snapcraft.io/t/fail-to-build-snap-on-riscv64/34542

  • Go FIPS
    Backport golang-1.20 with FIPS to focal. Not uploaded anywhere, still need to confirm whether in a private PPA.

  • ycmd autopkgtest fails after golang-golang-x-tools is rebuilt with golang-1.20.
    Uploaded ycmd 0+20230103+gitf53e7ac+ds-1ubuntu1 (sponsored by @ginggs). Patch is merged by upstream.

1 Like

LP #2008789: [MIR] inteutils-telnet

dotnet

Other

1 Like

autopkgtest

  • Discovered that some autopkgtests appeared to be hung due to a lack of space. This was actually the result of the autopkgtest-cloud-worker running out of space so log files could not longer be written - which is a consequence of no longer using ceph. However, there are some issues with how tests are cleaned up when we run out of space and I reported that in Launchpad.
  • Tested and merged @paride’s changes to armhf-lxd.userdata file which create a larger / parition earlier in the provisioning process so that apt-get dist-upgrade won’t fail any more.
  • Modified armhf-lxd.userdata to use a larger partition for the / filesystem as we were running a bit short on space there.
  • Using the work from above replaced lxd-armhf8 and lxd-armhf3 with new runners with larger / and /srv partitions.
  • Resolved an issue with charm channels in the mojo service-bundle for the autopkgtest environment.
  • Fixed an issue where none of the autopkgtest queue processing services were running due to a typo which magically appeared in the juju configuration option worker-args for the autopkgtest-cloud-workers.
  • Added svgpp to big_packages for jbicha.
  • Investigation into the queues being slowly consumed and some worker services not running, come to find out nova commands aren’t usable in bos01.

ISO Tracker

  • Killed some stray sync-lp-bugs processes running on limequat which may have been affecting the load on it.
  • Added some test cases for Ubuntu Cinnamon.

Ubuntu

  • Sponsored an upload of autopkgtest for @hellsworth which resolves a bug in running the autopkgtest for vlc on i386. This also brings us closer to being in sync with Debian.
  • Worked with IS to update firewall rules for Launchpad riscv64 builders and access to archive-team.internal thereby fixing riscv64 image daily build failures.
  • Lunar Lobster Beta work.

Misc

  • Take home test reviews
  • Interview(s)
1 Like
1 Like

subiquity

  • fixed LP: #2012722 (desktop installer crash after probing caused by the use of ventoy). Fixed in curtin, picked up in Subiquity. Also opened a PR on ubuntu-desktop-installer to pickup the fix.
  • fixed crash on wlan network check
  • reproduced LP: #2012659 with new hardware.
  • 23.10 roadmap preparation
  • investigating json schema validation error when validating storage configuration (LP: 2012126)
  • opened PR on apport to get output of systemd-run --user available in syslog
  • diataxis meeting
  • code reviews

misc

  • town hall meeting
1 Like

Most of the other tasks are currently being blocked by external factors.

Rust

  • Currently addressing the comments for the proposal to merge cargo and rustc source packages
  • Still waiting for the LLVM 15 SRU to be migrated in Kinetic

Ubuntu ROCK

  • Suggested some changes to the Chiselled images for Rust
  • Still working on benchmarking the Chiselled images for Rust application deployment
1 Like

Distro

  • tzdata:
    • Uploaded SRUs for 2023a release (LP: #2012599) to the stable releases kinetic, jammy, focal.
    • Then repeated the process for 2023b (upload to sid, experimental, lunar, kinetic, jammy, focal, bionic).
      Thanks to @bdmurray for quickly accepting the SRUs. Successfully verified the SRUs.
    • Since that was too much fun, I repeated the same procedure for 2023c.
  • apport: Verified apport 2.23.1-0ubuntu3.1 SRU to kinetic
  • python-tz: Fix testVersion to not complain about the now dynamic Olson version and uploaded 2022.7.1-3.

Apport

1 Like

openjdk:

  • testng7 - updated per comments, reviewed by @jawn-smith and uploaded
  • jtreg7 - opened merge proposal to integrate testng7, waiting for review/testng7 becoming available
  • updated openjdk-20 packaging to run tier1 and tier2 tests. arm64 and amd64, ppc64el pass, i386, armhf and s390x have test failures.
  • work in progress: added exclusions and test patches for armhf here.
1 Like