** Description changed:

+ [ Impact ]
+ 
+  * There is a bug in cmd2 v0.8.5 where an exception is thrown when GTK3
+    libraries are not installed. This causes Python applications using
+    cmd2 to crash unexpectedly
+ 
+  * This patch backports a fix from upstream that handles that expection
+    gracefully, allowing applications to function properly.
+ 
+  * The workaround to this was to install GTK3, which is not ideal as the
+    Python applications are command line tools, not graphical
+ 
+ [ Test Plan ]
+ 
+  * Deploy focal
+ 
+  * Install an application that has cmd2 as a dependency
+    e.g. python3-openstackclient
+ 
+  * Run command that uses cmd2: `openstack server list`
+ 
+ [ Where problems could occur ]
+ 
+  * This changes the error handling for a library that is used by many
+    Python applications. Some of these applications could rely on the 
+    existing behavior (a ValueError exception being thrown) to detect
+    certain configurations and change their behavior accordingly.
+ 
+  * This would result in those applications failing under certain use
+    cases. For example, the configuration in question is a headless
+    Linux system without GTK libraries installed.
+ 
+ [ Original bug description ]
+ 
  Openstack release: Wallaby
  OS: Ubuntu 20.04 server edition
- After installation of python3-openstackclient from apt, while setting up 
user, roles and project, I executed following command: 
+ After installation of python3-openstackclient from apt, while setting up 
user, roles and project, I executed following command:
  openstack domain create --description "An Example Domain" example
  
- Error: 
+ Error:
  Traceback (most recent call last):
    File "/usr/bin/openstack", line 6, in <module>
      from openstackclient.shell import main
    File "/usr/lib/python3/dist-packages/openstackclient/shell.py", line 23, in 
<module>
      from osc_lib import shell
    File "/usr/lib/python3/dist-packages/osc_lib/shell.py", line 24, in <module>
      from cliff import app
    File "/usr/lib/python3/dist-packages/cliff/app.py", line 22, in <module>
      import cmd2
    File "/usr/lib/python3/dist-packages/cmd2.py", line 585, in <module>
      _ = pyperclip.paste()
    File "/usr/lib/python3/dist-packages/pyperclip/__init__.py", line 667, in 
lazy_load_stub_paste
      copy, paste = determine_clipboard()
    File "/usr/lib/python3/dist-packages/pyperclip/__init__.py", line 558, in 
determine_clipboard
      return init_gi_clipboard()
    File "/usr/lib/python3/dist-packages/pyperclip/__init__.py", line 167, in 
init_gi_clipboard
      gi.require_version('Gtk', '3.0')
    File "/usr/lib/python3/dist-packages/gi/__init__.py", line 129, in 
require_version
      raise ValueError('Namespace %s not available' % namespace)
  
  Had to install GTK3 to make openstack commands work but it is taking
  huge time to get a response to the commands. The wait time after firing
  any openstack cli command is around 30 seconds.
  
  Anybody faced the issue? What is the fix for it if it exists?

** Patch added: "lp1945661.debdiff"
   
https://bugs.launchpad.net/ubuntu/+source/cmd2/+bug/1945661/+attachment/5801946/+files/lp1945661.debdiff

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

Title:
  openstack commands fail with GTK3 error

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cmd2/+bug/1945661/+subscriptions


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

Reply via email to