Bug 264093

Summary: multimedia/py-guessit: 3.4.3 breaks news/sabnzbdplus 3.5.3
Product: Ports & Packages Reporter: John R <gamer>
Component: Individual Port(s)Assignee: Nuno Teixeira <eduardo>
Status: Closed FIXED    
Severity: Affects Many People CC: eduardo, gamer, james
Priority: --- Keywords: needs-qa
Version: LatestFlags: koobs: maintainer-feedback? (eduardo)
james: maintainer-feedback+
Hardware: Any   
OS: Any   
See Also: https://github.com/sabnzbd/sabnzbd/issues/1984
Attachments:
Description Flags
Add missing devel/py-importlib-resources to multimedia/py-guessit
none
Poudriere build log none

Description John R 2022-05-20 04:11:08 UTC
Recent upgrade of py-guessit from 3.3.1 to 3.4.3 causes sabnzbd to fail to start.
Sabnzbd shows the following in its log.
Not all required Python modules are available" - "Missing module: None"
The bottom comment on this post suggested downgrading guessit.
https://github.com/sabnzbd/sabnzbd/issues/1984
Once I downgraded py-guessit to 3.3.1, sabnzbd started working again.
Comment 1 Nuno Teixeira freebsd_committer freebsd_triage 2022-05-20 08:52:58 UTC
Hi,

Use version 3.3.1 for now and I will wait a little more to see if I get more problems related to latest version.

I will keep this PR open and if you find a solution please let me know.

If there is no solution, maybe I need to do a revert to 3.3.1.

Cheers,

Nuno
Comment 2 James French 2022-05-20 09:19:45 UTC
I got this one via email this afternoon too and was still trying to work out which module was causing the issues (SabNZBD will tell you if it's missing it's direct dependencies - it can be less helpful when a dependency is missing dependencies)

It looks like multimedia/py-guessit is missing a (new) dependency on devel/py-importlib-resources:

Python 3.8.13 (default, May  9 2022, 20:01:42) 
[Clang 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c on freebsd13
Type "help", "copyright", "credits" or "license" for more information.
>>> import guessit
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/properties/website.py", line 7, in <module>
    from importlib.resources import files  # @UnresolvedImport
ImportError: cannot import name 'files' from 'importlib.resources' (/usr/local/lib/python3.8/importlib/resources.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.8/site-packages/guessit/__init__.py", line 8, in <module>
    from .api import guessit, GuessItApi
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 17, in <module>
    from .rules import rebulk_builder
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/__init__.py", line 17, in <module>
    from .properties.website import website
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/properties/website.py", line 9, in <module>
    from importlib_resources import files  # @UnresolvedImport
ModuleNotFoundError: No module named 'importlib_resources'

If I manually install devel/py-importlib-resources both ports are happy again.

I'll spin up a patch for multimedia/py-guessit and post in a minute.
Comment 3 James French 2022-05-20 09:25:19 UTC
Created attachment 234047 [details]
Add missing devel/py-importlib-resources to multimedia/py-guessit

multimedia/py-guessit 3.4.3 is missing a (new) dependency devel/py-importlib-resources which prevents it from importing.
Comment 4 James French 2022-05-20 09:27:50 UTC
Created attachment 234048 [details]
Poudriere build log
Comment 5 commit-hook freebsd_committer freebsd_triage 2022-05-20 19:07:19 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f61f2956388fb29e1a5c1fa757980e459d0a592a

commit f61f2956388fb29e1a5c1fa757980e459d0a592a
Author:     John R <gamer@ryppn.com>
AuthorDate: 2022-05-20 19:02:49 +0000
Commit:     Nuno Teixeira <eduardo@FreeBSD.org>
CommitDate: 2022-05-20 19:06:34 +0000

    multimedia/py-guessit: 3.4.3: add missing dependency

     - add missing dep importlib-resources

    PR:             264093

 multimedia/py-guessit/Makefile | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
Comment 6 Nuno Teixeira freebsd_committer freebsd_triage 2022-05-20 19:37:09 UTC
Commited, thanks!