g-ir-scanner doesn't work (so can't build gnome packages any more)

Bug #1861556 reported by Mario Limonciello
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gobject-introspection (Debian)
Fix Released
Unknown
gobject-introspection (Ubuntu)
Fix Released
Critical
Unassigned
python3-defaults (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Running g-ir-scanner doesn't work anymore after a recent upgrade with a fully up to date focal:

Traceback (most recent call last):
  File "/usr/bin/g-ir-scanner", line 99, in <module>
    from giscanner.scannermain import scanner_main
  File "/usr/lib/x86_64-linux-gnu/gobject-introspection/giscanner/scannermain.py", line 35, in <module>
    from giscanner.ast import Include, Namespace
  File "/usr/lib/x86_64-linux-gnu/gobject-introspection/giscanner/ast.py", line 29, in <module>
    from .sourcescanner import CTYPE_TYPEDEF, CSYMBOL_TYPE_TYPEDEF
  File "/usr/lib/x86_64-linux-gnu/gobject-introspection/giscanner/sourcescanner.py", line 33, in <module>
    from giscanner._giscanner import SourceScanner as CSourceScanner
ModuleNotFoundError: No module named 'giscanner._giscanner'

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: gobject-introspection 1.62.0-4ubuntu1
ProcVersionSignature: Ubuntu 5.4.0-12.15-generic 5.4.8
Uname: Linux 5.4.0-12-generic x86_64
ApportVersion: 2.20.11-0ubuntu16
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Sat Feb 1 07:04:11 2020
InstallationDate: Installed on 2019-08-13 (171 days ago)
InstallationMedia: Ubuntu 19.10 "Eoan Ermine" - Alpha amd64 (20190712)
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: gobject-introspection
UpgradeStatus: Upgraded to focal on 2019-11-04 (89 days ago)

Revision history for this message
Mario Limonciello (superm1) wrote :
Revision history for this message
Mario Limonciello (superm1) wrote :

It appears to me to be happening because gobject-introspection only ships a python file for python3.8 not python3.7 which is the default in focal.

$ python3.7 /usr/bin/g-ir-scanner
Traceback (most recent call last):
  File "/usr/bin/g-ir-scanner", line 99, in <module>
    from giscanner.scannermain import scanner_main
  File "/usr/lib/x86_64-linux-gnu/gobject-introspection/giscanner/scannermain.py", line 35, in <module>
    from giscanner.ast import Include, Namespace
  File "/usr/lib/x86_64-linux-gnu/gobject-introspection/giscanner/ast.py", line 29, in <module>
    from .sourcescanner import CTYPE_TYPEDEF, CSYMBOL_TYPE_TYPEDEF
  File "/usr/lib/x86_64-linux-gnu/gobject-introspection/giscanner/sourcescanner.py", line 33, in <module>
    from giscanner._giscanner import SourceScanner as CSourceScanner
ModuleNotFoundError: No module named 'giscanner._giscanner'

$ python3.8 /usr/bin/g-ir-scanner
ERROR: Need at least one filename

$ ls -alh /usr/bin/python3
lrwxrwxrwx 1 root root 9 Oct 18 10:23 /usr/bin/python3 -> python3.7

Revision history for this message
Mario Limonciello (superm1) wrote :

Upgrading python3-minimal to 3.8.0-3 which has been stuck in proposed fixes this issue, but gobject-introspection doesn't reflect a relationship upon this.

# apt show gobject-introspection |grep Dep
Depends: libc6 (>= 2.29), libffi7 (>= 3.3~20180313), libgirepository-1.0-1 (= 1.62.0-4ubuntu1), libglib2.0-0 (>= 2.58.0), python3:any, build-essential, python3-distutils, python3-mako, python3-markdown

tags: added: update-excuse
Revision history for this message
Matthias Klose (doko) wrote :

gobject-introspection needs proper dependencies. See the Debian report.

Changed in python3-defaults (Ubuntu):
status: New → Invalid
Changed in gobject-introspection (Debian):
status: Unknown → New
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gobject-introspection (Ubuntu):
status: New → Confirmed
tags: added: champagne regression
Changed in gobject-introspection (Ubuntu):
importance: Undecided → High
summary: - g-ir-scanner doesn't work
+ g-ir-scanner doesn't work (so can't build gnome packages any more)
Changed in gobject-introspection (Ubuntu):
importance: High → Critical
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Can anyone suggest a safe workaround?

I tried comment #3 and then got broken dependencies. apt decided most of my OS was no longer required and was uninstalled :/

Then I tried downgrading just gobject-introspection to 1.62.0-2ubuntu1. That works long enough to actually complete builds, but breaks other dependencies and causes gdm3 to crash.

I am keen to see a fix or a safe workaround.

Revision history for this message
Matthias Klose (doko) wrote :

a quick hack might be to build the package against the release pocket, and then copy it to the release pocket.

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

This bug was fixed in the package gobject-introspection - 1.62.0-4ubuntu2

---------------
gobject-introspection (1.62.0-4ubuntu2) focal; urgency=medium

  * rules: Pass the private module directory to dh_python3. We only build for
    the default python version. Previously dh_python3 wasn't finding the
    directory containing the private modules, so it didn't know this. This
    meant that no versioned python3 dependencies were generated so we could,
    for example, be migrated without the corresponding version of python3
    migrating. That results in programs which don't run. Once the directory is
    passed, dh_python3 generates dependencies on the right python versions.
    For future transitions gobject-introspection will need to be binNMUed.
    See Debian #950267.
  * Uploading this to a PPA without focal-proposed and then binary copying to
    the real focal-proposed to hopefully let this migrate on its own, to
    unbreak g-ir-scanner in focal release. After this migrates, the plan is to
    do a no-change rebuild normal upload to focal-proposed to get a binary
    with the correct dependencies. (LP: #1861556)

 -- Iain Lane <email address hidden> Mon, 03 Feb 2020 11:22:32 +0000

Changed in gobject-introspection (Ubuntu):
status: Confirmed → Fix Released
Changed in gobject-introspection (Debian):
status: New → 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.