Closed JustinS6626 closed 1 year ago
Hey, this is a strange issue,
What is gymnasium version are you using?
Could you add your pip freeze
?
Gymnasium and gym have some magic that loads other modules that register an entry point so there will be a conflict with another module most likely
Thanks for getting back to me so soon! This is the output from my pip freeze
:
absl-py==1.2.0
ale-py==0.8.0
appdirs==1.4.4
apturl==0.5.2
astunparse==1.6.3
atari-py==0.2.9
attrs==22.1.0
autograd==1.4
autoray==0.3.2
bcrypt==3.2.0
blinker==1.4
box2d-py==2.3.5
Brlapi==0.8.3
cached-property==1.5.2
cachetools==5.2.0
certifi==2020.6.20
cffi==1.15.1
chardet==4.0.0
chex==0.1.6
click==8.0.3
cloudpickle==2.1.0
colorama==0.4.4
command-not-found==0.3
cryptography==3.4.8
cupshelpers==1.0
cycler==0.11.0
Cython==0.29.32
dbus-python==1.2.18
decorator==4.4.2
defer==1.0.6
dill==0.3.6
distro==1.7.0
distro-info===1.1build1
dm-tree==0.1.8
dopamine-rl==4.0.6
duplicity==0.8.21
etils==1.0.0
Farama-Notifications==0.0.4
fasteners==0.17.3
flatbuffers==23.1.21
flax==0.6.5
fonttools==4.37.1
future==0.18.2
gast==0.4.0
gin-config==0.5.0
glfw==2.5.4
google-auth==2.14.1
google-auth-oauthlib==0.4.6
google-pasta==0.2.0
grpcio==1.50.0
gym-minigrid==1.1.0
gym-notices==0.0.8
gymnasium==0.28.1
gymnasium-notices==0.0.1
h5py==3.7.0
httplib2==0.20.2
idna==3.3
imageio==2.21.1
imageio-ffmpeg==0.4.7
importlib-metadata==4.6.4
importlib-resources==5.9.0
iniconfig==1.1.1
jax==0.4.3
jax-jumpy==1.0.0
jaxlib==0.3.24
jeepney==0.7.1
keras==2.11.0
keyring==23.5.0
kiwisolver==1.4.4
language-selector==0.1
launchpadlib==1.10.16
lazr.restfulclient==0.14.4
lazr.uri==1.0.6
libclang==15.0.6.1
lockfile==0.12.2
loguru==0.6.0
louis==3.20.0
lz4==4.0.2
macaroonbakery==1.3.1
Mako==1.1.3
Markdown==3.4.1
markdown-it-py==2.1.0
MarkupSafe==2.1.1
matplotlib==3.5.3
mdurl==0.1.2
Minigrid==2.1.0
monotonic==1.6
more-itertools==8.10.0
moviepy==1.0.3
mpmath==1.2.1
msgpack==1.0.4
msgpack-numpy==0.4.8
mujoco==2.3.1.post1
mujoco-py==2.1.2.14
multimethod==1.9
multiprocess==0.70.14
netifaces==0.11.0
networkx==2.8.6
ninja==1.10.2.3
ntlm-auth==1.5.0
numpy==1.23.2
nvidia-cublas-cu11==11.10.3.66
nvidia-cuda-nvrtc-cu11==11.7.99
nvidia-cuda-runtime-cu11==11.7.99
nvidia-cudnn-cu11==8.5.0.96
oauthlib==3.2.0
olefile==0.46
opencv-python==4.6.0.66
opt-einsum==3.3.0
optax==0.1.4
orbax==0.1.1
packaging==21.3
pandas==1.5.3
paramiko==2.9.3
pathos==0.3.0
pbr==5.11.0
PennyLane==0.25.1
PennyLane-Lightning==0.25.1
pexpect==4.8.0
Pillow==9.0.1
pluggy==1.0.0
ply==3.11
pox==0.3.2
ppft==1.7.6.6
proglog==0.1.10
protobuf==3.12.4
psutil==5.9.4
ptyprocess==0.7.0
py==1.11.0
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycairo==1.20.1
pycparser==2.21
pycups==2.0.1
pygame==2.1.3.dev8
Pygments==2.14.0
PyGObject==3.42.1
PyJWT==2.3.0
pylatexenc==2.10
pymacaroons==0.13.0
PyNaCl==1.5.0
PyOpenGL==3.1.6
pyparsing==2.4.7
pyRFC3339==1.1
pytest==7.0.1
python-apt==2.4.0+ubuntu1
python-dateutil==2.8.1
python-debian===0.1.43ubuntu1
pytz==2022.1
pyxdg==0.27
PyYAML==5.4.1
pyzmq==24.0.1
qiskit==0.39.2
qiskit-aer==0.11.1
qiskit-ibmq-provider==0.19.2
qiskit-terra==0.22.2
reportlab==3.6.8
requests==2.25.1
requests-ntlm==1.1.0
requests-oauthlib==1.3.1
retworkx==0.11.0
rich==13.3.1
rsa==4.9
scipy==1.9.1
screen-resolution-extra==0.0.0
SecretStorage==3.3.1
semantic-version==2.10.0
sentencepiece==0.1.97
Shimmy==0.2.0
six==1.16.0
stevedore==4.1.1
swig==4.0.2
symengine==0.9.2
sympy==1.11.1
systemd-python==234
tabulate==0.9.0
tensorboard==2.11.0
tensorboard-data-server==0.6.1
tensorboard-plugin-wit==1.8.1
tensorflow==2.11.0
tensorflow-estimator==2.11.0
tensorflow-io-gcs-filesystem==0.30.0
tensorflow-probability==0.19.0
tensorpack==0.11
tensorstore==0.1.31
termcolor==2.1.1
tf-slim==1.1.0
toml==0.10.2
tomli==2.0.1
toolz==0.12.0
torch==1.13.1
torchpack==0.3.1
torchquantum==0.1.5
torchtext==0.6.0
torchvision==0.14.0
tqdm==4.64.1
tweedledum==1.1.1
typing_extensions==4.3.0
ubuntu-advantage-tools==8001
ubuntu-drivers-common==0.0.0
ufw==0.36.1
unattended-upgrades==0.1
urllib3==1.26.5
usb-creator==0.3.7
wadllib==1.3.6
websocket-client==1.4.2
websockets==10.4
Werkzeug==2.2.2
wrapt==1.15.0rc1
xdg==5
xkit==0.0.0
zipp==1.0.0
Does this show where the conflict might be?
Im trying to work out what the issue and how to debug it but as the error originates in importlib https://docs.python.org/3/library/importlib.metadata.html
Could you print all of the entry points?
I am not sure if I used the right code to get the entry points, since this is what I used
from importlib.metadata import *
eps = entry_points()
but the output that I got was
Traceback (most recent call last):
File "/usr/lib/python3.10/idlelib/run.py", line 578, in runcode
exec(code, self.locals)
File "<pyshell#1>", line 1, in <module>
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
This seems to be at the root of the problem. Is there another way to see the entry points?
Looking at the source code, https://github.com/python/cpython/blob/5342f5e713e0cc45b6f226d2d053a8cde1b4d68e/Lib/importlib/metadata/__init__.py#L1020
Could you print the list(importlib.metadata.Distributions())
and itertools.chain.from_iterable(dist.entry_points for dist in distributions())
?
Thanks again for getting back to me so soon! When I do
import importlib
list(importlib.metadata.Distributions())
I get
Traceback (most recent call last):
File "/usr/lib/python3.10/idlelib/run.py", line 578, in runcode
exec(code, self.locals)
File "<pyshell#1>", line 1, in <module>
AttributeError: module 'importlib' has no attribute 'metadata'
and when I run
import itertools
from importlib.metadata import distributions
itertools.chain.from_iterable(dist.entry_points for dist in distributions())
I get
<itertools.chain object at 0x7f3e4eb250f0>
For the first one, did you mean Distribution()
?
You will need to do import importlib.metadata
not import importlib
For the second part, you will need to surround it by a list()
to extract all of the elements of the generator
Thanks! For the first part, I did
import importlib.metadata as mt
list(mt.distributions())
and I got
[<importlib.metadata.PathDistribution object at 0x7fde317975e0>, <importlib.metadata.PathDistribution object at 0x7fde31797640>, <importlib.metadata.PathDistribution object at 0x7fde317976a0>, <importlib.metadata.PathDistribution object at 0x7fde31797700>, <importlib.metadata.PathDistribution object at 0x7fde31797760>, <importlib.metadata.PathDistribution object at 0x7fde317977c0>, <importlib.metadata.PathDistribution object at 0x7fde31797820>, <importlib.metadata.PathDistribution object at 0x7fde31797880>, <importlib.metadata.PathDistribution object at 0x7fde317978e0>, <importlib.metadata.PathDistribution object at 0x7fde31797940>, <importlib.metadata.PathDistribution object at 0x7fde317979a0>, <importlib.metadata.PathDistribution object at 0x7fde31797a00>, <importlib.metadata.PathDistribution object at 0x7fde31797a60>, <importlib.metadata.PathDistribution object at 0x7fde31797ac0>, <importlib.metadata.PathDistribution object at 0x7fde31797b20>, <importlib.metadata.PathDistribution object at 0x7fde31797b80>, <importlib.metadata.PathDistribution object at 0x7fde31797be0>, <importlib.metadata.PathDistribution object at 0x7fde31797c40>, <importlib.metadata.PathDistribution object at 0x7fde31797ca0>, <importlib.metadata.PathDistribution object at 0x7fde31797d00>, <importlib.metadata.PathDistribution object at 0x7fde31797d60>, <importlib.metadata.PathDistribution object at 0x7fde31797dc0>, <importlib.metadata.PathDistribution object at 0x7fde31797e20>, <importlib.metadata.PathDistribution object at 0x7fde31797e80>, <importlib.metadata.PathDistribution object at 0x7fde31797ee0>, <importlib.metadata.PathDistribution object at 0x7fde31797f40>, <importlib.metadata.PathDistribution object at 0x7fde31797fa0>, <importlib.metadata.PathDistribution object at 0x7fde317f4040>, <importlib.metadata.PathDistribution object at 0x7fde317f40a0>, <importlib.metadata.PathDistribution object at 0x7fde317f4100>, <importlib.metadata.PathDistribution object at 0x7fde317f4160>, <importlib.metadata.PathDistribution object at 0x7fde317f41c0>, <importlib.metadata.PathDistribution object at 0x7fde317f4220>, <importlib.metadata.PathDistribution object at 0x7fde317f4280>, <importlib.metadata.PathDistribution object at 0x7fde317f42e0>, <importlib.metadata.PathDistribution object at 0x7fde317963e0>, <importlib.metadata.PathDistribution object at 0x7fde31796440>, <importlib.metadata.PathDistribution object at 0x7fde31796320>, <importlib.metadata.PathDistribution object at 0x7fde31796c80>, <importlib.metadata.PathDistribution object at 0x7fde317f4340>, <importlib.metadata.PathDistribution object at 0x7fde317f4430>, <importlib.metadata.PathDistribution object at 0x7fde317f4490>, <importlib.metadata.PathDistribution object at 0x7fde317f44f0>, <importlib.metadata.PathDistribution object at 0x7fde317f4550>, <importlib.metadata.PathDistribution object at 0x7fde317f45b0>, <importlib.metadata.PathDistribution object at 0x7fde317f4610>, <importlib.metadata.PathDistribution object at 0x7fde317f4670>, <importlib.metadata.PathDistribution object at 0x7fde317f46d0>, <importlib.metadata.PathDistribution object at 0x7fde317f4730>, <importlib.metadata.PathDistribution object at 0x7fde317f4790>, <importlib.metadata.PathDistribution object at 0x7fde317f47f0>, <importlib.metadata.PathDistribution object at 0x7fde317f4850>, <importlib.metadata.PathDistribution object at 0x7fde317f48b0>, <importlib.metadata.PathDistribution object at 0x7fde317f4910>, <importlib.metadata.PathDistribution object at 0x7fde317f4970>, <importlib.metadata.PathDistribution object at 0x7fde317f49d0>, <importlib.metadata.PathDistribution object at 0x7fde317f4a30>, <importlib.metadata.PathDistribution object at 0x7fde317f4a90>, <importlib.metadata.PathDistribution object at 0x7fde317f4af0>, <importlib.metadata.PathDistribution object at 0x7fde317f4b50>, <importlib.metadata.PathDistribution object at 0x7fde317f4bb0>, <importlib.metadata.PathDistribution object at 0x7fde317f4c10>, <importlib.metadata.PathDistribution object at 0x7fde317f4c70>, <importlib.metadata.PathDistribution object at 0x7fde317f4cd0>, <importlib.metadata.PathDistribution object at 0x7fde317f4d30>, <importlib.metadata.PathDistribution object at 0x7fde317f4d90>, <importlib.metadata.PathDistribution object at 0x7fde317f4df0>, <importlib.metadata.PathDistribution object at 0x7fde317f4e50>, <importlib.metadata.PathDistribution object at 0x7fde317f4eb0>, <importlib.metadata.PathDistribution object at 0x7fde317f4f10>, <importlib.metadata.PathDistribution object at 0x7fde317f4f70>, <importlib.metadata.PathDistribution object at 0x7fde317f4fd0>, <importlib.metadata.PathDistribution object at 0x7fde317f5030>, <importlib.metadata.PathDistribution object at 0x7fde317f5090>, <importlib.metadata.PathDistribution object at 0x7fde317f50f0>, <importlib.metadata.PathDistribution object at 0x7fde317f5150>, <importlib.metadata.PathDistribution object at 0x7fde317f51b0>, <importlib.metadata.PathDistribution object at 0x7fde317f5210>, <importlib.metadata.PathDistribution object at 0x7fde317f5270>, <importlib.metadata.PathDistribution object at 0x7fde317f52d0>, <importlib.metadata.PathDistribution object at 0x7fde317f5330>, <importlib.metadata.PathDistribution object at 0x7fde317f5390>, <importlib.metadata.PathDistribution object at 0x7fde317f53f0>, <importlib.metadata.PathDistribution object at 0x7fde317f5450>, <importlib.metadata.PathDistribution object at 0x7fde317f54b0>, <importlib.metadata.PathDistribution object at 0x7fde317f5510>, <importlib.metadata.PathDistribution object at 0x7fde317f5570>, <importlib.metadata.PathDistribution object at 0x7fde317f55d0>, <importlib.metadata.PathDistribution object at 0x7fde317f5630>, <importlib.metadata.PathDistribution object at 0x7fde317f5690>, <importlib.metadata.PathDistribution object at 0x7fde317f56f0>, <importlib.metadata.PathDistribution object at 0x7fde317f5750>, <importlib.metadata.PathDistribution object at 0x7fde317f57b0>, <importlib.metadata.PathDistribution object at 0x7fde317f5810>, <importlib.metadata.PathDistribution object at 0x7fde317f5870>, <importlib.metadata.PathDistribution object at 0x7fde317f58d0>, <importlib.metadata.PathDistribution object at 0x7fde317f5930>, <importlib.metadata.PathDistribution object at 0x7fde317f5990>, <importlib.metadata.PathDistribution object at 0x7fde317f59f0>, <importlib.metadata.PathDistribution object at 0x7fde317f5a50>, <importlib.metadata.PathDistribution object at 0x7fde317f5ab0>, <importlib.metadata.PathDistribution object at 0x7fde317f5b10>, <importlib.metadata.PathDistribution object at 0x7fde317f5b70>, <importlib.metadata.PathDistribution object at 0x7fde317f5bd0>, <importlib.metadata.PathDistribution object at 0x7fde317f5c30>, <importlib.metadata.PathDistribution object at 0x7fde317f5c90>, <importlib.metadata.PathDistribution object at 0x7fde317f5cf0>, <importlib.metadata.PathDistribution object at 0x7fde317f5d50>, <importlib.metadata.PathDistribution object at 0x7fde317f5db0>, <importlib.metadata.PathDistribution object at 0x7fde317f5e10>, <importlib.metadata.PathDistribution object at 0x7fde317f5e70>, <importlib.metadata.PathDistribution object at 0x7fde317f5ed0>, <importlib.metadata.PathDistribution object at 0x7fde317f5f30>, <importlib.metadata.PathDistribution object at 0x7fde317f5f90>, <importlib.metadata.PathDistribution object at 0x7fde317f5ff0>, <importlib.metadata.PathDistribution object at 0x7fde317f6050>, <importlib.metadata.PathDistribution object at 0x7fde317f60b0>, <importlib.metadata.PathDistribution object at 0x7fde317f6110>, <importlib.metadata.PathDistribution object at 0x7fde317f6170>, <importlib.metadata.PathDistribution object at 0x7fde317f61d0>, <importlib.metadata.PathDistribution object at 0x7fde317f6230>, <importlib.metadata.PathDistribution object at 0x7fde317f6290>, <importlib.metadata.PathDistribution object at 0x7fde317f62f0>, <importlib.metadata.PathDistribution object at 0x7fde317f6350>, <importlib.metadata.PathDistribution object at 0x7fde317f63b0>, <importlib.metadata.PathDistribution object at 0x7fde317f6410>, <importlib.metadata.PathDistribution object at 0x7fde317f6470>, <importlib.metadata.PathDistribution object at 0x7fde317f64d0>, <importlib.metadata.PathDistribution object at 0x7fde317f6530>, <importlib.metadata.PathDistribution object at 0x7fde317f6590>, <importlib.metadata.PathDistribution object at 0x7fde317f65f0>, <importlib.metadata.PathDistribution object at 0x7fde317f6650>, <importlib.metadata.PathDistribution object at 0x7fde317f66b0>, <importlib.metadata.PathDistribution object at 0x7fde317f6710>, <importlib.metadata.PathDistribution object at 0x7fde317f6770>, <importlib.metadata.PathDistribution object at 0x7fde317f67d0>, <importlib.metadata.PathDistribution object at 0x7fde317f6830>, <importlib.metadata.PathDistribution object at 0x7fde317f6890>, <importlib.metadata.PathDistribution object at 0x7fde317f68f0>, <importlib.metadata.PathDistribution object at 0x7fde317f6950>, <importlib.metadata.PathDistribution object at 0x7fde317f69b0>, <importlib.metadata.PathDistribution object at 0x7fde317f6a10>, <importlib.metadata.PathDistribution object at 0x7fde317f6a70>, <importlib.metadata.PathDistribution object at 0x7fde317f6ad0>, <importlib.metadata.PathDistribution object at 0x7fde317f6b30>, <importlib.metadata.PathDistribution object at 0x7fde317f6b90>, <importlib.metadata.PathDistribution object at 0x7fde317f6bf0>, <importlib.metadata.PathDistribution object at 0x7fde317f6c50>, <importlib.metadata.PathDistribution object at 0x7fde317f6cb0>, <importlib.metadata.PathDistribution object at 0x7fde317f6d10>, <importlib.metadata.PathDistribution object at 0x7fde317f6d70>, <importlib.metadata.PathDistribution object at 0x7fde317f6dd0>, <importlib.metadata.PathDistribution object at 0x7fde317f6e30>, <importlib.metadata.PathDistribution object at 0x7fde317f6e90>, <importlib.metadata.PathDistribution object at 0x7fde317f7070>, <importlib.metadata.PathDistribution object at 0x7fde317f76a0>, <importlib.metadata.PathDistribution object at 0x7fde317f7880>, <importlib.metadata.PathDistribution object at 0x7fde317f7ac0>, <importlib.metadata.PathDistribution object at 0x7fde317f7d30>, <importlib.metadata.PathDistribution object at 0x7fde317f7fa0>, <importlib.metadata.PathDistribution object at 0x7fde3160c250>, <importlib.metadata.PathDistribution object at 0x7fde3160c4c0>, <importlib.metadata.PathDistribution object at 0x7fde3160c730>, <importlib.metadata.PathDistribution object at 0x7fde3160c9a0>, <importlib.metadata.PathDistribution object at 0x7fde3160cc10>, <importlib.metadata.PathDistribution object at 0x7fde3160ce80>, <importlib.metadata.PathDistribution object at 0x7fde3160d0f0>, <importlib.metadata.PathDistribution object at 0x7fde3160d360>, <importlib.metadata.PathDistribution object at 0x7fde3160d5d0>, <importlib.metadata.PathDistribution object at 0x7fde3160d840>, <importlib.metadata.PathDistribution object at 0x7fde3160dab0>, <importlib.metadata.PathDistribution object at 0x7fde3160dd20>, <importlib.metadata.PathDistribution object at 0x7fde3160df90>, <importlib.metadata.PathDistribution object at 0x7fde3160e200>, <importlib.metadata.PathDistribution object at 0x7fde3160e470>, <importlib.metadata.PathDistribution object at 0x7fde3160e6e0>, <importlib.metadata.PathDistribution object at 0x7fde3160e950>, <importlib.metadata.PathDistribution object at 0x7fde3160ebc0>, <importlib.metadata.PathDistribution object at 0x7fde3160ee30>, <importlib.metadata.PathDistribution object at 0x7fde3160f0a0>, <importlib.metadata.PathDistribution object at 0x7fde3160f310>, <importlib.metadata.PathDistribution object at 0x7fde3160f580>, <importlib.metadata.PathDistribution object at 0x7fde3160f7f0>, <importlib.metadata.PathDistribution object at 0x7fde3160f850>, <importlib.metadata.PathDistribution object at 0x7fde3160f8b0>, <importlib.metadata.PathDistribution object at 0x7fde3160f910>, <importlib.metadata.PathDistribution object at 0x7fde3160f970>, <importlib.metadata.PathDistribution object at 0x7fde3160f9d0>, <importlib.metadata.PathDistribution object at 0x7fde3160fa30>, <importlib.metadata.PathDistribution object at 0x7fde3160fa90>, <importlib.metadata.PathDistribution object at 0x7fde3160faf0>, <importlib.metadata.PathDistribution object at 0x7fde3160fb50>, <importlib.metadata.PathDistribution object at 0x7fde3160fbb0>, <importlib.metadata.PathDistribution object at 0x7fde3160fc10>, <importlib.metadata.PathDistribution object at 0x7fde3160fc70>, <importlib.metadata.PathDistribution object at 0x7fde3160fcd0>, <importlib.metadata.PathDistribution object at 0x7fde3160fd30>, <importlib.metadata.PathDistribution object at 0x7fde3160fd90>, <importlib.metadata.PathDistribution object at 0x7fde3160fdf0>, <importlib.metadata.PathDistribution object at 0x7fde3160fe50>, <importlib.metadata.PathDistribution object at 0x7fde3160feb0>, <importlib.metadata.PathDistribution object at 0x7fde3160ff10>, <importlib.metadata.PathDistribution object at 0x7fde3160ff70>, <importlib.metadata.PathDistribution object at 0x7fde3160ffd0>, <importlib.metadata.PathDistribution object at 0x7fde31628070>, <importlib.metadata.PathDistribution object at 0x7fde316280d0>, <importlib.metadata.PathDistribution object at 0x7fde31628130>, <importlib.metadata.PathDistribution object at 0x7fde31628190>, <importlib.metadata.PathDistribution object at 0x7fde316281f0>, <importlib.metadata.PathDistribution object at 0x7fde31628250>, <importlib.metadata.PathDistribution object at 0x7fde316282b0>, <importlib.metadata.PathDistribution object at 0x7fde31628310>, <importlib.metadata.PathDistribution object at 0x7fde31628370>, <importlib.metadata.PathDistribution object at 0x7fde316283d0>, <importlib.metadata.PathDistribution object at 0x7fde31628430>, <importlib.metadata.PathDistribution object at 0x7fde31628490>, <importlib.metadata.PathDistribution object at 0x7fde316284f0>, <importlib.metadata.PathDistribution object at 0x7fde31628550>, <importlib.metadata.PathDistribution object at 0x7fde316285b0>, <importlib.metadata.PathDistribution object at 0x7fde31628610>, <importlib.metadata.PathDistribution object at 0x7fde31628670>, <importlib.metadata.PathDistribution object at 0x7fde316286d0>, <importlib.metadata.PathDistribution object at 0x7fde31628730>, <importlib.metadata.PathDistribution object at 0x7fde31628790>, <importlib.metadata.PathDistribution object at 0x7fde316287f0>, <importlib.metadata.PathDistribution object at 0x7fde31628850>, <importlib.metadata.PathDistribution object at 0x7fde316288b0>, <importlib.metadata.PathDistribution object at 0x7fde31628910>, <importlib.metadata.PathDistribution object at 0x7fde31628970>, <importlib.metadata.PathDistribution object at 0x7fde316289d0>, <importlib.metadata.PathDistribution object at 0x7fde31628a30>, <importlib.metadata.PathDistribution object at 0x7fde31628a90>, <importlib.metadata.PathDistribution object at 0x7fde31628af0>, <importlib.metadata.PathDistribution object at 0x7fde31628b50>, <importlib.metadata.PathDistribution object at 0x7fde31628bb0>, <importlib.metadata.PathDistribution object at 0x7fde31628c10>, <importlib.metadata.PathDistribution object at 0x7fde31628c70>, <importlib.metadata.PathDistribution object at 0x7fde31628cd0>, <importlib.metadata.PathDistribution object at 0x7fde31628d30>, <importlib.metadata.PathDistribution object at 0x7fde31628d90>, <importlib.metadata.PathDistribution object at 0x7fde31628df0>, <importlib.metadata.PathDistribution object at 0x7fde31628e50>, <importlib.metadata.PathDistribution object at 0x7fde31628eb0>, <importlib.metadata.PathDistribution object at 0x7fde31628f10>, <importlib.metadata.PathDistribution object at 0x7fde31628f70>, <importlib.metadata.PathDistribution object at 0x7fde31628fd0>, <importlib.metadata.PathDistribution object at 0x7fde31629030>, <importlib.metadata.PathDistribution object at 0x7fde31629090>, <importlib.metadata.PathDistribution object at 0x7fde316290f0>, <importlib.metadata.PathDistribution object at 0x7fde31629150>, <importlib.metadata.PathDistribution object at 0x7fde316291b0>, <importlib.metadata.PathDistribution object at 0x7fde31629210>]
For the second part, I did
import itertools
list(itertools.chain.from_iterable(dist.entry_points for dist in mt.distributions()))
and got
[EntryPoint(name='matplotlib', value='pandas:plotting._matplotlib', group='pandas_plotting_backends'), EntryPoint(name='markdown-it', value='markdown_it.cli.parse:main', group='console_scripts'), EntryPoint(name='pygmentize', value='pygments.cmdline:main', group='console_scripts'), EntryPoint(name='AutoROM', value='AutoROM.roms:export', group='ale_py.roms'), EntryPoint(name='AutoROM', value='AutoROM:cli', group='console_scripts'), EntryPoint(name='ale-import-roms', value='ale_py.scripts.import_roms:main', group='console_scripts'), EntryPoint(name='ALE', value='ale_py.gym:register_gym_envs', group='gym.envs'), EntryPoint(name='__internal__', value='ale_py.gym:register_legacy_gym_envs', group='gym.envs'), EntryPoint(name='wheel', value='wheel.cli:main', group='console_scripts'), EntryPoint(name='bdist_wheel', value='wheel.bdist_wheel:bdist_wheel', group='distutils.commands'), EntryPoint(name='field', value='stevedore.example2.fields:FieldList', group='stevedore.example.formatter'), EntryPoint(name='plain', value='stevedore.example.simple:Simple', group='stevedore.example.formatter'), EntryPoint(name='simple', value='stevedore.example.simple:Simple', group='stevedore.example.formatter'), EntryPoint(name='e1', value='stevedore.tests.test_extension:BrokenExtension', group='stevedore.test.extension'), EntryPoint(name='e2', value='stevedore.tests.notfound:UnimportableExtension', group='stevedore.test.extension'), EntryPoint(name='t1', value='stevedore.tests.test_extension:FauxExtension', group='stevedore.test.extension'), EntryPoint(name='t2', value='stevedore.tests.test_extension:FauxExtension', group='stevedore.test.extension'), EntryPoint(name='cygdb', value='Cython.Debugger.Cygdb:main', group='console_scripts'), EntryPoint(name='cython', value='Cython.Compiler.Main:setuptools_main', group='console_scripts'), EntryPoint(name='cythonize', value='Cython.Build.Cythonize:main', group='console_scripts'), EntryPoint(name='wit', value='tensorboard_plugin_wit.wit_plugin_loader:WhatIfToolPluginLoader', group='tensorboard_plugins'), EntryPoint(name='hook-dirs', value='pygame.__pyinstaller:get_hook_dirs', group='pyinstaller40'), EntryPoint(name='alias', value='setuptools.command.alias:alias', group='distutils.commands'), EntryPoint(name='bdist_egg', value='setuptools.command.bdist_egg:bdist_egg', group='distutils.commands'), EntryPoint(name='bdist_rpm', value='setuptools.command.bdist_rpm:bdist_rpm', group='distutils.commands'), EntryPoint(name='build', value='setuptools.command.build:build', group='distutils.commands'), EntryPoint(name='build_clib', value='setuptools.command.build_clib:build_clib', group='distutils.commands'), EntryPoint(name='build_ext', value='setuptools.command.build_ext:build_ext', group='distutils.commands'), EntryPoint(name='build_py', value='setuptools.command.build_py:build_py', group='distutils.commands'), EntryPoint(name='develop', value='setuptools.command.develop:develop', group='distutils.commands'), EntryPoint(name='dist_info', value='setuptools.command.dist_info:dist_info', group='distutils.commands'), EntryPoint(name='easy_install', value='setuptools.command.easy_install:easy_install', group='distutils.commands'), EntryPoint(name='editable_wheel', value='setuptools.command.editable_wheel:editable_wheel', group='distutils.commands'), EntryPoint(name='egg_info', value='setuptools.command.egg_info:egg_info', group='distutils.commands'), EntryPoint(name='install', value='setuptools.command.install:install', group='distutils.commands'), EntryPoint(name='install_egg_info', value='setuptools.command.install_egg_info:install_egg_info', group='distutils.commands'), EntryPoint(name='install_lib', value='setuptools.command.install_lib:install_lib', group='distutils.commands'), EntryPoint(name='install_scripts', value='setuptools.command.install_scripts:install_scripts', group='distutils.commands'), EntryPoint(name='rotate', value='setuptools.command.rotate:rotate', group='distutils.commands'), EntryPoint(name='saveopts', value='setuptools.command.saveopts:saveopts', group='distutils.commands'), EntryPoint(name='sdist', value='setuptools.command.sdist:sdist', group='distutils.commands'), EntryPoint(name='setopt', value='setuptools.command.setopt:setopt', group='distutils.commands'), EntryPoint(name='test', value='setuptools.command.test:test', group='distutils.commands'), EntryPoint(name='upload_docs', value='setuptools.command.upload_docs:upload_docs', group='distutils.commands'), EntryPoint(name='dependency_links', value='setuptools.dist:assert_string_list', group='distutils.setup_keywords'), EntryPoint(name='eager_resources', value='setuptools.dist:assert_string_list', group='distutils.setup_keywords'), EntryPoint(name='entry_points', value='setuptools.dist:check_entry_points', group='distutils.setup_keywords'), EntryPoint(name='exclude_package_data', value='setuptools.dist:check_package_data', group='distutils.setup_keywords'), EntryPoint(name='extras_require', value='setuptools.dist:check_extras', group='distutils.setup_keywords'), EntryPoint(name='include_package_data', value='setuptools.dist:assert_bool', group='distutils.setup_keywords'), EntryPoint(name='install_requires', value='setuptools.dist:check_requirements', group='distutils.setup_keywords'), EntryPoint(name='namespace_packages', value='setuptools.dist:check_nsp', group='distutils.setup_keywords'), EntryPoint(name='package_data', value='setuptools.dist:check_package_data', group='distutils.setup_keywords'), EntryPoint(name='packages', value='setuptools.dist:check_packages', group='distutils.setup_keywords'), EntryPoint(name='python_requires', value='setuptools.dist:check_specifier', group='distutils.setup_keywords'), EntryPoint(name='setup_requires', value='setuptools.dist:check_requirements', group='distutils.setup_keywords'), EntryPoint(name='test_loader', value='setuptools.dist:check_importable', group='distutils.setup_keywords'), EntryPoint(name='test_runner', value='setuptools.dist:check_importable', group='distutils.setup_keywords'), EntryPoint(name='test_suite', value='setuptools.dist:check_test_suite', group='distutils.setup_keywords'), EntryPoint(name='tests_require', value='setuptools.dist:check_requirements', group='distutils.setup_keywords'), EntryPoint(name='use_2to3', value='setuptools.dist:invalid_unless_false', group='distutils.setup_keywords'), EntryPoint(name='zip_safe', value='setuptools.dist:assert_bool', group='distutils.setup_keywords'), EntryPoint(name='PKG-INFO', value='setuptools.command.egg_info:write_pkg_info', group='egg_info.writers'), EntryPoint(name='dependency_links.txt', value='setuptools.command.egg_info:overwrite_arg', group='egg_info.writers'), EntryPoint(name='depends.txt', value='setuptools.command.egg_info:warn_depends_obsolete', group='egg_info.writers'), EntryPoint(name='eager_resources.txt', value='setuptools.command.egg_info:overwrite_arg', group='egg_info.writers'), EntryPoint(name='entry_points.txt', value='setuptools.command.egg_info:write_entries', group='egg_info.writers'), EntryPoint(name='namespace_packages.txt', value='setuptools.command.egg_info:overwrite_arg', group='egg_info.writers'), EntryPoint(name='requires.txt', value='setuptools.command.egg_info:write_requirements', group='egg_info.writers'), EntryPoint(name='top_level.txt', value='setuptools.command.egg_info:write_toplevel_names', group='egg_info.writers'), EntryPoint(name='keywords', value='setuptools.dist:Distribution._finalize_setup_keywords', group='setuptools.finalize_distribution_options'), EntryPoint(name='parent_finalize', value='setuptools.dist:_Distribution.finalize_options', group='setuptools.finalize_distribution_options'), EntryPoint(name='py.test', value='pytest:console_main', group='console_scripts'), EntryPoint(name='pytest', value='pytest:console_main', group='console_scripts'), EntryPoint(name='swig', value='swig:swig', group='console_scripts'), EntryPoint(name='lightning.qubit', value='pennylane_lightning:LightningQubit', group='pennylane.plugins'), EntryPoint(name='imageio_download_bin', value='imageio.__main__:download_bin_main', group='console_scripts'), EntryPoint(name='imageio_remove_bin', value='imageio.__main__:remove_bin_main', group='console_scripts'), EntryPoint(name='__root__', value='shimmy.registration:register_gymnasium_envs', group='gymnasium.envs'), EntryPoint(name='pyrsa-decrypt', value='rsa.cli:decrypt', group='console_scripts'), EntryPoint(name='pyrsa-encrypt', value='rsa.cli:encrypt', group='console_scripts'), EntryPoint(name='pyrsa-keygen', value='rsa.cli:keygen', group='console_scripts'), EntryPoint(name='pyrsa-priv2pub', value='rsa.util:private_to_public', group='console_scripts'), EntryPoint(name='pyrsa-sign', value='rsa.cli:sign', group='console_scripts'), EntryPoint(name='pyrsa-verify', value='rsa.cli:verify', group='console_scripts'), EntryPoint(name='tensorboard', value='tensorboard.main:run_main', group='console_scripts'), EntryPoint(name='projector', value='tensorboard.plugins.projector.projector_plugin:ProjectorPlugin', group='tensorboard_plugins'), EntryPoint(name='tqdm', value='tqdm.cli:main', group='console_scripts'), EntryPoint(name='clifford.default', value='qiskit.transpiler.passes.synthesis.high_level_synthesis:DefaultSynthesisClifford', group='qiskit.synthesis'), EntryPoint(name='linear_function.default', value='qiskit.transpiler.passes.synthesis.high_level_synthesis:DefaultSynthesisLinearFunction', group='qiskit.synthesis'), EntryPoint(name='basic', value='qiskit.transpiler.preset_passmanagers.builtin_plugins:BasicSwapPassManager', group='qiskit.transpiler.routing'), EntryPoint(name='lookahead', value='qiskit.transpiler.preset_passmanagers.builtin_plugins:LookaheadSwapPassManager', group='qiskit.transpiler.routing'), EntryPoint(name='none', value='qiskit.transpiler.preset_passmanagers.builtin_plugins:NoneRoutingPassManager', group='qiskit.transpiler.routing'), EntryPoint(name='sabre', value='qiskit.transpiler.preset_passmanagers.builtin_plugins:SabreSwapPassManager', group='qiskit.transpiler.routing'), EntryPoint(name='stochastic', value='qiskit.transpiler.preset_passmanagers.builtin_plugins:StochasticSwapPassManager', group='qiskit.transpiler.routing'), EntryPoint(name='aqc', value='qiskit.transpiler.synthesis.aqc.aqc_plugin:AQCSynthesisPlugin', group='qiskit.unitary_synthesis'), EntryPoint(name='default', value='qiskit.transpiler.passes.synthesis.unitary_synthesis:DefaultUnitarySynthesis', group='qiskit.unitary_synthesis'), EntryPoint(name='fonttools', value='fontTools.__main__:main', group='console_scripts'), EntryPoint(name='pyftmerge', value='fontTools.merge:main', group='console_scripts'), EntryPoint(name='pyftsubset', value='fontTools.subset:main', group='console_scripts'), EntryPoint(name='ttx', value='fontTools.ttx:main', group='console_scripts'), EntryPoint(name='__root__', value='gym_minigrid.__init__:register_minigrid_envs', group='gym.envs'), EntryPoint(name='torchpack', value='torchpack.launch:main', group='console_scripts'), EntryPoint(name='ninja', value='ninja:ninja', group='console_scripts'), EntryPoint(name='wsdump', value='websocket._wsdump:main', group='console_scripts'), EntryPoint(name='cffi_modules', value='cffi.setuptools_ext:cffi_modules', group='distutils.setup_keywords'), EntryPoint(name='pbr', value='pbr.cmd.main:main', group='console_scripts'), EntryPoint(name='pbr', value='pbr.core:pbr', group='distutils.setup_keywords'), EntryPoint(name='pbr.json', value='pbr.pbr_json:write_pbr_json', group='egg_info.writers'), EntryPoint(name='ale-import-roms', value='ale_py.scripts.import_roms:main', group='console_scripts'), EntryPoint(name='ALE', value='ale_py.gym:register_gym_envs', group='gym.envs'), EntryPoint(name='__internal__', value='ale_py.gym:register_legacy_gym_envs', group='gym.envs'), EntryPoint(name='numpy', value='numpy.array_api', group='array_api'), EntryPoint(name='f2py', value='numpy.f2py.f2py2e:main', group='console_scripts'), EntryPoint(name='f2py3', value='numpy.f2py.f2py2e:main', group='console_scripts'), EntryPoint(name='f2py3.10', value='numpy.f2py.f2py2e:main', group='console_scripts'), EntryPoint(name='hook-dirs', value='numpy:_pyinstaller_hooks_dir', group='pyinstaller40'), EntryPoint(name='__root__', value='minigrid.__init__:register_minigrid_envs', group='gymnasium.envs'), EntryPoint(name='convert-caffe2-to-onnx', value='caffe2.python.onnx.bin.conversion:caffe2_to_onnx', group='console_scripts'), EntryPoint(name='convert-onnx-to-caffe2', value='caffe2.python.onnx.bin.conversion:onnx_to_caffe2', group='console_scripts'), EntryPoint(name='torchrun', value='torch.distributed.run:main', group='console_scripts'), EntryPoint(name='markdown_py', value='markdown.__main__:run', group='console_scripts'), EntryPoint(name='abbr', value='markdown.extensions.abbr:AbbrExtension', group='markdown.extensions'), EntryPoint(name='admonition', value='markdown.extensions.admonition:AdmonitionExtension', group='markdown.extensions'), EntryPoint(name='attr_list', value='markdown.extensions.attr_list:AttrListExtension', group='markdown.extensions'), EntryPoint(name='codehilite', value='markdown.extensions.codehilite:CodeHiliteExtension', group='markdown.extensions'), EntryPoint(name='def_list', value='markdown.extensions.def_list:DefListExtension', group='markdown.extensions'), EntryPoint(name='extra', value='markdown.extensions.extra:ExtraExtension', group='markdown.extensions'), EntryPoint(name='fenced_code', value='markdown.extensions.fenced_code:FencedCodeExtension', group='markdown.extensions'), EntryPoint(name='footnotes', value='markdown.extensions.footnotes:FootnoteExtension', group='markdown.extensions'), EntryPoint(name='legacy_attrs', value='markdown.extensions.legacy_attrs:LegacyAttrExtension', group='markdown.extensions'), EntryPoint(name='legacy_em', value='markdown.extensions.legacy_em:LegacyEmExtension', group='markdown.extensions'), EntryPoint(name='md_in_html', value='markdown.extensions.md_in_html:MarkdownInHtmlExtension', group='markdown.extensions'), EntryPoint(name='meta', value='markdown.extensions.meta:MetaExtension', group='markdown.extensions'), EntryPoint(name='nl2br', value='markdown.extensions.nl2br:Nl2BrExtension', group='markdown.extensions'), EntryPoint(name='sane_lists', value='markdown.extensions.sane_lists:SaneListExtension', group='markdown.extensions'), EntryPoint(name='smarty', value='markdown.extensions.smarty:SmartyExtension', group='markdown.extensions'), EntryPoint(name='tables', value='markdown.extensions.tables:TableExtension', group='markdown.extensions'), EntryPoint(name='toc', value='markdown.extensions.toc:TocExtension', group='markdown.extensions'), EntryPoint(name='wikilinks', value='markdown.extensions.wikilinks:WikiLinkExtension', group='markdown.extensions'), EntryPoint(name='tabulate', value='tabulate:_main', group='console_scripts'), EntryPoint(name='pl-device-test', value='pennylane.devices.tests:cli', group='console_scripts'), EntryPoint(name='default.gaussian', value='pennylane.devices:DefaultGaussian', group='pennylane.plugins'), EntryPoint(name='default.mixed', value='pennylane.devices.default_mixed:DefaultMixed', group='pennylane.plugins'), EntryPoint(name='default.qubit', value='pennylane.devices:DefaultQubit', group='pennylane.plugins'), EntryPoint(name='default.qubit.autograd', value='pennylane.devices.default_qubit_autograd:DefaultQubitAutograd', group='pennylane.plugins'), EntryPoint(name='default.qubit.jax', value='pennylane.devices.default_qubit_jax:DefaultQubitJax', group='pennylane.plugins'), EntryPoint(name='default.qubit.tf', value='pennylane.devices.default_qubit_tf:DefaultQubitTF', group='pennylane.plugins'), EntryPoint(name='default.qubit.torch', value='pennylane.devices.default_qubit_torch:DefaultQubitTorch', group='pennylane.plugins'), EntryPoint(name='default.qutrit', value='pennylane.devices.default_qutrit:DefaultQutrit', group='pennylane.plugins'), EntryPoint(name='pip', value='pip._internal.cli.main:main', group='console_scripts'), EntryPoint(name='pip3', value='pip._internal.cli.main:main', group='console_scripts'), EntryPoint(name='pip3.9', value='pip._internal.cli.main:main', group='console_scripts'), EntryPoint(name='latex2text', value='pylatexenc.latex2text.__main__:main', group='console_scripts'), EntryPoint(name='latexencode', value='pylatexenc.latexencode.__main__:main', group='console_scripts'), EntryPoint(name='latexwalker', value='pylatexenc.latexwalker.__main__:main', group='console_scripts'), EntryPoint(name='isympy', value='isympy:main', group='console_scripts'), EntryPoint(name='google-oauthlib-tool', value='google_auth_oauthlib.tool.__main__:main [tool]', group='console_scripts'), EntryPoint(name='matplotlib', value='pandas:plotting._matplotlib', group='pandas_plotting_backends'), EntryPoint(name='estimator_ckpt_converter', value='tensorflow_estimator.python.estimator.tools.checkpoint_converter:main', group='console_scripts'), EntryPoint(name='import_pb_to_tensorboard', value='tensorflow.python.tools.import_pb_to_tensorboard:main', group='console_scripts'), EntryPoint(name='saved_model_cli', value='tensorflow.python.tools.saved_model_cli:main', group='console_scripts'), EntryPoint(name='tensorboard', value='tensorboard.main:run_main', group='console_scripts'), EntryPoint(name='tf_upgrade_v2', value='tensorflow.tools.compatibility.tf_upgrade_v2_main:main', group='console_scripts'), EntryPoint(name='tflite_convert', value='tensorflow.lite.python.tflite_convert:main', group='console_scripts'), EntryPoint(name='toco', value='tensorflow.lite.python.tflite_convert:main', group='console_scripts'), EntryPoint(name='toco_from_protos', value='tensorflow.lite.toco.python.toco_from_protos:main', group='console_scripts'), EntryPoint(name='pygmentize', value='pygments.cmdline:main', group='console_scripts'), EntryPoint(name='markdown-it', value='markdown_it.cli.parse:main', group='console_scripts'), EntryPoint(name='chardetect', value='chardet.cli.chardetect:main', group='console_scripts'), EntryPoint(name='keyring', value='keyring.cli:main', group='console_scripts'), EntryPoint(name='keyring', value='keyring.devpi_client', group='devpi_client'), EntryPoint(name='KWallet', value='keyring.backends.kwallet', group='keyring.backends'), EntryPoint(name='SecretService', value='keyring.backends.SecretService', group='keyring.backends'), EntryPoint(name='Windows', value='keyring.backends.Windows', group='keyring.backends'), EntryPoint(name='chainer', value='keyring.backends.chainer', group='keyring.backends'), EntryPoint(name='libsecret', value='keyring.backends.libsecret', group='keyring.backends'), EntryPoint(name='macOS', value='keyring.backends.macOS', group='keyring.backends'), EntryPoint(name='futurize', value='libfuturize.main:main', group='console_scripts'), EntryPoint(name='pasteurize', value='libpasteurize.main:main', group='console_scripts'), EntryPoint(name='mako', value='mako.ext.turbogears:TGPlugin', group='python.templating.engines'), EntryPoint(name='mako', value='mako.ext.pygmentplugin:MakoLexer', group='pygments.lexers'), EntryPoint(name='html+mako', value='mako.ext.pygmentplugin:MakoHtmlLexer', group='pygments.lexers'), EntryPoint(name='xml+mako', value='mako.ext.pygmentplugin:MakoXmlLexer', group='pygments.lexers'), EntryPoint(name='js+mako', value='mako.ext.pygmentplugin:MakoJavascriptLexer', group='pygments.lexers'), EntryPoint(name='css+mako', value='mako.ext.pygmentplugin:MakoCssLexer', group='pygments.lexers'), EntryPoint(name='mako', value='mako.ext.babelplugin:extract [babel]', group='babel.extractors'), EntryPoint(name='mako', value='mako.ext.linguaplugin:LinguaMakoExtractor [lingua]', group='lingua.extractors'), EntryPoint(name='mako-render', value='mako.cmd:cmdline', group='console_scripts'), EntryPoint(name='ua', value='uaclient.cli:main', group='console_scripts'), EntryPoint(name='ubuntu-advantage', value='uaclient.cli:main', group='console_scripts'), EntryPoint(name='modify_cache_after', value='language_support_pkgs:apt_cache_add_language_packs', group='aptdaemon.plugins'), EntryPoint(name='what_provides', value='language_support_pkgs:packagekit_what_provides_locale', group='packagekit.apt.plugins'), EntryPoint(name='distro', value='distro.distro:main', group='console_scripts')]
Does that help?
Looking through the SelectableGroups.load
function (https://github.com/python/cpython/blob/5342f5e713e0cc45b6f226d2d053a8cde1b4d68e/Lib/importlib/metadata/__init__.py#L467)
The issue is with one of the group
values not being a str or byte like
import itertools
import importlib.metadata as mt
for entry_point in itertools.chain.from_iterable(dist.entry_points for dist in mt.distributions()):
group = entry_point.group
try:
normalized_name = re.sub(r"[-_.]+", "-", group).lower().replace('-', '_')
except TypeError as e:
print(entry_point)
print(e)
Try this
I tried that, but for some reason, it does not print anything. Is there a way to duplicate the process of importing gymnasium more closely in terms of what gets called?
Is there a way to check the entry point group for a package by name and see if that is package that is causing the problem? I'm wondering if for a certain package, the entry point group is actually being returned as a Nonetype. The problem started after I installed dopamine-rl, so I suspect the problem may be in one of the packages listed here: https://github.com/google/dopamine/blob/master/requirements.txt
Do you think it might help to uninstall Python3.10 completely and start fresh? I didn't want to resort to that, but I would be willing to do it if necessary. I am up against a deadline, so I really need to get this resolved.
Could you confirm the suspect error and you can replicate it with the following code. eps
is itertools.chain.from_iterable(dist.entry_points for dist in mt.distributions())
.
by_group = operator.attrgetter('group')
ordered = sorted(eps, key=by_group)
Then if you compute the key value for each element, see if that raises the error
Thanks! Just to make sure I'm doing this correctly, what's the import for operator
?
import operator
I believe
Right now I think I might go the route of removing my python3.10 installation and rebuilding the ecosystem from scratch. Would that be a safe and viable approach? In particular, would it get rid of the files that are causing the problem?
I just realised that I got this wrong on where the error is
import importlib.metadata as mt
import operator
key = operator.attrgetter('_normalized_name')
for distribution in mt.distributions():
print(distribution) # distribution.name
print(key(distribution))
If this does produce the error, could you use distribution.name
to see the actual name of the distributor with the issue
Thanks! I actually manage to fix the issue by installing python3.11 and continuing on with that, but I will keep this in mind if I encounter this issue again. In the meantime, I should probably let the Kubernetes devs know that Kubernetes has a conflict with Gymnasium.
Question
I am trying to use the latest version of gymnasium with python 3.10.6 on Ubuntu 22.04. When I type
import gymnasium
, I get the following error:I would greatly appreciate guidance on how to fix it.