Bug 1216951 - Package thonny misses dependency on wheel
Summary: Package thonny misses dependency on wheel
Status: RESOLVED FIXED
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Other (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Malcolm Lewis
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-11-08 08:33 UTC by Thomas Wagner
Modified: 2023-11-17 23:07 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Wagner 2023-11-08 08:33:35 UTC
Tumbleweed 20231101
When trying to start the Thonny's plugin-manager (Tools->Manage plugins...), Thonny fails with
``` 
Traceback (most recent call last):
  File "/usr/lib64/python3.11/tkinter/__init__.py", line 1948, in __call__
    return self.func(*args)
           ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/thonny/workbench.py", line 1109, in dispatch_from_menu
    dispatch(None)
  File "/usr/lib/python3.11/site-packages/thonny/workbench.py", line 1035, in dispatch
    handler()
  File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line 1598, in open_plugins_pip_gui
    pg = PluginsPipDialog(get_workbench())
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line 1077, in __init__
    PipDialog.__init__(self, master)
  File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line 68, in __init__
    self._start_update_list()
  File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line 1094, in _start_update_list
    import pkg_resources
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 3327, in <module>
    @_call_aside
     ^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 3302, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 3340, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 631, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 968, in require
    needed = self.resolve(parse_requirements(requirements))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 829, in resolve
    dist = self._resolve_dist(
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line 870, in _resolve_dist
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'wheel' distribution was not found and is required by thonny

```

Seems like Thonny's plugin manager requires wheel, which is not present as a requirement in the spec file of Thonny.
After doing `zypper in python311-wheel`, the plugin-manager can be started.

```
> zypper info thonny
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...


Informationen zu Paket thonny:
------------------------------
Repository         : Main Repository (OSS)
Name               : thonny
Version            : 4.1.1-1.1
Arch               : noarch
Anbieter           : openSUSE
Installierte Größe : 5,2 MiB
Installiert        : Ja
Status             : aktuell
Quellpaket         : thonny-4.1.1-1.1.src
Upstream-URL       : https://thonny.org/
Zusammenfassung    : Python IDE for beginners
Beschreibung       : 
    Thonny is a Python IDE meant for learning programming.
```
Comment 1 Malcolm Lewis 2023-11-17 23:07:03 UTC
(In reply to Thomas Wagner from comment #0)
> Tumbleweed 20231101
> When trying to start the Thonny's plugin-manager (Tools->Manage plugins...),
> Thonny fails with
> ``` 
> Traceback (most recent call last):
>   File "/usr/lib64/python3.11/tkinter/__init__.py", line 1948, in __call__
>     return self.func(*args)
>            ^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3.11/site-packages/thonny/workbench.py", line 1109,
> in dispatch_from_menu
>     dispatch(None)
>   File "/usr/lib/python3.11/site-packages/thonny/workbench.py", line 1035,
> in dispatch
>     handler()
>   File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line
> 1598, in open_plugins_pip_gui
>     pg = PluginsPipDialog(get_workbench())
>          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line
> 1077, in __init__
>     PipDialog.__init__(self, master)
>   File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line
> 68, in __init__
>     self._start_update_list()
>   File "/usr/lib/python3.11/site-packages/thonny/plugins/pip_gui.py", line
> 1094, in _start_update_list
>     import pkg_resources
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 3327, in <module>
>     @_call_aside
>      ^^^^^^^^^^^
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 3302, in _call_aside
>     f(*args, **kwargs)
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 3340, in _initialize_master_working_set
>     working_set = WorkingSet._build_master()
>                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 631, in _build_master
>     ws.require(__requires__)
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 968, in require
>     needed = self.resolve(parse_requirements(requirements))
>              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 829, in resolve
>     dist = self._resolve_dist(
>            ^^^^^^^^^^^^^^^^^^^
>   File "/usr/lib/python3.11/site-packages/pkg_resources/__init__.py", line
> 870, in _resolve_dist
>     raise DistributionNotFound(req, requirers)
> pkg_resources.DistributionNotFound: The 'wheel' distribution was not found
> and is required by thonny
> 
> ```
> 
> Seems like Thonny's plugin manager requires wheel, which is not present as a
> requirement in the spec file of Thonny.
> After doing `zypper in python311-wheel`, the plugin-manager can be started.
> 
> ```
> > zypper info thonny
> Repository-Daten werden geladen...
> Installierte Pakete werden gelesen...
> 
> 
> Informationen zu Paket thonny:
> ------------------------------
> Repository         : Main Repository (OSS)
> Name               : thonny
> Version            : 4.1.1-1.1
> Arch               : noarch
> Anbieter           : openSUSE
> Installierte Größe : 5,2 MiB
> Installiert        : Ja
> Status             : aktuell
> Quellpaket         : thonny-4.1.1-1.1.src
> Upstream-URL       : https://thonny.org/
> Zusammenfassung    : Python IDE for beginners
> Beschreibung       : 
>     Thonny is a Python IDE meant for learning programming.
> ```

@Thomas Thanks for the report, fixed and submitted an update on SR <https://build.opensuse.org/request/show/1127376>