Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.maint.python > #14515 > unrolled thread
| Started by | Bo YU <tsu.yubo@gmail.com> |
|---|---|
| First post | 2022-10-05 11:50 +0200 |
| Last post | 2022-10-06 03:50 +0200 |
| Articles | 5 — 2 participants |
Back to article view | Back to linux.debian.maint.python
how to fix TypeError: expected string or bytes-like object ? Bo YU <tsu.yubo@gmail.com> - 2022-10-05 11:50 +0200
Re: how to fix TypeError: expected string or bytes-like object ? Felix Yan <felixonmars@archlinux.org> - 2022-10-05 12:50 +0200
Re: how to fix TypeError: expected string or bytes-like object ? Bo YU <tsu.yubo@gmail.com> - 2022-10-05 13:10 +0200
Re: how to fix TypeError: expected string or bytes-like object ? Felix Yan <felixonmars@archlinux.org> - 2022-10-05 13:30 +0200
Re: how to fix TypeError: expected string or bytes-like object ? Bo YU <tsu.yubo@gmail.com> - 2022-10-06 03:50 +0200
| From | Bo YU <tsu.yubo@gmail.com> |
|---|---|
| Date | 2022-10-05 11:50 +0200 |
| Subject | how to fix TypeError: expected string or bytes-like object ? |
| Message-ID | <Fd9cl-cbqD-1@gated-at.bofh.it> |
hi,
(maybe this is off topic on this list)
When I want to run sphinx cmd on my pc, I got the error:
```
vimer@dev:~/build/rfs/packages/test_dir$ cat /tmp/sphinx-err-etgbo9tg.log
# Sphinx version: 4.5.0
# Python version: 3.10.7 (CPython)
# Docutils version: 0.17.1 release
# Jinja2 version: 3.0.3
# Last messages:
# Loaded extensions:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/sphinx/cmd/build.py", line 272,
in build_main
app = Sphinx(args.sourcedir, args.confdir, args.outputdir,
File "/usr/lib/python3/dist-packages/sphinx/application.py", line
220, in __init__
self.preload_builder(buildername)
File "/usr/lib/python3/dist-packages/sphinx/application.py", line
297, in preload_builder
self.registry.preload_builder(self, name)
File "/usr/lib/python3/dist-packages/sphinx/registry.py", line 142,
in preload_builder
builder_entry_points = entry_points(group='sphinx.builders')
File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
line 1047, in entry_points
return SelectableGroups.load(eps).select(**params)
File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
line 477, in load
ordered = sorted(eps, key=by_group)
File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
line 1044, in <genexpr>
eps = itertools.chain.from_iterable(
File "/usr/lib/python3/dist-packages/importlib_metadata/_itertools.py",
line 16, in unique_everseen
k = key(element)
File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
line 961, in _normalized_name
or super()._normalized_name
File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
line 628, in _normalized_name
return Prepared.normalize(self.name)
File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
line 883, in normalize
return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
File "/usr/lib/python3.10/re.py", line 209, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or bytes-like object
```
The problem may be in importlib_metadata here, but I am not sure how to fix it.
I remembered I do `python setup.py build/install` something ago.
Any help is welcome!
BR,
Bo
[toc] | [next] | [standalone]
| From | Felix Yan <felixonmars@archlinux.org> |
|---|---|
| Date | 2022-10-05 12:50 +0200 |
| Message-ID | <Fda8p-cbZB-3@gated-at.bofh.it> |
| In reply to | #14515 |
[Multipart message — attachments visible in raw view] — view raw
On 10/5/22 12:47, Bo YU wrote:
> hi,
> (maybe this is off topic on this list)
> When I want to run sphinx cmd on my pc, I got the error:
> ```
> vimer@dev:~/build/rfs/packages/test_dir$ cat /tmp/sphinx-err-etgbo9tg.log
> # Sphinx version: 4.5.0
> # Python version: 3.10.7 (CPython)
> # Docutils version: 0.17.1 release
> # Jinja2 version: 3.0.3
> # Last messages:
>
> # Loaded extensions:
> Traceback (most recent call last):
> File "/usr/lib/python3/dist-packages/sphinx/cmd/build.py", line 272,
> in build_main
> app = Sphinx(args.sourcedir, args.confdir, args.outputdir,
> File "/usr/lib/python3/dist-packages/sphinx/application.py", line
> 220, in __init__
> self.preload_builder(buildername)
> File "/usr/lib/python3/dist-packages/sphinx/application.py", line
> 297, in preload_builder
> self.registry.preload_builder(self, name)
> File "/usr/lib/python3/dist-packages/sphinx/registry.py", line 142,
> in preload_builder
> builder_entry_points = entry_points(group='sphinx.builders')
> File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
> line 1047, in entry_points
> return SelectableGroups.load(eps).select(**params)
> File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
> line 477, in load
> ordered = sorted(eps, key=by_group)
> File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
> line 1044, in <genexpr>
> eps = itertools.chain.from_iterable(
> File "/usr/lib/python3/dist-packages/importlib_metadata/_itertools.py",
> line 16, in unique_everseen
> k = key(element)
> File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
> line 961, in _normalized_name
> or super()._normalized_name
> File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
> line 628, in _normalized_name
> return Prepared.normalize(self.name)
> File "/usr/lib/python3/dist-packages/importlib_metadata/__init__.py",
> line 883, in normalize
> return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
> File "/usr/lib/python3.10/re.py", line 209, in sub
> return _compile(pattern, flags).sub(repl, string, count)
> TypeError: expected string or bytes-like object
> ```
Looks like this: https://github.com/sphinx-doc/sphinx/issues/10339
Are you using the rinohtype extension too?
--
Regards,
Felix Yan
[toc] | [prev] | [next] | [standalone]
| From | Bo YU <tsu.yubo@gmail.com> |
|---|---|
| Date | 2022-10-05 13:10 +0200 |
| Message-ID | <FdarL-cclL-5@gated-at.bofh.it> |
| In reply to | #14516 |
[Multipart message — attachments visible in raw view] — view raw
Hi,
On Wed, Oct 05, 2022 at 01:33:53PM +0300, Felix Yan wrote:
>On 10/5/22 12:47, Bo YU wrote:
>>hi,
>>(maybe this is off topic on this list)
>>When I want to run sphinx cmd on my pc, I got the error:
>>```
[...]
>>line 883, in normalize
>> return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
>> File "/usr/lib/python3.10/re.py", line 209, in sub
>> return _compile(pattern, flags).sub(repl, string, count)
>>TypeError: expected string or bytes-like object
>>```
>
>Looks like this: https://github.com/sphinx-doc/sphinx/issues/10339
I noticed it also but I did not remember use sphinx with rinohtype
extension.
>
>Are you using the rinohtype extension too?
The fact is that I am packaging the sphinxcontrib-ditaa[0] and I want to
test it via pip3:
```
vimer@dev:~/build/rfs/packages/test_dir$ sudo pip3 install sphinxcontrib-ditaa
Collecting sphinxcontrib-ditaa
Using cached sphinxcontrib-ditaa-1.0.1.tar.gz (7.5 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [30 lines of output]
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "<pip-setuptools-caller>", line 34, in <module>
File "/tmp/pip-install-c2wygkxs/sphinxcontrib-ditaa_10e1c64028af47e59b8fc5bf20b6901c/setup.py", line 8, in <module>
setup(
File "/usr/lib/python3/dist-packages/setuptools/__init__.py", line 86, in setup
_install_setup_requires(attrs)
File "/usr/lib/python3/dist-packages/setuptools/__init__.py", line 75, in _install_setup_requires
dist = MinimalDistribution(attrs)
File "/usr/lib/python3/dist-packages/setuptools/__init__.py", line 57, in __init__
super().__init__(filtered)
File "/usr/lib/python3/dist-packages/setuptools/dist.py", line 474, in __init__
for ep in metadata.entry_points(group='distutils.setup_keywords'):
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 1009, in entry_points
return SelectableGroups.load(eps).select(**params)
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 459, in load
ordered = sorted(eps, key=by_group)
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 1006, in <genexpr>
eps = itertools.chain.from_iterable(
File "/usr/lib/python3.10/importlib/metadata/_itertools.py", line 16, in unique_everseen
k = key(element)
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 941, in _normalized_name
return self._name_from_stem(stem) or super()._normalized_name
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 622, in _normalized_name
return Prepared.normalize(self.name)
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 871, in normalize
return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
File "/usr/lib/python3.10/re.py", line 209, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or bytes-like object
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
```
So I think the issue maybe not raised from sphinx extension, but it could be worse than that.
Thanks for help:)
[0]: https://pypi.org/project/sphinxcontrib-ditaa/
>
>--
>Regards,
>Felix Yan
>
--
Regards,
--
Bo YU
[toc] | [prev] | [next] | [standalone]
| From | Felix Yan <felixonmars@archlinux.org> |
|---|---|
| Date | 2022-10-05 13:30 +0200 |
| Message-ID | <FdaL8-ccsd-5@gated-at.bofh.it> |
| In reply to | #14517 |
[Multipart message — attachments visible in raw view] — view raw
On 10/5/22 14:02, Bo YU wrote:
> ```
> vimer@dev:~/build/rfs/packages/test_dir$ sudo pip3 install
> sphinxcontrib-ditaa
> Collecting sphinxcontrib-ditaa
> Using cached sphinxcontrib-ditaa-1.0.1.tar.gz (7.5 kB)
> Preparing metadata (setup.py) ... error
> error: subprocess-exited-with-error
>
> × python setup.py egg_info did not run successfully.
> │ exit code: 1
> ╰─> [30 lines of output]
> Traceback (most recent call last):
> File "<string>", line 2, in <module>
> File "<pip-setuptools-caller>", line 34, in <module>
> File
> "/tmp/pip-install-c2wygkxs/sphinxcontrib-ditaa_10e1c64028af47e59b8fc5bf20b6901c/setup.py", line 8, in <module>
> setup(
> File "/usr/lib/python3/dist-packages/setuptools/__init__.py",
> line 86, in setup
> _install_setup_requires(attrs)
> File "/usr/lib/python3/dist-packages/setuptools/__init__.py",
> line 75, in _install_setup_requires
> dist = MinimalDistribution(attrs)
> File "/usr/lib/python3/dist-packages/setuptools/__init__.py",
> line 57, in __init__
> super().__init__(filtered)
> File "/usr/lib/python3/dist-packages/setuptools/dist.py", line
> 474, in __init__
> for ep in
> metadata.entry_points(group='distutils.setup_keywords'):
> File "/usr/lib/python3.10/importlib/metadata/__init__.py", line
> 1009, in entry_points
> return SelectableGroups.load(eps).select(**params)
> File "/usr/lib/python3.10/importlib/metadata/__init__.py", line
> 459, in load
> ordered = sorted(eps, key=by_group)
> File "/usr/lib/python3.10/importlib/metadata/__init__.py", line
> 1006, in <genexpr>
> eps = itertools.chain.from_iterable(
> File "/usr/lib/python3.10/importlib/metadata/_itertools.py",
> line 16, in unique_everseen
> k = key(element)
> File "/usr/lib/python3.10/importlib/metadata/__init__.py", line
> 941, in _normalized_name
> return self._name_from_stem(stem) or super()._normalized_name
> File "/usr/lib/python3.10/importlib/metadata/__init__.py", line
> 622, in _normalized_name
> return Prepared.normalize(self.name)
> File "/usr/lib/python3.10/importlib/metadata/__init__.py", line
> 871, in normalize
> return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
> File "/usr/lib/python3.10/re.py", line 209, in sub
> return _compile(pattern, flags).sub(repl, string, count)
> TypeError: expected string or bytes-like object
> [end of output]
>
> note: This error originates from a subprocess, and is likely not a
> problem with pip.
> error: metadata-generation-failed
>
> × Encountered error while generating package metadata.
> ╰─> See above for output.
>
> ```
You are right. The traceback is indeed different but more similar to
this one, probably: https://github.com/pypa/setuptools/issues/3273
I have tried to make an empty .dist-info dir and got the very similar
result to yours.
The following command may help to locate the actual offending package:
strace -eopenat python -c "from importlib.metadata import entry_points;
print(entry_points(group='sphinx.builders'))"
--
Regards,
Felix Yan
[toc] | [prev] | [next] | [standalone]
| From | Bo YU <tsu.yubo@gmail.com> |
|---|---|
| Date | 2022-10-06 03:50 +0200 |
| Message-ID | <Fdobo-ckrL-1@gated-at.bofh.it> |
| In reply to | #14518 |
[Multipart message — attachments visible in raw view] — view raw
Hi,
On Wed, Oct 05, 2022 at 02:28:56PM +0300, Felix Yan wrote:
>On 10/5/22 14:02, Bo YU wrote:
>>```
>>vimer@dev:~/build/rfs/packages/test_dir$ sudo pip3 install
>>sphinxcontrib-ditaa
>>Collecting sphinxcontrib-ditaa
>> Using cached sphinxcontrib-ditaa-1.0.1.tar.gz (7.5 kB)
>> Preparing metadata (setup.py) ... error
>> error: subprocess-exited-with-error
>>
[...]
>> return self._name_from_stem(stem) or super()._normalized_name
>> File "/usr/lib/python3.10/importlib/metadata/__init__.py",
>>line 622, in _normalized_name
>> return Prepared.normalize(self.name)
>> File "/usr/lib/python3.10/importlib/metadata/__init__.py",
>>line 871, in normalize
>> return re.sub(r"[-_.]+", "-", name).lower().replace('-', '_')
>> File "/usr/lib/python3.10/re.py", line 209, in sub
>> return _compile(pattern, flags).sub(repl, string, count)
>> TypeError: expected string or bytes-like object
>> [end of output]
>>
>> note: This error originates from a subprocess, and is likely not
>>a problem with pip.
>>error: metadata-generation-failed
>>
>>× Encountered error while generating package metadata.
>>╰─> See above for output.
>>
>>```
>
>You are right. The traceback is indeed different but more similar to
>this one, probably: https://github.com/pypa/setuptools/issues/3273
>
>I have tried to make an empty .dist-info dir and got the very similar
>result to yours.
>
>The following command may help to locate the actual offending package:
>
>strace -eopenat python -c "from importlib.metadata import
>entry_points; print(entry_points(group='sphinx.builders'))"
>
Great! It works.
I deleted the package that was installed by setup.py with above command
hint. Everythng is well now.
Many thanks~
--
Regards,
--
Bo YU
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.maint.python
csiph-web