Friday 1 July 2022

+1 Maintenance Report

Greetings ubuntu-devel,

This week I was on +1 maintenance and I noticed an odd circular dependency between two packages.
  • Package golang-github-jackc-pgtype is in NEW and is dependency wait on golang-github-jackc-pgx-v4-dev.
  • Package golang-github-jackc-pgx-v4-dev is a new binary package to be built from src:golang-github-jackc-pgx as it migrates from major version v3 to v4.
  • src:golang-github-jackc-pgx can not build any v4 binaries without golang-github-jackc-pgtype-dev, which is built from src:golang-github-jackc-pgtype

The TL;DR of this is that src:golang-github-jackc-pgtype cannot build without binaries from src:golang-github-jackc-pgx, which cannot build without binaries from src:golang-github-jackc-pgtype, and thus there is a circular dependency.

Are there any methods for dealing with this type of circular dependency? In Debian I can see they did a binary-only upload to fix this, but as far as I know there is no such thing in Ubuntu. I briefly thought about combining the packages, but that is not idea for a few reasons:

  1. It breaks our golang-github-<username>-<repo> packaging convention.
  2. It would install possibly un-needed source code on people's machines if they install the combined package but really only needed one.
Now for the report of things I was able to solve: I usually focus mainly on failed tests, but I noticed there were quite a few FTBFS packages, so I decided to focus on those.

libdigidoc - openssl v3 related regression. This is fixed in Ubuntu and I have created a QA upload for Debian. This will be sponsored by ginggs.

rinutils - filed https://launchpad.net/bugs/1980243 and https://bugs.debian.org/1014169 to explain that it needs new dependencies packaged

golang-github-masterminds-sprig - I fixed a regression in this package which unblocked:
    * golang-step-crypto
    * golang-step-cli-utils
    * golang-github-smallstep-certificates
Thanks to seb128 for helping shepherd some of these binary packages through the NEW queue

golang-oras-oras-go - Fixed a regression in Ubuntu and forwarded to Debian

golang-mongodb-mongo-driver - Fixed a regression in Ubuntu (and forwarded to Debian) which unblocks:
    * golang-github-go-openapi-strfmt
    * golang-github-go-openapi-validate
    * golang-github-go-openapi-runtime

golang-github-openshift-imagebuilder: Fixed regression in Ubuntu and forwarded to Debian

scamper - Fixed a regression in Ubuntu and forwarded to Debian

Thank you for reading,

William 'jawn-smith' Wilson