Package: bpython
Version: 0.18-3
I recently want to use dateparser module in bpython, which produces
this:
bpython version 0.18 on top of Python 3.7.6 /usr/bin/python3
>>> import dateparser
Traceback (most recent call last):
File "<input>", line 1, in <module>
import dateparser
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in
_find_and_load_unlocked File "<frozen importlib._bootstrap>", line 668,
in _load_unlocked File "<frozen importlib._bootstrap>", line 638, in
_load_backward_compatible File
"/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py", line
243, in load_module module = self.loader.load_module(name) File
"/usr/lib/python3/dist-packages/dateparser/__init__.py", line 4, in
<module> from .date import DateDataParser File "<frozen
importlib._bootstrap>", line 983, in _find_and_load File "<frozen
importlib._bootstrap>", line 967, in _find_and_load_unlocked File
"<frozen importlib._bootstrap>", line 668, in _load_unlocked File
"<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
line 243, in load_module module = self.loader.load_module(name) File
"/usr/lib/python3/dist-packages/dateparser/date.py", line 13, in
<module> from dateparser.date_parser import date_parser File "<frozen
importlib._bootstrap>", line 983, in _find_and_load File "<frozen
importlib._bootstrap>", line 967, in _find_and_load_unlocked File
"<frozen importlib._bootstrap>", line 668, in _load_unlocked File
"<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
line 243, in load_module module = self.loader.load_module(name) File
"/usr/lib/python3/dist-packages/dateparser/date_parser.py", line 11, in
<module> from .parser import parse File "<frozen
importlib._bootstrap>", line 983, in _find_and_load File "<frozen
importlib._bootstrap>", line 967, in _find_and_load_unlocked File
"<frozen importlib._bootstrap>", line 668, in _load_unlocked File
"<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
line 243, in load_module module = self.loader.load_module(name) File
"/usr/lib/python3/dist-packages/dateparser/parser.py", line 10, in
<module> from dateparser.utils.strptime import strptime File "<frozen
importlib._bootstrap>", line 983, in _find_and_load File "<frozen
importlib._bootstrap>", line 967, in _find_and_load_unlocked File
"<frozen importlib._bootstrap>", line 668, in _load_unlocked File
"<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
line 243, in load_module module = self.loader.load_module(name) File
"/usr/lib/python3/dist-packages/dateparser/utils/strptime.py", line 69,
in <module> __strptime = patch_strptime() File
"/usr/lib/python3/dist-packages/dateparser/utils/strptime.py", line 40,
in patch_strptime _strptime_spec.loader.exec_module(_strptime)
AttributeError: 'ImportLoader' object has no attribute 'exec_module'
But the module works in raw python (the same machine):
python3
Python 3.7.6 (default, Jan 19 2020, 22:34:52)
[GCC 9.2.1 20200117] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dateparser
>>> dateparser.parse('12/12/12')
datetime.datetime(2012, 12, 12, 0, 0)
>>>
regards
--
Slavko
http://slavino.sk
Acknowledgement sent
to Sebastian Ramacher <[email protected]>:
Extra info received and forwarded to list.
(Thu, 12 Mar 2020 19:54:03 GMT) (full text, mbox, link).
Control: tags -1 + moreinfo
Hi
On 2020-03-06 12:31:10, Slavko wrote:
> Package: bpython
> Version: 0.18-3
>
> I recently want to use dateparser module in bpython, which produces
> this:
>
> bpython version 0.18 on top of Python 3.7.6 /usr/bin/python3
> >>> import dateparser
> Traceback (most recent call last):
> File "<input>", line 1, in <module>
> import dateparser
> File "<frozen importlib._bootstrap>", line 983, in _find_and_load
> File "<frozen importlib._bootstrap>", line 967, in
> _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 668,
> in _load_unlocked File "<frozen importlib._bootstrap>", line 638, in
> _load_backward_compatible File
> "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py", line
> 243, in load_module module = self.loader.load_module(name) File
> "/usr/lib/python3/dist-packages/dateparser/__init__.py", line 4, in
> <module> from .date import DateDataParser File "<frozen
> importlib._bootstrap>", line 983, in _find_and_load File "<frozen
> importlib._bootstrap>", line 967, in _find_and_load_unlocked File
> "<frozen importlib._bootstrap>", line 668, in _load_unlocked File
> "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
> File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
> line 243, in load_module module = self.loader.load_module(name) File
> "/usr/lib/python3/dist-packages/dateparser/date.py", line 13, in
> <module> from dateparser.date_parser import date_parser File "<frozen
> importlib._bootstrap>", line 983, in _find_and_load File "<frozen
> importlib._bootstrap>", line 967, in _find_and_load_unlocked File
> "<frozen importlib._bootstrap>", line 668, in _load_unlocked File
> "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
> File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
> line 243, in load_module module = self.loader.load_module(name) File
> "/usr/lib/python3/dist-packages/dateparser/date_parser.py", line 11, in
> <module> from .parser import parse File "<frozen
> importlib._bootstrap>", line 983, in _find_and_load File "<frozen
> importlib._bootstrap>", line 967, in _find_and_load_unlocked File
> "<frozen importlib._bootstrap>", line 668, in _load_unlocked File
> "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
> File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
> line 243, in load_module module = self.loader.load_module(name) File
> "/usr/lib/python3/dist-packages/dateparser/parser.py", line 10, in
> <module> from dateparser.utils.strptime import strptime File "<frozen
> importlib._bootstrap>", line 983, in _find_and_load File "<frozen
> importlib._bootstrap>", line 967, in _find_and_load_unlocked File
> "<frozen importlib._bootstrap>", line 668, in _load_unlocked File
> "<frozen importlib._bootstrap>", line 638, in _load_backward_compatible
> File "/usr/lib/python3/dist-packages/bpython/curtsiesfrontend/repl.py",
> line 243, in load_module module = self.loader.load_module(name) File
> "/usr/lib/python3/dist-packages/dateparser/utils/strptime.py", line 69,
> in <module> __strptime = patch_strptime() File
> "/usr/lib/python3/dist-packages/dateparser/utils/strptime.py", line 40,
> in patch_strptime _strptime_spec.loader.exec_module(_strptime)
> AttributeError: 'ImportLoader' object has no attribute 'exec_module'
I've installed python3-dateparser and tried to import dateparser in
bpython3 and everything worked fine. Do you have anything else installed
that might interfere with bpython?
Best
> But the module works in raw python (the same machine):
>
> python3
> Python 3.7.6 (default, Jan 19 2020, 22:34:52)
> [GCC 9.2.1 20200117] on linux
> Type "help", "copyright", "credits" or "license" for more information.
> >>> import dateparser
> >>> dateparser.parse('12/12/12')
> datetime.datetime(2012, 12, 12, 0, 0)
> >>>
>
> regards
>
> --
> Slavko
> http://slavino.sk
--
Sebastian Ramacher
Acknowledgement sent
to Slavko <[email protected]>:
Extra info received and forwarded to list. Copy sent to Sebastian Ramacher <[email protected]>.
(Fri, 13 Mar 2020 13:27:02 GMT) (full text, mbox, link).
Hi,
Dňa Thu, 12 Mar 2020 20:51:29 +0100 Sebastian Ramacher
<[email protected]> napísal:
> I've installed python3-dateparser and tried to import dateparser in
> bpython3 and everything worked fine. Do you have anything else
> installed that might interfere with bpython?
I have a lot of python packages, no body know which one can (or
cannot) to interact and IMO list them will not be useful yet.
I tried it today in one existing VBox VM with lesser python's
packages set, but with the same result. I will try to identify problem
on fresh VM in this weekend.
--
Slavko
http://slavino.sk
Acknowledgement sent
to Slavko <[email protected]>:
Extra info received and forwarded to list. Copy sent to Sebastian Ramacher <[email protected]>.
(Fri, 13 Mar 2020 14:51:02 GMT) (full text, mbox, link).
Hi,
finally it was more easy than i expect. I created fresh testing LXC
container, with:
lxc-create --template debian --name bpython -- -r testing --flush-cache
I install only mc, aptitude & bash-completion and then:
apt install bpython python3-dateparser
And after import dateparser in bpython, the traceback appears again,
thus no other python packages are involved, only installed dependencies:
aptitude search ~ipython -F "%v %p"
0.18-3 bpython
3.7.5-3 libpython3-stdlib
3.7.6-1+b1 libpython3.7-minimal
3.7.6-1+b1 libpython3.7-stdlib
3.7.5-3 python3
1.8.1-1.3 python3-argcomplete
0.26.2-1.1 python3-argh
1.6-3 python3-blessings
2019.11.28-1 python3-certifi
3.0.4-4 python3-chardet
0.3.1-1 python3-curtsies
0.7.2-1 python3-dateparser
2.7.3-3 python3-dateutil
3.8.2-2 python3-distutils
0.4.15-4 python3-greenlet
2.6-2 python3-idna
3.8.2-2 python3-lib2to3
3.7.5-3 python3-minimal
0.1.2-4 python3-pathtools
44.0.0-1 python3-pkg-resources
2.3.1+dfsg-1 python3-pygments
0.1.20190819-2 python3-regex
2.22.0-2 python3-requests
44.0.0-1 python3-setuptools
1.14.0-2 python3-six
2019.3-1 python3-tz
2.1~b1-2 python3-tzlocal
1.25.8-1 python3-urllib3
0.9.0-3 python3-watchdog
0.1.8+dfsg1-3 python3-wcwidth
5.3-2 python3-yaml
3.7.6-1+b1 python3.7
3.7.6-1+b1 python3.7-minimal
all are from official repo only:
cat /etc/apt/sources.list
deb http://deb.debian.org/debian testing main contrib non-free
deb http://security.debian.org testing-security main contrib non-free
The only difference, which i found is this (from dataparser source),
without any other imports:
in bpython:
>>> import importlib.util
>>> importlib.util.find_spec('_strptime')
ModuleSpec(name='_strptime', loader=<bpython.curtsiesfrontend.repl.ImportLoader object at 0x7fb431231b50>)
in python3:
>>> import importlib.util
>>> importlib.util.find_spec('_strptime')
ModuleSpec(name='_strptime', loader=<_frozen_importlib_external.SourceFileLoader object at 0x7f0e14b3f790>, origin='/usr/lib/python3.7/_strptime.py')
As you can see, in bpython is used bpython's ImportLoader object, while
in pure python it is SourceFileLoader.
regards
--
Slavko
http://slavino.sk
Debbugs is free software and licensed under the terms of the GNU General
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.