** Description changed:

+ [ Impact ]
+ 
+  * After installing the ssh-import-id package on a noble schroot (or any 
minimal environment where the python3-launchpadlib package is not installed), 
running the command `ssh-import-id` (no argument needed to demonstrate the 
issue) fails with the following error:
+ > [...]
+ > ModuleNotFoundError: No module named 'launchpadlib'.
+ This is also a problem when building a core24 snap that uses `ssh-import-id` 
as a staged package.
+ 
+ As it turns out, the new feature introduced by bug 1745538 made the
+ launchpadlib python module a required runtime dependency of ssh-import-
+ id. However the dependency is not declared on the ssh-import-id binary
+ package.
+ 
+  * The fix that was merged for plucky adds python3-launchpadlib as a
+ Depends fields for ssh-import-id.
+ 
+ [ Test Plan ]
+ 
+ 1. Using a minimal schroot:
+   a. Create a noble schroot using (mk-sbuild)
+      $ mk-sbuild noble --name noble-ssh-import-id
+ 
+   b. Enter the (s)chroot (here on amd64), install the ssh-import-id package 
and run it:
+      $ schroot -c noble-ssh-import-id-amd64 -u root
+      (noble-ssh-import-id-amd64) # apt install ssh-import-id
+      (noble-ssh-import-id-amd64) # ssh-import-id
+ 
+ 2. Using a core24 based snap
+   a. Clone a tests-snap repository that uses ssh-import-id:
+     $ git clone https://git.launchpad.net/~ogayot/+git/ssh-import-id-test-snap
+   b. Build the snap:
+     $ snapcraft pack
+   c. Install the snap:
+     $ sudo snap install --devmode testsnap_0.1_amd64.snap
+   d. Run the snap and observe the result:
+     $ testsnap lp:ogayot
+ 
+ [ Where problems could occur ]
+ 
+  * The upload introduces a new dependency on python3-launchpadlib. This
+ means that upgrading a system that was previously affected (i.e., ssh-
+ import-id was installed but python3-launchpadlib wasn't), will pull
+ python3-launchpadlib and other transitive dependencies. While this is
+ required to fix ssh-import-id, the extra "cost" might come as a surprise
+ for some users when upgrading their system.
+ 
+ [ Other Info ]
+ 
+  * The regression was introduced in bug 1745538
+ 
+ [ Original description ]
+ 
  After installing ssh-import-id in a schroot on noble, running it fails:
  
  # ssh-import-id ogayot
  Traceback (most recent call last):
-   File "/usr/bin/ssh-import-id", line 33, in <module>
-     sys.exit(load_entry_point('ssh-import-id==5.11', 'console_scripts', 
'ssh-import-id')())
-              
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-   File "/usr/bin/ssh-import-id", line 25, in importlib_load_entry_point
-     return next(matches).load()
-            ^^^^^^^^^^^^^^^^^^^^
-   File "/usr/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
-     module = import_module(match.group('module'))
-              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-   File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module
-     return _bootstrap._gcd_import(name[level:], package, level)
-            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-   File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
-   File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
-   File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
-   File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
-   File "<frozen importlib._bootstrap_external>", line 995, in exec_module
-   File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
-   File "/usr/lib/python3/dist-packages/ssh_import_id/__init__.py", line 33, 
in <module>
-     from launchpadlib.launchpad import Launchpad
+   File "/usr/bin/ssh-import-id", line 33, in <module>
+     sys.exit(load_entry_point('ssh-import-id==5.11', 'console_scripts', 
'ssh-import-id')())
+              
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   File "/usr/bin/ssh-import-id", line 25, in importlib_load_entry_point
+     return next(matches).load()
+            ^^^^^^^^^^^^^^^^^^^^
+   File "/usr/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
+     module = import_module(match.group('module'))
+              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module
+     return _bootstrap._gcd_import(name[level:], package, level)
+            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
+   File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
+   File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
+   File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
+   File "<frozen importlib._bootstrap_external>", line 995, in exec_module
+   File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
+   File "/usr/lib/python3/dist-packages/ssh_import_id/__init__.py", line 33, 
in <module>
+     from launchpadlib.launchpad import Launchpad
  ModuleNotFoundError: No module named 'launchpadlib'
  
  This appears to be a regression caused by bug 1745538 ; adding support
  for launchpad teams.
  
  Looking at the code, we have python3-launchpadlib as a build-depends but
  not a depends on the binary package.

** Summary changed:

- ssh-import-id fails if python3-launchpadlib is not installed
+ [SRU] ssh-import-id fails if python3-launchpadlib is not installed

** Description changed:

  [ Impact ]
  
-  * After installing the ssh-import-id package on a noble schroot (or any 
minimal environment where the python3-launchpadlib package is not installed), 
running the command `ssh-import-id` (no argument needed to demonstrate the 
issue) fails with the following error:
+  * After installing the ssh-import-id package on a noble schroot (or any 
minimal environment where the python3-launchpadlib package is not installed), 
running the command `ssh-import-id` (no argument needed to demonstrate the 
issue) fails with the following error:
  > [...]
  > ModuleNotFoundError: No module named 'launchpadlib'.
  This is also a problem when building a core24 snap that uses `ssh-import-id` 
as a staged package.
  
  As it turns out, the new feature introduced by bug 1745538 made the
  launchpadlib python module a required runtime dependency of ssh-import-
  id. However the dependency is not declared on the ssh-import-id binary
  package.
  
-  * The fix that was merged for plucky adds python3-launchpadlib as a
+  * The fix that was merged for plucky adds python3-launchpadlib as a
  Depends fields for ssh-import-id.
  
  [ Test Plan ]
  
- 1. Using a minimal schroot:
-   a. Create a noble schroot using (mk-sbuild)
-      $ mk-sbuild noble --name noble-ssh-import-id
+ 1. Using a minimal schroot. If testing for oracular, substitute "noble" with 
"oracular":
+   a. Create a noble schroot (here using mk-sbuild)
+      $ mk-sbuild noble --name noble-ssh-import-id
  
-   b. Enter the (s)chroot (here on amd64), install the ssh-import-id package 
and run it:
-      $ schroot -c noble-ssh-import-id-amd64 -u root
-      (noble-ssh-import-id-amd64) # apt install ssh-import-id
-      (noble-ssh-import-id-amd64) # ssh-import-id
+   b. Enter the (s)chroot (here on amd64), install the ssh-import-id package 
and run it:
+      $ schroot -c noble-ssh-import-id-amd64 -u root
+      (noble-ssh-import-id-amd64) # apt install ssh-import-id
+      (noble-ssh-import-id-amd64) # ssh-import-id
  
  2. Using a core24 based snap
-   a. Clone a tests-snap repository that uses ssh-import-id:
-     $ git clone https://git.launchpad.net/~ogayot/+git/ssh-import-id-test-snap
-   b. Build the snap:
-     $ snapcraft pack
-   c. Install the snap:
-     $ sudo snap install --devmode testsnap_0.1_amd64.snap
-   d. Run the snap and observe the result:
-     $ testsnap lp:ogayot
+   a. Clone a tests-snap repository that uses ssh-import-id:
+     $ git clone https://git.launchpad.net/~ogayot/+git/ssh-import-id-test-snap
+   b. Build the snap:
+     $ snapcraft pack
+   c. Install the snap:
+     $ sudo snap install --devmode testsnap_0.1_amd64.snap
+   d. Run the snap and observe the result:
+     $ testsnap lp:ogayot
  
  [ Where problems could occur ]
  
-  * The upload introduces a new dependency on python3-launchpadlib. This
+  * The upload introduces a new dependency on python3-launchpadlib. This
  means that upgrading a system that was previously affected (i.e., ssh-
  import-id was installed but python3-launchpadlib wasn't), will pull
  python3-launchpadlib and other transitive dependencies. While this is
  required to fix ssh-import-id, the extra "cost" might come as a surprise
  for some users when upgrading their system.
  
  [ Other Info ]
  
-  * The regression was introduced in bug 1745538
+  * The regression was introduced in bug 1745538
  
  [ Original description ]
  
  After installing ssh-import-id in a schroot on noble, running it fails:
  
  # ssh-import-id ogayot
  Traceback (most recent call last):
    File "/usr/bin/ssh-import-id", line 33, in <module>
      sys.exit(load_entry_point('ssh-import-id==5.11', 'console_scripts', 
'ssh-import-id')())
               
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/bin/ssh-import-id", line 25, in importlib_load_entry_point
      return next(matches).load()
             ^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
      module = import_module(match.group('module'))
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module
      return _bootstrap._gcd_import(name[level:], package, level)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
    File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
    File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
    File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
    File "<frozen importlib._bootstrap_external>", line 995, in exec_module
    File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
    File "/usr/lib/python3/dist-packages/ssh_import_id/__init__.py", line 33, 
in <module>
      from launchpadlib.launchpad import Launchpad
  ModuleNotFoundError: No module named 'launchpadlib'
  
  This appears to be a regression caused by bug 1745538 ; adding support
  for launchpad teams.
  
  Looking at the code, we have python3-launchpadlib as a build-depends but
  not a depends on the binary package.

** Description changed:

  [ Impact ]
  
   * After installing the ssh-import-id package on a noble schroot (or any 
minimal environment where the python3-launchpadlib package is not installed), 
running the command `ssh-import-id` (no argument needed to demonstrate the 
issue) fails with the following error:
  > [...]
  > ModuleNotFoundError: No module named 'launchpadlib'.
  This is also a problem when building a core24 snap that uses `ssh-import-id` 
as a staged package.
  
  As it turns out, the new feature introduced by bug 1745538 made the
  launchpadlib python module a required runtime dependency of ssh-import-
  id. However the dependency is not declared on the ssh-import-id binary
  package.
  
   * The fix that was merged for plucky adds python3-launchpadlib as a
- Depends fields for ssh-import-id.
+ Depends field for ssh-import-id.
  
  [ Test Plan ]
  
  1. Using a minimal schroot. If testing for oracular, substitute "noble" with 
"oracular":
    a. Create a noble schroot (here using mk-sbuild)
       $ mk-sbuild noble --name noble-ssh-import-id
  
    b. Enter the (s)chroot (here on amd64), install the ssh-import-id package 
and run it:
       $ schroot -c noble-ssh-import-id-amd64 -u root
       (noble-ssh-import-id-amd64) # apt install ssh-import-id
       (noble-ssh-import-id-amd64) # ssh-import-id
  
  2. Using a core24 based snap
    a. Clone a tests-snap repository that uses ssh-import-id:
      $ git clone https://git.launchpad.net/~ogayot/+git/ssh-import-id-test-snap
    b. Build the snap:
      $ snapcraft pack
    c. Install the snap:
      $ sudo snap install --devmode testsnap_0.1_amd64.snap
    d. Run the snap and observe the result:
      $ testsnap lp:ogayot
  
  [ Where problems could occur ]
  
   * The upload introduces a new dependency on python3-launchpadlib. This
  means that upgrading a system that was previously affected (i.e., ssh-
  import-id was installed but python3-launchpadlib wasn't), will pull
  python3-launchpadlib and other transitive dependencies. While this is
  required to fix ssh-import-id, the extra "cost" might come as a surprise
  for some users when upgrading their system.
  
  [ Other Info ]
  
   * The regression was introduced in bug 1745538
  
  [ Original description ]
  
  After installing ssh-import-id in a schroot on noble, running it fails:
  
  # ssh-import-id ogayot
  Traceback (most recent call last):
    File "/usr/bin/ssh-import-id", line 33, in <module>
      sys.exit(load_entry_point('ssh-import-id==5.11', 'console_scripts', 
'ssh-import-id')())
               
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/bin/ssh-import-id", line 25, in importlib_load_entry_point
      return next(matches).load()
             ^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
      module = import_module(match.group('module'))
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.12/importlib/__init__.py", line 90, in import_module
      return _bootstrap._gcd_import(name[level:], package, level)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
    File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
    File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
    File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
    File "<frozen importlib._bootstrap_external>", line 995, in exec_module
    File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
    File "/usr/lib/python3/dist-packages/ssh_import_id/__init__.py", line 33, 
in <module>
      from launchpadlib.launchpad import Launchpad
  ModuleNotFoundError: No module named 'launchpadlib'
  
  This appears to be a regression caused by bug 1745538 ; adding support
  for launchpad teams.
  
  Looking at the code, we have python3-launchpadlib as a build-depends but
  not a depends on the binary package.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2085898

Title:
  [SRU] ssh-import-id fails if python3-launchpadlib is not installed

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ssh-import-id/+bug/2085898/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to