2024-05-08 20:02:07 |
lucone |
description |
In kubuntu 24.04 after installing gourmand it doesn't start.
If I launch it from cli I have the following output :
gourmand
args = Namespace(db_url='', threads=False, gourmanddir='', thread_debug_interval=5.0, thread_debug=False, debug_file='', time=False, debug=None)
Traceback (most recent call last):
File "/usr/bin/gourmand", line 33, in <module>
sys.exit(load_entry_point('gourmand==1.0.0', 'gui_scripts', 'gourmand')())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/gourmand", 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/gourmand/main.py", line 9, in <module>
from gourmand import (__version__, batchEditor, convert, plugin, plugin_gui,
File "/usr/lib/python3/dist-packages/gourmand/reccard.py", line 33, in <module>
from gourmand.recindex import RecIndex
File "/usr/lib/python3/dist-packages/gourmand/recindex.py", line 17, in <module>
from .importers.clipboard_importer import import_from_drag_and_drop
File "/usr/lib/python3/dist-packages/gourmand/importers/clipboard_importer.py", line 8, in <module>
from gourmand.importers.importManager import ImportManager
File "/usr/lib/python3/dist-packages/gourmand/importers/importManager.py", line 10, in <module>
from gourmand.importers.web_importer import import_urls, supported_sites
File "/usr/lib/python3/dist-packages/gourmand/importers/web_importer.py", line 6, in <module>
from recipe_scrapers import SCRAPERS, scrape_me
File "/usr/lib/python3/dist-packages/recipe_scrapers/__init__.py", line 6, in <module>
from ._abstract import AbstractScraper
File "/usr/lib/python3/dist-packages/recipe_scrapers/_abstract.py", line 13, in <module>
from ._schemaorg import SchemaOrg
File "/usr/lib/python3/dist-packages/recipe_scrapers/_schemaorg.py", line 8, in <module>
import extruct
File "/usr/lib/python3/dist-packages/extruct/__init__.py", line 1, in <module>
from ._extruct import SYNTAXES, extract
File "/usr/lib/python3/dist-packages/extruct/_extruct.py", line 9, in <module>
from extruct.dublincore import DublinCoreExtractor
File "/usr/lib/python3/dist-packages/extruct/dublincore.py", line 6, in <module>
from extruct.utils import parse_html
File "/usr/lib/python3/dist-packages/extruct/utils.py", line 5, in <module>
from extruct.xmldom import XmlDomHTMLParser
File "/usr/lib/python3/dist-packages/extruct/xmldom.py", line 9, in <module>
from lxml.etree import (
ImportError: cannot import name '_ElementStringResult' from 'lxml.etree' (/usr/lib/python3/dist-packages/lxml/etree.cpython-312-x86_64-linux-gnu.so). Did you mean: '_ElementUnicodeResult'? |
In kubuntu 24.04 after installing gourmand it doesn't start.
If I launch it from cli I have the following output :
gourmand
args = Namespace(db_url='', threads=False, gourmanddir='', thread_debug_interval=5.0, thread_debug=False, debug_file='', time=False, debug=None)
Traceback (most recent call last):
File "/usr/bin/gourmand", line 33, in <module>
sys.exit(load_entry_point('gourmand==1.0.0', 'gui_scripts', 'gourmand')())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/gourmand", 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/gourmand/main.py", line 9, in <module>
from gourmand import (__version__, batchEditor, convert, plugin, plugin_gui,
File "/usr/lib/python3/dist-packages/gourmand/reccard.py", line 33, in <module>
from gourmand.recindex import RecIndex
File "/usr/lib/python3/dist-packages/gourmand/recindex.py", line 17, in <module>
from .importers.clipboard_importer import import_from_drag_and_drop
File "/usr/lib/python3/dist-packages/gourmand/importers/clipboard_importer.py", line 8, in <module>
from gourmand.importers.importManager import ImportManager
File "/usr/lib/python3/dist-packages/gourmand/importers/importManager.py", line 10, in <module>
from gourmand.importers.web_importer import import_urls, supported_sites
File "/usr/lib/python3/dist-packages/gourmand/importers/web_importer.py", line 6, in <module>
from recipe_scrapers import SCRAPERS, scrape_me
File "/usr/lib/python3/dist-packages/recipe_scrapers/__init__.py", line 6, in <module>
from ._abstract import AbstractScraper
File "/usr/lib/python3/dist-packages/recipe_scrapers/_abstract.py", line 13, in <module>
from ._schemaorg import SchemaOrg
File "/usr/lib/python3/dist-packages/recipe_scrapers/_schemaorg.py", line 8, in <module>
import extruct
File "/usr/lib/python3/dist-packages/extruct/__init__.py", line 1, in <module>
from ._extruct import SYNTAXES, extract
File "/usr/lib/python3/dist-packages/extruct/_extruct.py", line 9, in <module>
from extruct.dublincore import DublinCoreExtractor
File "/usr/lib/python3/dist-packages/extruct/dublincore.py", line 6, in <module>
from extruct.utils import parse_html
File "/usr/lib/python3/dist-packages/extruct/utils.py", line 5, in <module>
from extruct.xmldom import XmlDomHTMLParser
File "/usr/lib/python3/dist-packages/extruct/xmldom.py", line 9, in <module>
from lxml.etree import (
ImportError: cannot import name '_ElementStringResult' from 'lxml.etree' (/usr/lib/python3/dist-packages/lxml/etree.cpython-312-x86_64-linux-gnu.so). Did you mean: '_ElementUnicodeResult'?
---
ProblemType: Bug
ApportVersion: 2.28.1-0ubuntu3
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: KDE
DistroRelease: Ubuntu 24.04
Package: gourmand 1.1.0+really1.1.0~rc3-3
PackageArchitecture: all
ProcVersionSignature: Ubuntu 6.8.0-31.31-generic 6.8.1
Tags: noble third-party-packages
Uname: Linux 6.8.0-31-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
_MarkForUpload: True |
|
2024-05-21 21:36:05 |
Sudip Mukherjee |
description |
In kubuntu 24.04 after installing gourmand it doesn't start.
If I launch it from cli I have the following output :
gourmand
args = Namespace(db_url='', threads=False, gourmanddir='', thread_debug_interval=5.0, thread_debug=False, debug_file='', time=False, debug=None)
Traceback (most recent call last):
File "/usr/bin/gourmand", line 33, in <module>
sys.exit(load_entry_point('gourmand==1.0.0', 'gui_scripts', 'gourmand')())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/gourmand", 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/gourmand/main.py", line 9, in <module>
from gourmand import (__version__, batchEditor, convert, plugin, plugin_gui,
File "/usr/lib/python3/dist-packages/gourmand/reccard.py", line 33, in <module>
from gourmand.recindex import RecIndex
File "/usr/lib/python3/dist-packages/gourmand/recindex.py", line 17, in <module>
from .importers.clipboard_importer import import_from_drag_and_drop
File "/usr/lib/python3/dist-packages/gourmand/importers/clipboard_importer.py", line 8, in <module>
from gourmand.importers.importManager import ImportManager
File "/usr/lib/python3/dist-packages/gourmand/importers/importManager.py", line 10, in <module>
from gourmand.importers.web_importer import import_urls, supported_sites
File "/usr/lib/python3/dist-packages/gourmand/importers/web_importer.py", line 6, in <module>
from recipe_scrapers import SCRAPERS, scrape_me
File "/usr/lib/python3/dist-packages/recipe_scrapers/__init__.py", line 6, in <module>
from ._abstract import AbstractScraper
File "/usr/lib/python3/dist-packages/recipe_scrapers/_abstract.py", line 13, in <module>
from ._schemaorg import SchemaOrg
File "/usr/lib/python3/dist-packages/recipe_scrapers/_schemaorg.py", line 8, in <module>
import extruct
File "/usr/lib/python3/dist-packages/extruct/__init__.py", line 1, in <module>
from ._extruct import SYNTAXES, extract
File "/usr/lib/python3/dist-packages/extruct/_extruct.py", line 9, in <module>
from extruct.dublincore import DublinCoreExtractor
File "/usr/lib/python3/dist-packages/extruct/dublincore.py", line 6, in <module>
from extruct.utils import parse_html
File "/usr/lib/python3/dist-packages/extruct/utils.py", line 5, in <module>
from extruct.xmldom import XmlDomHTMLParser
File "/usr/lib/python3/dist-packages/extruct/xmldom.py", line 9, in <module>
from lxml.etree import (
ImportError: cannot import name '_ElementStringResult' from 'lxml.etree' (/usr/lib/python3/dist-packages/lxml/etree.cpython-312-x86_64-linux-gnu.so). Did you mean: '_ElementUnicodeResult'?
---
ProblemType: Bug
ApportVersion: 2.28.1-0ubuntu3
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: KDE
DistroRelease: Ubuntu 24.04
Package: gourmand 1.1.0+really1.1.0~rc3-3
PackageArchitecture: all
ProcVersionSignature: Ubuntu 6.8.0-31.31-generic 6.8.1
Tags: noble third-party-packages
Uname: Linux 6.8.0-31-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
_MarkForUpload: True |
[ Impact ]
gourmand is completely unusable and will fail immediately on execution with the error:
$ gourmand
args = Namespace(db_url='', threads=False, gourmanddir='', thread_debug_interval=5.0, thread_debug=False, debug_file='', time=False, debug=None)
Traceback (most recent call last):
File "/usr/bin/gourmand", line 33, in <module>
sys.exit(load_entry_point('gourmand==1.0.0', 'gui_scripts', 'gourmand')())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/gourmand", 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/gourmand/main.py", line 9, in <module>
from gourmand import (__version__, batchEditor, convert, plugin, plugin_gui,
File "/usr/lib/python3/dist-packages/gourmand/reccard.py", line 33, in <module>
from gourmand.recindex import RecIndex
File "/usr/lib/python3/dist-packages/gourmand/recindex.py", line 17, in <module>
from .importers.clipboard_importer import import_from_drag_and_drop
File "/usr/lib/python3/dist-packages/gourmand/importers/clipboard_importer.py", line 8, in <module>
from gourmand.importers.importManager import ImportManager
File "/usr/lib/python3/dist-packages/gourmand/importers/importManager.py", line 10, in <module>
from gourmand.importers.web_importer import import_urls, supported_sites
File "/usr/lib/python3/dist-packages/gourmand/importers/web_importer.py", line 6, in <module>
from recipe_scrapers import SCRAPERS, scrape_me
File "/usr/lib/python3/dist-packages/recipe_scrapers/__init__.py", line 6, in <module>
from ._abstract import AbstractScraper
File "/usr/lib/python3/dist-packages/recipe_scrapers/_abstract.py", line 13, in <module>
from ._schemaorg import SchemaOrg
File "/usr/lib/python3/dist-packages/recipe_scrapers/_schemaorg.py", line 8, in <module>
import extruct
File "/usr/lib/python3/dist-packages/extruct/__init__.py", line 1, in <module>
from ._extruct import SYNTAXES, extract
File "/usr/lib/python3/dist-packages/extruct/_extruct.py", line 9, in <module>
from extruct.dublincore import DublinCoreExtractor
File "/usr/lib/python3/dist-packages/extruct/dublincore.py", line 6, in <module>
from extruct.utils import parse_html
File "/usr/lib/python3/dist-packages/extruct/utils.py", line 5, in <module>
from extruct.xmldom import XmlDomHTMLParser
File "/usr/lib/python3/dist-packages/extruct/xmldom.py", line 9, in <module>
from lxml.etree import (
ImportError: cannot import name '_ElementStringResult' from 'lxml.etree' (/usr/lib/python3/dist-packages/lxml/etree.cpython-312-x86_64-linux-gnu.so). Did you mean: '_ElementUnicodeResult'?
Even though "gourmand" is affected but its caused by "python3-lxml" updating to 5.2.1-1 as FFE via #2060811. And that in turn affected python3-extruct which actually caused all the error.
[ Test Plan ]
1. install gourmand
2. Execute gourmand
If the package is not fixed it will result in the above error.
With the fixed package it will display the recipe manager with two example recipes in it.
[ Where problems could occur ]
This upstream patch is defining its own "_ElementStringResult" for compatibility. Looking at old lxml code, the definition is same as what they had at https://github.com/lxml/lxml/blob/lxml-4.9.4/src/lxml/extensions.pxi#L741 so there should not be a regression for this. But again, lxml has removed the definition and there might be some other change in lxml which is part of this removal and so there is always a chance of regression.
But again, the package is completely unusable now, there can not be a greather regression than what we currently have.
[ Other Info ]
1. The "_ElementStringResult" was a private classes of lxml and should not have been used by python3-extruct. Ref: https://bugs.launchpad.net/bugs/2059793
2. I did a apt-cache rdepends to find out other packages that might be affected by the issue of python3-extruct. But looks like "gourmand" is the only package which depends on python3-extruct.
[ Original Bug Description ]
In kubuntu 24.04 after installing gourmand it doesn't start.
If I launch it from cli I have the following output :
gourmand
args = Namespace(db_url='', threads=False, gourmanddir='', thread_debug_interval=5.0, thread_debug=False, debug_file='', time=False, debug=None)
Traceback (most recent call last):
File "/usr/bin/gourmand", line 33, in <module>
sys.exit(load_entry_point('gourmand==1.0.0', 'gui_scripts', 'gourmand')())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/bin/gourmand", 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/gourmand/main.py", line 9, in <module>
from gourmand import (__version__, batchEditor, convert, plugin, plugin_gui,
File "/usr/lib/python3/dist-packages/gourmand/reccard.py", line 33, in <module>
from gourmand.recindex import RecIndex
File "/usr/lib/python3/dist-packages/gourmand/recindex.py", line 17, in <module>
from .importers.clipboard_importer import import_from_drag_and_drop
File "/usr/lib/python3/dist-packages/gourmand/importers/clipboard_importer.py", line 8, in <module>
from gourmand.importers.importManager import ImportManager
File "/usr/lib/python3/dist-packages/gourmand/importers/importManager.py", line 10, in <module>
from gourmand.importers.web_importer import import_urls, supported_sites
File "/usr/lib/python3/dist-packages/gourmand/importers/web_importer.py", line 6, in <module>
from recipe_scrapers import SCRAPERS, scrape_me
File "/usr/lib/python3/dist-packages/recipe_scrapers/__init__.py", line 6, in <module>
from ._abstract import AbstractScraper
File "/usr/lib/python3/dist-packages/recipe_scrapers/_abstract.py", line 13, in <module>
from ._schemaorg import SchemaOrg
File "/usr/lib/python3/dist-packages/recipe_scrapers/_schemaorg.py", line 8, in <module>
import extruct
File "/usr/lib/python3/dist-packages/extruct/__init__.py", line 1, in <module>
from ._extruct import SYNTAXES, extract
File "/usr/lib/python3/dist-packages/extruct/_extruct.py", line 9, in <module>
from extruct.dublincore import DublinCoreExtractor
File "/usr/lib/python3/dist-packages/extruct/dublincore.py", line 6, in <module>
from extruct.utils import parse_html
File "/usr/lib/python3/dist-packages/extruct/utils.py", line 5, in <module>
from extruct.xmldom import XmlDomHTMLParser
File "/usr/lib/python3/dist-packages/extruct/xmldom.py", line 9, in <module>
from lxml.etree import (
ImportError: cannot import name '_ElementStringResult' from 'lxml.etree' (/usr/lib/python3/dist-packages/lxml/etree.cpython-312-x86_64-linux-gnu.so). Did you mean: '_ElementUnicodeResult'?
---
ProblemType: Bug
ApportVersion: 2.28.1-0ubuntu3
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: KDE
DistroRelease: Ubuntu 24.04
Package: gourmand 1.1.0+really1.1.0~rc3-3
PackageArchitecture: all
ProcVersionSignature: Ubuntu 6.8.0-31.31-generic 6.8.1
Tags: noble third-party-packages
Uname: Linux 6.8.0-31-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
_MarkForUpload: True |
|