Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mujoco-py is incompatible with cython 3 (Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil) #773

Open
pseudo-rnd-thoughts opened this issue Jul 17, 2023 · 36 comments

Comments

@pseudo-rnd-thoughts
Copy link

pseudo-rnd-thoughts commented Jul 17, 2023

Describe the bug
Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'

To Reproduce
Install cpython 3.0.0, import mujoco-py

Expected behavior
mujoco-py compiles

Error Messages
From gymnasium's CI

tests/wrappers/test_passive_env_checker.py:9: in <module>
    from tests.envs.test_envs import PASSIVE_CHECK_IGNORE_WARNING
<frozen importlib._bootstrap>:991: in _find_and_load
    ???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked
    ???
<frozen importlib._bootstrap>:671: in _load_unlocked
    ???
../lib/python3.8/site-packages/_pytest/assertion/rewrite.py:168: in exec_module
    exec(co, module.__dict__)
tests/envs/test_envs.py:10: in <module>
    from tests.envs.utils import (
tests/envs/utils.py:34: in <module>
    all_testing_initialised_envs: List[Optional[gym.Env]] = [
tests/envs/utils.py:35: in <listcomp>
    try_make_env(env_spec) for env_spec in gym.envs.registry.values()
tests/envs/utils.py:22: in try_make_env
    return env_spec.make(disable_env_checker=True).unwrapped
gymnasium/envs/registration.py:130: in make
    return make(self, **kwargs)
gymnasium/envs/registration.py:756: in make
    env_creator = load_env_creator(env_spec.entry_point)
gymnasium/envs/registration.py:545: in load_env_creator
    mod = importlib.import_module(mod_name)
../lib/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
gymnasium/envs/mujoco/__init__.py:1: in <module>
    from gymnasium.envs.mujoco.mujoco_env import MujocoEnv, MuJocoPyEnv  # isort:skip
gymnasium/envs/mujoco/mujoco_env.py:13: in <module>
    import mujoco_py
/mujoco-py/mujoco_py/__init__.py:2: in <module>
    from mujoco_py.builder import cymj, ignore_mujoco_warnings, functions, MujocoException
/mujoco-py/mujoco_py/builder.py:504: in <module>
    cymj = load_cython_ext(mujoco_path)
/mujoco-py/mujoco_py/builder.py:110: in load_cython_ext
    cext_so_path = builder.build()
/mujoco-py/mujoco_py/builder.py:226: in build
    built_so_file_path = self._build_impl()
/mujoco-py/mujoco_py/builder.py:278: in _build_impl
    so_file_path = super()._build_impl()
/mujoco-py/mujoco_py/builder.py:239: in _build_impl
    dist.ext_modules = cythonize([self.extension])
../lib/python3.8/site-packages/Cython/Build/Dependencies.py:1134: in cythonize
    cythonize_one(*args)
../lib/python3.8/site-packages/Cython/Build/Dependencies.py:1301: in cythonize_one
    raise CompileError(None, pyx_file)
E   Cython.Compiler.Errors.CompileError: /mujoco-py/mujoco_py/cymj.pyx
------------------------------- Captured stdout --------------------------------
Compiling /mujoco-py/mujoco_py/cymj.pyx because it changed.
[1/1] Cythonizing /mujoco-py/mujoco_py/cymj.pyx
------------------------------- Captured stderr --------------------------------

Error compiling Cython file:
------------------------------------------------------------
...
    See c_warning_callback, which is the C wrapper to the user defined function
    '''
    global py_warning_callback
    global mju_user_warning
    py_warning_callback = warn
    mju_user_warning = c_warning_callback
                       ^
------------------------------------------------------------

/mujoco-py/mujoco_py/cymj.pyx:92:23: Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'

Error compiling Cython file:
------------------------------------------------------------
...
    See c_warning_callback, which is the C wrapper to the user defined function
    '''
    global py_error_callback
    global mju_user_error
    py_error_callback = err_callback
    mju_user_error = c_error_callback
                     ^
------------------------------------------------------------

/mujoco-py/mujoco_py/cymj.pyx:127:21: Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'
@pseudo-rnd-thoughts pseudo-rnd-thoughts changed the title Mujoco-py is incompatible with cpython Mujoco-py is incompatible with cpython 3 Jul 17, 2023
@JayanthRR
Copy link

Facing the same issue.

@ChengDaHaI
Copy link

Same issue on my side

@pseudo-rnd-thoughts pseudo-rnd-thoughts changed the title Mujoco-py is incompatible with cpython 3 Mujoco-py is incompatible with cython 3 Jul 18, 2023
@pseudo-rnd-thoughts
Copy link
Author

I solved it with pip install "cython<3"

@fyqqyf
Copy link

fyqqyf commented Jul 20, 2023

Same issue on my side

@AdilZouitine
Copy link

Same

@ezhang7423
Copy link
Member

TYSM for figuring this out, wasted 3 hours today

@fyqqyf
Copy link

fyqqyf commented Jul 21, 2023

TYSM for figuring this out, wasted 3 hours today

4 hours and 5 times recreate virtual environments 😇

@alafumee
Copy link

already have Cython==0.29.36 but the same error exists when pip install mujoco_py==2.0.2.7

@qodfathr
Copy link

already have Cython==0.29.36 but the same error exists when pip install mujoco_py==2.0.2.7

Same

@ezhang7423
Copy link
Member

I am using mujoco-py==1.50.1.68

@pseudo-rnd-thoughts pseudo-rnd-thoughts changed the title Mujoco-py is incompatible with cython 3 Mujoco-py is incompatible with cython 3 (Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil) Jul 22, 2023
@qodfathr
Copy link

I cannot tell if this is directly related to cython 3 or not. I have 0.29.36 installed (and I've tried many versions from 0.27.2 on up) and the same error is occurring even on mujoco_py==2.0.2.13. I tried to determine if a patch to the underlying c++ compiler was at fault, but that does not seem to be the case.

@pseudo-rnd-thoughts
Copy link
Author

I cannot tell if this is directly related to cython 3 or not. I have 0.29.36 installed (and I've tried many versions from 0.27.2 on up) and the same error is occurring even on mujoco_py==2.0.2.13. I tried to determine if a patch to the underlying c++ compiler was at fault, but that does not seem to be the case.

I would be surprised as our CI should be failing if this was true but it is not failing with cython < 3 also if you are getting the same issue with nogil in the error then this is a cython >= 3 thing

@qodfathr
Copy link

I would be surprised as our CI should be failing if this was true but it is not failing with cython < 3 also if you are getting the same issue with nogil in the error then this is a cython >= 3 thing

I now have it working with mujoco_py==2.0.2.5, but no later 2.0.2.x releases. I see that 2.0.2.5 is probably the last "official" 2.0.2 release, but PyPi is misleading.

@reginald-mclean
Copy link

I was able to use

pip install 'cython<3'

to compile mujoco-py 2.1.2.14 on Ubuntu 22.04, Python 3.8

@Zebin-Li
Copy link

same, cython<3 not works for me

@zuhu2195
Copy link

zuhu2195 commented Jul 31, 2023

I was facing the similar issue in numpy-1.23.3 build with cython 3.0.0, using pip3 install "cython<3" worked for me.

@HasarinduPerera
Copy link

I solved it with pip install "cython<3"

Does not work for me, I am trying to install safety-gym.

mujoco200
mujoco-py 2.1.2.14
Ubuntu 20.04
Python 3.6

Anyone found any other ways to resolve?

TIA

@zuhu2195
Copy link

zuhu2195 commented Aug 3, 2023

What is your current Cython version?

@HasarinduPerera
Copy link

What is your current Cython version?

Cython 0.29.36

@zuhu2195
Copy link

zuhu2195 commented Aug 3, 2023

can you try updating your python to a higher version like 3.8.

@HasarinduPerera
Copy link

can you try updating your python to a higher version like 3.8.

No progress.

@HasarinduPerera
Copy link

I would be surprised as our CI should be failing if this was true but it is not failing with cython < 3 also if you are getting the same issue with nogil in the error then this is a cython >= 3 thing

I now have it working with mujoco_py==2.0.2.5, but no later 2.0.2.x releases. I see that 2.0.2.5 is probably the last "official" 2.0.2 release, but PyPi is misleading.

This Worked!

@mynkpl1998
Copy link

mynkpl1998 commented Sep 2, 2023

Surprisingly, uninstalling Cython fixed the problem for me.

Python: 3.8
gymnasium==0.29.1
mujoco==2.3.7

Mujoco version: 2.10

@harryting-yiting
Copy link

harryting-yiting commented Sep 9, 2023

  1. Add a compiler directive " compiler_directives={'legacy_implicit_noexcept': True}" to the line 239 of mujoco_py/builder.py
 def _build_impl(self):
        dist = Distribution({
            "script_name": None,
            "script_args": ["build_ext"]
        })
        dist.ext_modules = cythonize([self.extension],compiler_directives={'legacy_implicit_noexcept': True})
  1. Update Cython to the latest 3.0.2 version.
pip install -U Cython
  1. The reasons can be found here
    [MAINT, Cython] Implicit noexcept is deprecated in Cython 3.0 scikit-learn/scikit-learn#25609
    [BUG] enum classes cannot be used in cdef class method declarations cython/cython#5637

@zerlinwang
Copy link

I would be surprised as our CI should be failing if this was true but it is not failing with cython < 3 also if you are getting the same issue with nogil in the error then this is a cython >= 3 thing

I now have it working with mujoco_py==2.0.2.5, but no later 2.0.2.x releases. I see that 2.0.2.5 is probably the last "official" 2.0.2 release, but PyPi is misleading.

This Worked!

It works for my.

@glorgao
Copy link

glorgao commented Sep 19, 2023

I am use mujoco210 and mujoco_py==2.1.2.14
This command helps for the cymj error:

I solved it with pip install "cython<3"

Thanks!

@glorgao
Copy link

glorgao commented Sep 19, 2023

I solved it with pip install "cython<3"

Does not work for me, I am trying to install safety-gym.

mujoco200 mujoco-py 2.1.2.14 Ubuntu 20.04 Python 3.6

Anyone found any other ways to resolve?

TIA

mujoco-py 2.1.2.14 and mujoco200 are not match. Use mujoco_py 2.1.2.14 with mujoco210, or mujoco>2.0 <2.1 with mujoco200.

@iLern
Copy link

iLern commented Nov 28, 2023

  1. Add a compiler directive " compiler_directives={'legacy_implicit_noexcept': True}" to the line 239 of mujoco_py/builder.py
 def _build_impl(self):
        dist = Distribution({
            "script_name": None,
            "script_args": ["build_ext"]
        })
        dist.ext_modules = cythonize([self.extension],compiler_directives={'legacy_implicit_noexcept': True})
  1. Update Cython to the latest 3.0.2 version.
pip install -U Cython
  1. The reasons can be found here
    [MAINT, Cython] Implicit noexcept is deprecated in Cython 3.0 scikit-learn/scikit-learn#25609
    [BUG] enum classes cannot be used in cdef class method declarations cython/cython#5637

This works for my problem. Thanks a lot.

my env:

  • Ubuntu 22.04
  • python 3.8
  • mujoco 2.1.0
  • mujoco-py 2.1.2.14
  • Cython 3.0.6

j3soon added a commit to j3soon/rail-berkeley-softlearning that referenced this issue Nov 29, 2023
The following reference suggests solving with `pip install "cython<3"`,
but the fix doesn't work for me.

Reference: https://github.com/openai/mujoco-py/issues/773#issuecomment-1639684035

Before commit a01fd32, an earlier version of mujoco-py was used,
specifically mujoco-py==2.0.2.10. This error seems to be resolved by
using this earlier version. This is the latest version that can be
successfully installed, as mujoco-py==2.0.2.11 also reports the same
error.

References:
- https://github.com/rail-berkeley/softlearning/commit/a01fd32b9ef80d875543a49673b7c2b0be516c74
- https://pypi.org/project/mujoco-py/#history

Full error message:

    # 21 [12/15] RUN --mount=type=secret,id=mjkey,dst=/root/.mujoco/mjkey.txt     conda env update -f /tmp/environment.yml     && conda clean --all -y
    # 21 1.584 Retrieving notices: ...working... done
    # 21 2.032 Channels:
    # 21 2.032  - defaults
    # 21 2.032  - conda-forge
    # 21 2.032 Platform: linux-64
    # 21 2.032 Collecting package metadata (repodata.json): ...working... done
    # 21 28.16 Solving environment: ...working... done
    # 21 36.58
    # 21 36.58 Downloading and Extracting Packages: ...working... done
    # 21 36.58 Preparing transaction: ...working... done
    # 21 39.41 Verifying transaction: ...working... done
    # 21 42.16 Executing transaction: ...working... done
    # 21 1135.1 Installing pip dependencies: ...working... Ran pip subprocess with arguments:
    # 21 1359.5 ['/opt/conda/envs/softlearning/bin/python', '-m', 'pip', 'install', '-U', '-r', '/tmp/condaenv.172ujigq.requirements.txt', '--exists-action=b']
    # 21 1359.5 Pip subprocess output:
    # 21 1359.5 Collecting absl-py==0.11.0 (from -r /tmp/./requirements.txt (line 1))
    # 21 1359.5   Downloading absl_py-0.11.0-py3-none-any.whl (127 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 127.8/127.8 kB 658.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting aiohttp==3.7.4 (from -r /tmp/./requirements.txt (line 2))
    # 21 1359.5   Downloading aiohttp-3.7.4-cp38-cp38-manylinux2014_x86_64.whl (1.5 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.5/1.5 MB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting aiohttp-cors==0.7.0 (from -r /tmp/./requirements.txt (line 3))
    # 21 1359.5   Downloading aiohttp_cors-0.7.0-py3-none-any.whl (27 kB)
    # 21 1359.5 Collecting aioredis==1.3.1 (from -r /tmp/./requirements.txt (line 4))
    # 21 1359.5   Downloading aioredis-1.3.1-py3-none-any.whl (65 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.3/65.3 kB 410.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting appnope==0.1.2 (from -r /tmp/./requirements.txt (line 5))
    # 21 1359.5   Downloading appnope-0.1.2-py2.py3-none-any.whl (4.3 kB)
    # 21 1359.5 Collecting astunparse==1.6.3 (from -r /tmp/./requirements.txt (line 6))
    # 21 1359.5   Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
    # 21 1359.5 Collecting async-timeout==3.0.1 (from -r /tmp/./requirements.txt (line 7))
    # 21 1359.5   Downloading async_timeout-3.0.1-py3-none-any.whl (8.2 kB)
    # 21 1359.5 Collecting attrs==20.3.0 (from -r /tmp/./requirements.txt (line 8))
    # 21 1359.5   Downloading attrs-20.3.0-py2.py3-none-any.whl (49 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 49.3/49.3 kB 329.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting backcall==0.2.0 (from -r /tmp/./requirements.txt (line 9))
    # 21 1359.5   Downloading backcall-0.2.0-py2.py3-none-any.whl (11 kB)
    # 21 1359.5 Collecting blessings==1.7 (from -r /tmp/./requirements.txt (line 10))
    # 21 1359.5   Downloading blessings-1.7-py3-none-any.whl (18 kB)
    # 21 1359.5 Collecting brotlipy==0.7.0 (from -r /tmp/./requirements.txt (line 11))
    # 21 1359.5   Downloading brotlipy-0.7.0-cp38-cp38-manylinux1_x86_64.whl (1.1 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 4.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting cachetools==4.2.0 (from -r /tmp/./requirements.txt (line 12))
    # 21 1359.5   Downloading cachetools-4.2.0-py3-none-any.whl (12 kB)
    # 21 1359.5 Collecting certifi==2020.12.5 (from -r /tmp/./requirements.txt (line 13))
    # 21 1359.5   Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.5/147.5 kB 1.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting cffi==1.14.4 (from -r /tmp/./requirements.txt (line 14))
    # 21 1359.5   Downloading cffi-1.14.4-cp38-cp38-manylinux1_x86_64.whl (411 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 411.1/411.1 kB 3.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting chardet==3.0.4 (from -r /tmp/./requirements.txt (line 15))
    # 21 1359.5   Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.4/133.4 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting click==7.1.2 (from -r /tmp/./requirements.txt (line 16))
    # 21 1359.5   Downloading click-7.1.2-py2.py3-none-any.whl (82 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 82.8/82.8 kB 863.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting cloudpickle==1.6.0 (from -r /tmp/./requirements.txt (line 17))
    # 21 1359.5   Downloading cloudpickle-1.6.0-py3-none-any.whl (23 kB)
    # 21 1359.5 Collecting colorama==0.4.4 (from -r /tmp/./requirements.txt (line 18))
    # 21 1359.5   Downloading colorama-0.4.4-py2.py3-none-any.whl (16 kB)
    # 21 1359.5 Collecting colorful==0.5.4 (from -r /tmp/./requirements.txt (line 19))
    # 21 1359.5   Downloading colorful-0.5.4-py2.py3-none-any.whl (201 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 202.0/202.0 kB 1.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting cryptography==3.3.2 (from -r /tmp/./requirements.txt (line 20))
    # 21 1359.5   Downloading cryptography-3.3.2-cp36-abi3-manylinux2010_x86_64.whl (2.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.6/2.6 MB 4.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting cycler==0.10.0 (from -r /tmp/./requirements.txt (line 21))
    # 21 1359.5   Downloading cycler-0.10.0-py2.py3-none-any.whl (6.5 kB)
    # 21 1359.5 Collecting Cython==0.29.21 (from -r /tmp/./requirements.txt (line 22))
    # 21 1359.5   Downloading Cython-0.29.21-cp38-cp38-manylinux1_x86_64.whl (1.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.9/1.9 MB 3.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting decorator==4.4.2 (from -r /tmp/./requirements.txt (line 23))
    # 21 1359.5   Downloading decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
    # 21 1359.5 Collecting dm-control==0.0.322773188 (from -r /tmp/./requirements.txt (line 24))
    # 21 1359.5   Downloading dm_control-0.0.322773188-py3-none-any.whl (18.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 18.6/18.6 MB 4.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting dm-env==1.3 (from -r /tmp/./requirements.txt (line 25))
    # 21 1359.5   Downloading dm_env-1.3-py3-none-any.whl (24 kB)
    # 21 1359.5 Collecting dm-tree==0.1.5 (from -r /tmp/./requirements.txt (line 26))
    # 21 1359.5   Downloading dm_tree-0.1.5-cp38-cp38-manylinux2014_x86_64.whl (91 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 91.6/91.6 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting fasteners==0.16 (from -r /tmp/./requirements.txt (line 27))
    # 21 1359.5   Downloading fasteners-0.16-py2.py3-none-any.whl (28 kB)
    # 21 1359.5 Collecting filelock==3.0.12 (from -r /tmp/./requirements.txt (line 28))
    # 21 1359.5   Downloading filelock-3.0.12-py3-none-any.whl (7.6 kB)
    # 21 1359.5 Collecting flatbuffers==1.12 (from -r /tmp/./requirements.txt (line 29))
    # 21 1359.5   Downloading flatbuffers-1.12-py2.py3-none-any.whl (15 kB)
    # 21 1359.5 Collecting future==0.18.2 (from -r /tmp/./requirements.txt (line 30))
    # 21 1359.5   Downloading future-0.18.2.tar.gz (829 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 829.2/829.2 kB 3.3 MB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting gast==0.3.3 (from -r /tmp/./requirements.txt (line 31))
    # 21 1359.5   Downloading gast-0.3.3-py2.py3-none-any.whl (9.7 kB)
    # 21 1359.5 Collecting gitdb==4.0.5 (from -r /tmp/./requirements.txt (line 32))
    # 21 1359.5   Downloading gitdb-4.0.5-py3-none-any.whl (63 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 63.1/63.1 kB 668.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting GitPython==3.1.12 (from -r /tmp/./requirements.txt (line 33))
    # 21 1359.5   Downloading GitPython-3.1.12-py3-none-any.whl (159 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.5/159.5 kB 1.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting glfw==2.0.0 (from -r /tmp/./requirements.txt (line 34))
    # 21 1359.5   Downloading glfw-2.0.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38-none-manylinux2014_x86_64.whl (203 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 203.9/203.9 kB 1.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting google-api-core==1.25.0 (from -r /tmp/./requirements.txt (line 35))
    # 21 1359.5   Downloading google_api_core-1.25.0-py2.py3-none-any.whl (92 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 92.3/92.3 kB 786.1 kB/s eta 0:00:00
    # 21 1359.5 Collecting google-auth==1.24.0 (from -r /tmp/./requirements.txt (line 36))
    # 21 1359.5   Downloading google_auth-1.24.0-py2.py3-none-any.whl (114 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 114.7/114.7 kB 849.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting google-auth-oauthlib==0.4.2 (from -r /tmp/./requirements.txt (line 37))
    # 21 1359.5   Downloading google_auth_oauthlib-0.4.2-py2.py3-none-any.whl (18 kB)
    # 21 1359.5 Collecting google-pasta==0.2.0 (from -r /tmp/./requirements.txt (line 38))
    # 21 1359.5   Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.5/57.5 kB 351.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting googleapis-common-protos==1.52.0 (from -r /tmp/./requirements.txt (line 39))
    # 21 1359.5   Downloading googleapis_common_protos-1.52.0-py2.py3-none-any.whl (100 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.2/100.2 kB 639.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting gpustat==0.6.0 (from -r /tmp/./requirements.txt (line 40))
    # 21 1359.5   Downloading gpustat-0.6.0.tar.gz (78 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.1/78.1 kB 524.6 kB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting grpcio==1.32.0 (from -r /tmp/./requirements.txt (line 41))
    # 21 1359.5   Downloading grpcio-1.32.0-cp38-cp38-manylinux2014_x86_64.whl (3.8 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.8/3.8 MB 2.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting gtimer==1.0.0b5 (from -r /tmp/./requirements.txt (line 42))
    # 21 1359.5   Downloading gtimer-1.0.0b5.tar.gz (23 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting h5py==2.10.0 (from -r /tmp/./requirements.txt (line 43))
    # 21 1359.5   Downloading h5py-2.10.0-cp38-cp38-manylinux1_x86_64.whl (2.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.9/2.9 MB 2.0 MB/s eta 0:00:00
    # 21 1359.5 Collecting hiredis==1.1.0 (from -r /tmp/./requirements.txt (line 44))
    # 21 1359.5   Downloading hiredis-1.1.0-cp38-cp38-manylinux2010_x86_64.whl (62 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.7/62.7 kB 314.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting idna==2.10 (from -r /tmp/./requirements.txt (line 45))
    # 21 1359.5   Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.8/58.8 kB 278.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting imageio==2.9.0 (from -r /tmp/./requirements.txt (line 46))
    # 21 1359.5   Downloading imageio-2.9.0-py3-none-any.whl (3.3 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 2.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting iniconfig==1.1.1 (from -r /tmp/./requirements.txt (line 47))
    # 21 1359.5   Downloading iniconfig-1.1.1-py2.py3-none-any.whl (5.0 kB)
    # 21 1359.5 Collecting ipdb==0.13.4 (from -r /tmp/./requirements.txt (line 48))
    # 21 1359.5   Downloading ipdb-0.13.4.tar.gz (15 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting ipython==7.19.0 (from -r /tmp/./requirements.txt (line 49))
    # 21 1359.5   Downloading ipython-7.19.0-py3-none-any.whl (784 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 784.7/784.7 kB 2.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting ipython-genutils==0.2.0 (from -r /tmp/./requirements.txt (line 50))
    # 21 1359.5   Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB)
    # 21 1359.5 Collecting jedi==0.18.0 (from -r /tmp/./requirements.txt (line 51))
    # 21 1359.5   Downloading jedi-0.18.0-py2.py3-none-any.whl (1.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 5.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting joblib==1.0.0 (from -r /tmp/./requirements.txt (line 52))
    # 21 1359.5   Downloading joblib-1.0.0-py3-none-any.whl (302 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 303.0/303.0 kB 2.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting jsonschema==3.2.0 (from -r /tmp/./requirements.txt (line 53))
    # 21 1359.5   Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.3/56.3 kB 402.5 kB/s eta 0:00:00
    # 21 1359.5 Collecting Keras-Preprocessing==1.1.2 (from -r /tmp/./requirements.txt (line 54))
    # 21 1359.5   Downloading Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.6/42.6 kB 263.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting kiwisolver==1.3.1 (from -r /tmp/./requirements.txt (line 55))
    # 21 1359.5   Downloading kiwisolver-1.3.1-cp38-cp38-manylinux1_x86_64.whl (1.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 4.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting labmaze==1.0.3 (from -r /tmp/./requirements.txt (line 56))
    # 21 1359.5   Downloading labmaze-1.0.3-cp38-cp38-manylinux1_x86_64.whl (4.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.9/4.9 MB 4.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting lxml==4.6.2 (from -r /tmp/./requirements.txt (line 57))
    # 21 1359.5   Downloading lxml-4.6.2-cp38-cp38-manylinux1_x86_64.whl (5.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.4/5.4 MB 5.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting Markdown==3.3.3 (from -r /tmp/./requirements.txt (line 58))
    # 21 1359.5   Downloading Markdown-3.3.3-py3-none-any.whl (96 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 96.3/96.3 kB 832.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting matplotlib==3.3.3 (from -r /tmp/./requirements.txt (line 59))
    # 21 1359.5   Downloading matplotlib-3.3.3-cp38-cp38-manylinux1_x86_64.whl (11.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.6/11.6 MB 8.0 MB/s eta 0:00:00
    # 21 1359.5 Collecting msgpack==1.0.2 (from -r /tmp/./requirements.txt (line 60))
    # 21 1359.5   Downloading msgpack-1.0.2-cp38-cp38-manylinux1_x86_64.whl (302 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 302.8/302.8 kB 3.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting mujoco-py==2.0.2.13 (from -r /tmp/./requirements.txt (line 61))
    # 21 1359.5   Downloading mujoco-py-2.0.2.13.tar.gz (792 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 792.0/792.0 kB 5.6 MB/s eta 0:00:00
    # 21 1359.5   Installing build dependencies: started
    # 21 1359.5   Installing build dependencies: finished with status 'done'
    # 21 1359.5   Getting requirements to build wheel: started
    # 21 1359.5   Getting requirements to build wheel: finished with status 'done'
    # 21 1359.5   Installing backend dependencies: started
    # 21 1359.5   Installing backend dependencies: finished with status 'done'
    # 21 1359.5   Preparing metadata (pyproject.toml): started
    # 21 1359.5   Preparing metadata (pyproject.toml): finished with status 'done'
    # 21 1359.5 Collecting multidict==5.1.0 (from -r /tmp/./requirements.txt (line 62))
    # 21 1359.5   Downloading multidict-5.1.0-cp38-cp38-manylinux2014_x86_64.whl (159 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.4/159.4 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting networkx==2.5 (from -r /tmp/./requirements.txt (line 63))
    # 21 1359.5   Downloading networkx-2.5-py3-none-any.whl (1.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 5.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting numpy==1.19.5 (from -r /tmp/./requirements.txt (line 64))
    # 21 1359.5   Downloading numpy-1.19.5-cp38-cp38-manylinux2010_x86_64.whl (14.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.9/14.9 MB 4.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting nvidia-ml-py3==7.352.0 (from -r /tmp/./requirements.txt (line 65))
    # 21 1359.5   Downloading nvidia-ml-py3-7.352.0.tar.gz (19 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting oauthlib==3.1.0 (from -r /tmp/./requirements.txt (line 66))
    # 21 1359.5   Downloading oauthlib-3.1.0-py2.py3-none-any.whl (147 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.4/147.4 kB 1.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting opencensus==0.7.12 (from -r /tmp/./requirements.txt (line 67))
    # 21 1359.5   Downloading opencensus-0.7.12-py2.py3-none-any.whl (127 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 127.2/127.2 kB 973.8 kB/s eta 0:00:00
    # 21 1359.5 Collecting opencensus-context==0.1.2 (from -r /tmp/./requirements.txt (line 68))
    # 21 1359.5   Downloading opencensus_context-0.1.2-py2.py3-none-any.whl (4.4 kB)
    # 21 1359.5 Collecting opt-einsum==3.3.0 (from -r /tmp/./requirements.txt (line 69))
    # 21 1359.5   Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.5/65.5 kB 578.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting packaging==20.8 (from -r /tmp/./requirements.txt (line 70))
    # 21 1359.5   Downloading packaging-20.8-py2.py3-none-any.whl (39 kB)
    # 21 1359.5 Collecting pandas==1.2.0 (from -r /tmp/./requirements.txt (line 71))
    # 21 1359.5   Downloading pandas-1.2.0-cp38-cp38-manylinux1_x86_64.whl (9.7 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 9.7/9.7 MB 5.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting parso==0.8.1 (from -r /tmp/./requirements.txt (line 72))
    # 21 1359.5   Downloading parso-0.8.1-py2.py3-none-any.whl (93 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 93.6/93.6 kB 1.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting pexpect==4.8.0 (from -r /tmp/./requirements.txt (line 73))
    # 21 1359.5   Downloading pexpect-4.8.0-py2.py3-none-any.whl (59 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.0/59.0 kB 658.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting pickleshare==0.7.5 (from -r /tmp/./requirements.txt (line 74))
    # 21 1359.5   Downloading pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB)
    # 21 1359.5 Collecting Pillow==7.2.0 (from -r /tmp/./requirements.txt (line 75))
    # 21 1359.5   Downloading Pillow-7.2.0-cp38-cp38-manylinux1_x86_64.whl (2.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting pip==20.3.3 (from -r /tmp/./requirements.txt (line 76))
    # 21 1359.5   Downloading pip-20.3.3-py2.py3-none-any.whl (1.5 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.5/1.5 MB 335.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting pluggy==0.13.1 (from -r /tmp/./requirements.txt (line 77))
    # 21 1359.5   Downloading pluggy-0.13.1-py2.py3-none-any.whl (18 kB)
    # 21 1359.5 Collecting prometheus-client==0.9.0 (from -r /tmp/./requirements.txt (line 78))
    # 21 1359.5   Downloading prometheus_client-0.9.0-py2.py3-none-any.whl (53 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 53.8/53.8 kB 433.5 kB/s eta 0:00:00
    # 21 1359.5 Collecting prompt-toolkit==3.0.10 (from -r /tmp/./requirements.txt (line 79))
    # 21 1359.5   Downloading prompt_toolkit-3.0.10-py3-none-any.whl (355 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 355.8/355.8 kB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting protobuf==3.14.0 (from -r /tmp/./requirements.txt (line 80))
    # 21 1359.5   Downloading protobuf-3.14.0-cp38-cp38-manylinux1_x86_64.whl (1.0 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 1.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting psutil==5.8.0 (from -r /tmp/./requirements.txt (line 81))
    # 21 1359.5   Downloading psutil-5.8.0-cp38-cp38-manylinux2010_x86_64.whl (296 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 296.0/296.0 kB 1.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting ptyprocess==0.7.0 (from -r /tmp/./requirements.txt (line 82))
    # 21 1359.5   Downloading ptyprocess-0.7.0-py2.py3-none-any.whl (13 kB)
    # 21 1359.5 Collecting py==1.10.0 (from -r /tmp/./requirements.txt (line 83))
    # 21 1359.5   Downloading py-1.10.0-py2.py3-none-any.whl (97 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.6/97.6 kB 843.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting py-spy==0.3.4 (from -r /tmp/./requirements.txt (line 84))
    # 21 1359.5   Downloading py_spy-0.3.4-py2.py3-none-manylinux1_x86_64.whl (3.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 2.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting pyasn1==0.4.8 (from -r /tmp/./requirements.txt (line 85))
    # 21 1359.5   Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.1/77.1 kB 608.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyasn1-modules==0.2.8 (from -r /tmp/./requirements.txt (line 86))
    # 21 1359.5   Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.3/155.3 kB 1.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting pycosat==0.6.3 (from -r /tmp/./requirements.txt (line 87))
    # 21 1359.5   Downloading pycosat-0.6.3.zip (66 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 66.8/66.8 kB 472.8 kB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting pycparser==2.20 (from -r /tmp/./requirements.txt (line 88))
    # 21 1359.5   Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 112.0/112.0 kB 716.1 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyglet==1.5.0 (from -r /tmp/./requirements.txt (line 89))
    # 21 1359.5   Downloading pyglet-1.5.0-py2.py3-none-any.whl (1.0 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 4.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting Pygments==2.7.4 (from -r /tmp/./requirements.txt (line 90))
    # 21 1359.5   Downloading Pygments-2.7.4-py3-none-any.whl (950 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 950.1/950.1 kB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyOpenGL==3.1.5 (from -r /tmp/./requirements.txt (line 91))
    # 21 1359.5   Downloading PyOpenGL-3.1.5-py3-none-any.whl (2.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 4.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyOpenGL-accelerate==3.1.5 (from -r /tmp/./requirements.txt (line 92))
    # 21 1359.5   Downloading PyOpenGL-accelerate-3.1.5.tar.gz (538 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 538.4/538.4 kB 3.4 MB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting pyOpenSSL==20.0.1 (from -r /tmp/./requirements.txt (line 93))
    # 21 1359.5   Downloading pyOpenSSL-20.0.1-py2.py3-none-any.whl (54 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.1/54.1 kB 384.9 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyparsing==2.4.7 (from -r /tmp/./requirements.txt (line 94))
    # 21 1359.5   Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 67.8/67.8 kB 475.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyrsistent==0.17.3 (from -r /tmp/./requirements.txt (line 95))
    # 21 1359.5   Downloading pyrsistent-0.17.3.tar.gz (106 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 106.9/106.9 kB 751.2 kB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Requirement already satisfied: PySocks==1.7.1 in /opt/conda/envs/softlearning/lib/python3.8/site-packages (from -r /tmp/./requirements.txt (line 96)) (1.7.1)
    # 21 1359.5 Collecting pytest==6.2.1 (from -r /tmp/./requirements.txt (line 97))
    # 21 1359.5   Downloading pytest-6.2.1-py3-none-any.whl (279 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 279.9/279.9 kB 1.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting python-dateutil==2.8.1 (from -r /tmp/./requirements.txt (line 98))
    # 21 1359.5   Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.2/227.2 kB 2.0 MB/s eta 0:00:00
    # 21 1359.5 Collecting pytz==2020.5 (from -r /tmp/./requirements.txt (line 99))
    # 21 1359.5   Downloading pytz-2020.5-py2.py3-none-any.whl (510 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 510.8/510.8 kB 2.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyWavelets==1.1.1 (from -r /tmp/./requirements.txt (line 100))
    # 21 1359.5   Downloading PyWavelets-1.1.1-cp38-cp38-manylinux1_x86_64.whl (4.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.4/4.4 MB 2.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyYAML==5.4 (from -r /tmp/./requirements.txt (line 101))
    # 21 1359.5   Downloading PyYAML-5.4-cp38-cp38-manylinux1_x86_64.whl (662 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 662.2/662.2 kB 3.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting ray==1.2.0 (from ray[tune]==1.2.0->-r /tmp/./requirements.txt (line 102))
    # 21 1359.5   Downloading ray-1.2.0-cp38-cp38-manylinux2014_x86_64.whl (47.3 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 47.3/47.3 MB 6.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting redis==3.5.3 (from -r /tmp/./requirements.txt (line 103))
    # 21 1359.5   Downloading redis-3.5.3-py2.py3-none-any.whl (72 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.1/72.1 kB 867.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting requests==2.25.1 (from -r /tmp/./requirements.txt (line 104))
    # 21 1359.5   Downloading requests-2.25.1-py2.py3-none-any.whl (61 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.2/61.2 kB 713.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting requests-oauthlib==1.3.0 (from -r /tmp/./requirements.txt (line 105))
    # 21 1359.5   Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)
    # 21 1359.5 Collecting rsa==4.7 (from -r /tmp/./requirements.txt (line 106))
    # 21 1359.5   Downloading rsa-4.7-py3-none-any.whl (34 kB)
    # 21 1359.5 Collecting ruamel-yaml==0.15.87 (from -r /tmp/./requirements.txt (line 107))
    # 21 1359.5   Downloading ruamel.yaml-0.15.87.tar.gz (316 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 316.9/316.9 kB 2.5 MB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting scikit-image==0.18.1 (from -r /tmp/./requirements.txt (line 108))
    # 21 1359.5   Downloading scikit_image-0.18.1-cp38-cp38-manylinux1_x86_64.whl (30.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 30.2/30.2 MB 5.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting scikit-learn==0.24.1 (from -r /tmp/./requirements.txt (line 109))
    # 21 1359.5   Downloading scikit_learn-0.24.1-cp38-cp38-manylinux2010_x86_64.whl (24.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 24.9/24.9 MB 6.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting scikit-video==1.1.11 (from -r /tmp/./requirements.txt (line 110))
    # 21 1359.5   Downloading scikit_video-1.1.11-py2.py3-none-any.whl (2.3 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 1.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting scipy==1.6.0 (from -r /tmp/./requirements.txt (line 111))
    # 21 1359.5   Downloading scipy-1.6.0-cp38-cp38-manylinux1_x86_64.whl (27.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27.2/27.2 MB 7.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting setproctitle==1.2.1 (from -r /tmp/./requirements.txt (line 112))
    # 21 1359.5   Downloading setproctitle-1.2.1-cp38-cp38-manylinux1_x86_64.whl (36 kB)
    # 21 1359.5 Collecting six==1.15.0 (from -r /tmp/./requirements.txt (line 113))
    # 21 1359.5   Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)
    # 21 1359.5 Collecting smmap==3.0.4 (from -r /tmp/./requirements.txt (line 114))
    # 21 1359.5   Downloading smmap-3.0.4-py2.py3-none-any.whl (25 kB)
    # 21 1359.5 Collecting tabulate==0.8.7 (from -r /tmp/./requirements.txt (line 115))
    # 21 1359.5   Downloading tabulate-0.8.7-py3-none-any.whl (24 kB)
    # 21 1359.5 Collecting tensorboard==2.4.1 (from -r /tmp/./requirements.txt (line 116))
    # 21 1359.5   Downloading tensorboard-2.4.1-py3-none-any.whl (10.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.6/10.6 MB 5.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorboard-plugin-wit==1.8.0 (from -r /tmp/./requirements.txt (line 117))
    # 21 1359.5   Downloading tensorboard_plugin_wit-1.8.0-py3-none-any.whl (781 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 781.2/781.2 kB 4.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorboardX==2.1 (from -r /tmp/./requirements.txt (line 118))
    # 21 1359.5   Downloading tensorboardX-2.1-py2.py3-none-any.whl (308 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 308.8/308.8 kB 2.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow==2.4.1 (from -r /tmp/./requirements.txt (line 119))
    # 21 1359.5   Downloading tensorflow-2.4.1-cp38-cp38-manylinux2010_x86_64.whl (394.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 394.4/394.4 MB 1.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow-addons==0.12.1 (from -r /tmp/./requirements.txt (line 120))
    # 21 1359.5   Downloading tensorflow_addons-0.12.1-cp38-cp38-manylinux2010_x86_64.whl (703 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 703.3/703.3 kB 691.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow-estimator==2.4.0 (from -r /tmp/./requirements.txt (line 121))
    # 21 1359.5   Downloading tensorflow_estimator-2.4.0-py2.py3-none-any.whl (462 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 462.0/462.0 kB 3.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow-probability==0.12.1 (from -r /tmp/./requirements.txt (line 122))
    # 21 1359.5   Downloading tensorflow_probability-0.12.1-py2.py3-none-any.whl (4.8 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.8/4.8 MB 3.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting termcolor==1.1.0 (from -r /tmp/./requirements.txt (line 123))
    # 21 1359.5   Downloading termcolor-1.1.0.tar.gz (3.9 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting threadpoolctl==2.1.0 (from -r /tmp/./requirements.txt (line 124))
    # 21 1359.5   Downloading threadpoolctl-2.1.0-py3-none-any.whl (12 kB)
    # 21 1359.5 Collecting tifffile==2021.1.14 (from -r /tmp/./requirements.txt (line 125))
    # 21 1359.5   Downloading tifffile-2021.1.14-py3-none-any.whl (158 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 158.9/158.9 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting toml==0.10.2 (from -r /tmp/./requirements.txt (line 126))
    # 21 1359.5   Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB)
    # 21 1359.5 Collecting tqdm==4.55.1 (from -r /tmp/./requirements.txt (line 127))
    # 21 1359.5   Downloading tqdm-4.55Pip subprocess error:
    # 21 1359.5   error: subprocess-exited-with-error
    # 21 1359.5
    # 21 1359.5   × Building wheel for mujoco-py (pyproject.toml) did not run successfully.
    # 21 1359.5   │ exit code: 1
    # 21 1359.5   ╰─> [95 lines of output]
    # 21 1359.5       running bdist_wheel
    # 21 1359.5       running build
    # 21 1359.5       performance hint: mujoco_py/cymj.pyx:67:5: Exception check on 'c_warning_callback' will always require the GIL to be acquired.
    # 21 1359.5       Possible solutions:
    # 21 1359.5           1. Declare the function as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
    # 21 1359.5           2. Use an 'int' return type on the function to allow an error code to be returned.
    # 21 1359.5       performance hint: mujoco_py/cymj.pyx:104:5: Exception check on 'c_error_callback' will always require the GIL to be acquired.
    # 21 1359.5       Possible solutions:
    # 21 1359.5           1. Declare the function as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
    # 21 1359.5           2. Use an 'int' return type on the function to allow an error code to be returned.
    # 21 1359.5
    # 21 1359.5       Error compiling Cython file:
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5       ...
    # 21 1359.5           See c_warning_callback, which is the C wrapper to the user defined function
    # 21 1359.5           '''
    # 21 1359.5           global py_warning_callback
    # 21 1359.5           global mju_user_warning
    # 21 1359.5           py_warning_callback = warn
    # 21 1359.5           mju_user_warning = c_warning_callback
    # 21 1359.5                              ^
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5
    # 21 1359.5       mujoco_py/cymj.pyx:92:23: Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to type 'void (const char *) except * nogil'.
    # 21 1359.5
    # 21 1359.5       Error compiling Cython file:
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5       ...
    # 21 1359.5           See c_warning_callback, which is the C wrapper to the user defined function
    # 21 1359.5           '''
    # 21 1359.5           global py_error_callback
    # 21 1359.5           global mju_user_error
    # 21 1359.5           py_error_callback = err_callback
    # 21 1359.5           mju_user_error = c_error_callback
    # 21 1359.5                            ^
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5
    # 21 1359.5       mujoco_py/cymj.pyx:127:21: Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to type 'void (const char *) except * nogil'.
    # 21 1359.5       Removing old mujoco_py cext /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/generated/cymj_2.0.2.13_38_linuxcpuextensionbuilder_38.so
    # 21 1359.5       Compiling /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/cymj.pyx because it changed.
    # 21 1359.5       [1/1] Cythonizing /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/cymj.pyx
    # 21 1359.5       Traceback (most recent call last):
    # 21 1359.5         File "/opt/conda/envs/softlearning/lib/python3.8/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
    # 21 1359.5           main()
    # 21 1359.5         File "/opt/conda/envs/softlearning/lib/python3.8/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
    # 21 1359.5           json_out['return_val'] = hook(**hook_input['kwargs'])
    # 21 1359.5         File "/opt/conda/envs/softlearning/lib/python3.8/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
    # 21 1359.5           return _build_backend().build_wheel(wheel_directory, config_settings,
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 404, in build_wheel
    # 21 1359.5           return self._build_with_temp_dir(
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 389, in _build_with_temp_dir
    # 21 1359.5           self.run_setup()
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 480, in run_setup
    # 21 1359.5           super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 311, in run_setup
    # 21 1359.5           exec(code, locals())
    # 21 1359.5         File "<string>", line 33, in <module>
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/__init__.py", line 103, in setup
    # 21 1359.5           return distutils.core.setup(**attrs)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 185, in setup
    # 21 1359.5           return run_commands(dist)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
    # 21 1359.5           dist.run_commands()
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
    # 21 1359.5           self.run_command(cmd)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/dist.py", line 963, in run_command
    # 21 1359.5           super().run_command(command)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    # 21 1359.5           cmd_obj.run()
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/normal/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 368, in run
    # 21 1359.5           self.run_command("build")
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
    # 21 1359.5           self.distribution.run_command(command)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/dist.py", line 963, in run_command
    # 21 1359.5           super().run_command(command)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    # 21 1359.5           cmd_obj.run()
    # 21 1359.5         File "<string>", line 29, in run
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/__init__.py", line 3, in <module>
    # 21 1359.5           from mujoco_py.builder import cymj, ignore_mujoco_warnings, functions, MujocoException
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 510, in <module>
    # 21 1359.5           cymj = load_cython_ext(mujoco_path)
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 105, in load_cython_ext
    # 21 1359.5           cext_so_path = builder.build()
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 221, in build
    # 21 1359.5           built_so_file_path = self._build_impl()
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 273, in _build_impl
    # 21 1359.5           so_file_path = super()._build_impl()
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 234, in _build_impl
    # 21 1359.5           dist.ext_modules = cythonize([self.extension])
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/Cython/Build/Dependencies.py", line 1154, in cythonize
    # 21 1359.5           cythonize_one(*args)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/Cython/Build/Dependencies.py", line 1321, in cythonize_one
    # 21 1359.5           raise CompileError(None, pyx_file)
    # 21 1359.5       Cython.Compiler.Errors.CompileError: /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/cymj.pyx
    # 21 1359.5       [end of output]
    # 21 1359.5
    # 21 1359.5   note: This error originates from a subprocess, and is likely not a problem with pip.
    # 21 1359.5   ERROR: Failed building wheel for mujoco-py
    # 21 1359.5 ERROR: Could not build wheels for mujoco-py, which is required to install pyproject.toml-based projects
    # 21 1359.5
    # 21 1359.5 .1-py2.py3-none-any.whl (68 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 68.3/68.3 kB 500.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting traitlets==5.0.5 (from -r /tmp/./requirements.txt (line 128))
    # 21 1359.5   Downloading traitlets-5.0.5-py3-none-any.whl (100 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.1/100.1 kB 732.4 kB/s eta 0:00:00
    # 21 1359.5 Collecting typeguard==2.10.0 (from -r /tmp/./requirements.txt (line 129))
    # 21 1359.5   Downloading typeguard-2.10.0-py3-none-any.whl (16 kB)
    # 21 1359.5 Collecting typing-extensions==3.7.4.3 (from -r /tmp/./requirements.txt (line 130))
    # 21 1359.5   Downloading typing_extensions-3.7.4.3-py3-none-any.whl (22 kB)
    # 21 1359.5 Collecting urllib3==1.26.3 (from -r /tmp/./requirements.txt (line 131))
    # 21 1359.5   Downloading urllib3-1.26.3-py2.py3-none-any.whl (137 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 137.0/137.0 kB 1.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting wcwidth==0.2.5 (from -r /tmp/./requirements.txt (line 132))
    # 21 1359.5   Downloading wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
    # 21 1359.5 Collecting Werkzeug==1.0.1 (from -r /tmp/./requirements.txt (line 133))
    # 21 1359.5   Downloading Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 298.6/298.6 kB 1.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting wheel==0.36.2 (from -r /tmp/./requirements.txt (line 134))
    # 21 1359.5   Downloading wheel-0.36.2-py2.py3-none-any.whl (35 kB)
    # 21 1359.5 Collecting wrapt==1.12.1 (from -r /tmp/./requirements.txt (line 135))
    # 21 1359.5   Downloading wrapt-1.12.1.tar.gz (27 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting yarl==1.6.3 (from -r /tmp/./requirements.txt (line 136))
    # 21 1359.5   Downloading yarl-1.6.3-cp38-cp38-manylinux2014_x86_64.whl (324 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 324.3/324.3 kB 2.0 MB/s eta 0:00:00
    # 21 1359.5 Requirement already satisfied: setuptools in /opt/conda/envs/softlearning/lib/python3.8/site-packages (from dm-control==0.0.322773188->-r /tmp/./requirements.txt (line 24)) (68.0.0)
    # 21 1359.5 Building wheels for collected packages: future, gpustat, gtimer, ipdb, mujoco-py, nvidia-ml-py3, pycosat, PyOpenGL-accelerate, pyrsistent, ruamel-yaml, termcolor, wrapt
    # 21 1359.5   Building wheel for future (setup.py): started
    # 21 1359.5   Building wheel for future (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for future: filename=future-0.18.2-py3-none-any.whl size=491058 sha256=f90c4958d6858a2d7acaaa0d053cc9c5a3aad37cbdea25f264cf946b238ab038
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/8e/70/28/3d6ccd6e315f65f245da085482a2e1c7d14b90b30f239e2cf4
    # 21 1359.5   Building wheel for gpustat (setup.py): started
    # 21 1359.5   Building wheel for gpustat (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for gpustat: filename=gpustat-0.6.0-py3-none-any.whl size=12594 sha256=40c56d7cbc148fd2a8ca00d0ae9548754afbdd8448474627a077ec7989be6323
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/0d/d9/80/b6cbcdc9946c7b50ce35441cc9e7d8c5a9d066469ba99bae44
    # 21 1359.5   Building wheel for gtimer (setup.py): started
    # 21 1359.5   Building wheel for gtimer (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for gtimer: filename=gtimer-1.0.0b5-py3-none-any.whl size=31052 sha256=f314d94f224d4a9eedeb0772c7551e61931f00ca52560ad4ff248b94e3b86e87
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/c3/64/e9/2e0651e41018363be497652601c51a1e5cd44cf368b722ca15
    # 21 1359.5   Building wheel for ipdb (setup.py): started
    # 21 1359.5   Building wheel for ipdb (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for ipdb: filename=ipdb-0.13.4-py3-none-any.whl size=10978 sha256=c588b6e10fb9ca38f0d986d11746e180c6f8c4fb609b5b6c190954c9947236f6
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/45/30/91/6d23d9241f432efb8e1e928b3ddd3657885d0a3118a1e570d2
    # 21 1359.5   Building wheel for mujoco-py (pyproject.toml): started
    # 21 1359.5   Building wheel for mujoco-py (pyproject.toml): finished with status 'error'
    # 21 1359.5   Building wheel for nvidia-ml-py3 (setup.py): started
    # 21 1359.5   Building wheel for nvidia-ml-py3 (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for nvidia-ml-py3: filename=nvidia_ml_py3-7.352.0-py3-none-any.whl size=19171 sha256=5f1d63a863f037f933527806df9a4cda32727d6b215c064b671fce04ea30abca
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/b9/b1/68/cb4feab29709d4155310d29a421389665dcab9eb3b679b527b
    # 21 1359.5   Building wheel for pycosat (setup.py): started
    # 21 1359.5   Building wheel for pycosat (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for pycosat: filename=pycosat-0.6.3-cp38-cp38-linux_x86_64.whl size=156654 sha256=b5ade3095eb3c889e38684f4bf8466e46264aae221060fd806659cf203e1d36e
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/71/5b/2d/0a9247760f0f008abc0eae7c0127a8c1cddfe1145e4b170fc0
    # 21 1359.5   Building wheel for PyOpenGL-accelerate (setup.py): started
    # 21 1359.5   Building wheel for PyOpenGL-accelerate (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for PyOpenGL-accelerate: filename=PyOpenGL_accelerate-3.1.5-cp38-cp38-linux_x86_64.whl size=1721370 sha256=1ac3d5a0e0a7986c4e70ceb341823f85ce3bbcd01e1b8b63e10b93584c3e25cf
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/78/c1/00/02b87e2b442a92cfa76c4650476396a245dc7e1bcbfc010ae2
    # 21 1359.5   Building wheel for pyrsistent (setup.py): started
    # 21 1359.5   Building wheel for pyrsistent (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for pyrsistent: filename=pyrsistent-0.17.3-cp38-cp38-linux_x86_64.whl size=119528 sha256=33680f64040cf1306930de65f3d42e28c6be8ae6c05b129abf7ab48ad857fe1d
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/3d/22/08/7042eb6309c650c7b53615d5df5cc61f1ea9680e7edd3a08d2
    # 21 1359.5   Building wheel for ruamel-yaml (setup.py): started
    # 21 1359.5   Building wheel for ruamel-yaml (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for ruamel-yaml: filename=ruamel.yaml-0.15.87-cp38-cp38-linux_x86_64.whl size=683654 sha256=845f5c8c2f3583b7e9a3f993a0dd80bd2ca1152407696dc6025a709aec6dbcab
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/f5/48/b9/83e6b45fde3fa62c6acda740b297ad8a57177b5292db032084
    # 21 1359.5   Building wheel for termcolor (setup.py): started
    # 21 1359.5   Building wheel for termcolor (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for termcolor: filename=termcolor-1.1.0-py3-none-any.whl size=4832 sha256=7068d9d006aff897ef4cddf92deedb1bfd42bea2d11f0c5173435c57b98dea79
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/a0/16/9c/5473df82468f958445479c59e784896fa24f4a5fc024b0f501
    # 21 1359.5   Building wheel for wrapt (setup.py): started
    # 21 1359.5   Building wheel for wrapt (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for wrapt: filename=wrapt-1.12.1-cp38-cp38-linux_x86_64.whl size=77936 sha256=34a0c4381532f2b71f67955f9087118fc2ade00481f59b1cd31762d0b3801c09
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/5f/fd/9e/b6cf5890494cb8ef0b5eaff72e5d55a70fb56316007d6dfe73
    # 21 1359.5 Successfully built future gpustat gtimer ipdb nvidia-ml-py3 pycosat PyOpenGL-accelerate pyrsistent ruamel-yaml termcolor wrapt
    # 21 1359.5 Failed to build mujoco-py
    # 21 1359.5
    # 21 1359.5 failed
    # 21 1359.5
    # 21 1359.5 CondaEnvException: Pip failed
    # 21 1359.5
    # 21 ERROR: process "/bin/bash -c conda env update -f /tmp/environment.yml     && conda clean --all -y" did not complete successfully: exit code: 1
    ------
     > [12/15] RUN --mount=type=secret,id=mjkey,dst=/root/.mujoco/mjkey.txt     conda env update -f /tmp/environment.yml     && conda clean --all -y:
    # 21 1359.5   Building wheel for wrapt (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for wrapt: filename=wrapt-1.12.1-cp38-cp38-linux_x86_64.whl size=77936 sha256=34a0c4381532f2b71f67955f9087118fc2ade00481f59b1cd31762d0b3801c09
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/5f/fd/9e/b6cf5890494cb8ef0b5eaff72e5d55a70fb56316007d6dfe73
    # 21 1359.5 Successfully built future gpustat gtimer ipdb nvidia-ml-py3 pycosat PyOpenGL-accelerate pyrsistent ruamel-yaml termcolor wrapt
    # 21 1359.5 Failed to build mujoco-py
    # 21 1359.5
    # 21 1359.5 failed
    # 21 1359.5
    # 21 1359.5 CondaEnvException: Pip failed
    # 21 1359.5
    ------
    ERROR: failed to solve: process "/bin/bash -c conda env update -f /tmp/environment.yml     && conda clean --all -y" did not complete successfully: exit code: 1

Note that an extra space is added after the pound symbol `#` in the error message to prevent github linking issues.
j3soon added a commit to j3soon/rail-berkeley-softlearning that referenced this issue Nov 29, 2023
The following reference suggests solving with `pip install "cython<3"`,
but the fix doesn't work for me.

Reference: https://github.com/openai/mujoco-py/issues/773#issuecomment-1639684035

Before commit a01fd32, an earlier version of mujoco-py was used,
specifically mujoco-py==2.0.2.10. This error seems to be resolved by
using this earlier version. This is the latest version that can be
successfully installed, as mujoco-py==2.0.2.11 also reports the same
error.

References:
- https://github.com/rail-berkeley/softlearning/commit/a01fd32b9ef80d875543a49673b7c2b0be516c74
- https://pypi.org/project/mujoco-py/#history

Full error message:

    # 21 [12/15] RUN --mount=type=secret,id=mjkey,dst=/root/.mujoco/mjkey.txt     conda env update -f /tmp/environment.yml     && conda clean --all -y
    # 21 1.584 Retrieving notices: ...working... done
    # 21 2.032 Channels:
    # 21 2.032  - defaults
    # 21 2.032  - conda-forge
    # 21 2.032 Platform: linux-64
    # 21 2.032 Collecting package metadata (repodata.json): ...working... done
    # 21 28.16 Solving environment: ...working... done
    # 21 36.58
    # 21 36.58 Downloading and Extracting Packages: ...working... done
    # 21 36.58 Preparing transaction: ...working... done
    # 21 39.41 Verifying transaction: ...working... done
    # 21 42.16 Executing transaction: ...working... done
    # 21 1135.1 Installing pip dependencies: ...working... Ran pip subprocess with arguments:
    # 21 1359.5 ['/opt/conda/envs/softlearning/bin/python', '-m', 'pip', 'install', '-U', '-r', '/tmp/condaenv.172ujigq.requirements.txt', '--exists-action=b']
    # 21 1359.5 Pip subprocess output:
    # 21 1359.5 Collecting absl-py==0.11.0 (from -r /tmp/./requirements.txt (line 1))
    # 21 1359.5   Downloading absl_py-0.11.0-py3-none-any.whl (127 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 127.8/127.8 kB 658.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting aiohttp==3.7.4 (from -r /tmp/./requirements.txt (line 2))
    # 21 1359.5   Downloading aiohttp-3.7.4-cp38-cp38-manylinux2014_x86_64.whl (1.5 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.5/1.5 MB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting aiohttp-cors==0.7.0 (from -r /tmp/./requirements.txt (line 3))
    # 21 1359.5   Downloading aiohttp_cors-0.7.0-py3-none-any.whl (27 kB)
    # 21 1359.5 Collecting aioredis==1.3.1 (from -r /tmp/./requirements.txt (line 4))
    # 21 1359.5   Downloading aioredis-1.3.1-py3-none-any.whl (65 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.3/65.3 kB 410.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting appnope==0.1.2 (from -r /tmp/./requirements.txt (line 5))
    # 21 1359.5   Downloading appnope-0.1.2-py2.py3-none-any.whl (4.3 kB)
    # 21 1359.5 Collecting astunparse==1.6.3 (from -r /tmp/./requirements.txt (line 6))
    # 21 1359.5   Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
    # 21 1359.5 Collecting async-timeout==3.0.1 (from -r /tmp/./requirements.txt (line 7))
    # 21 1359.5   Downloading async_timeout-3.0.1-py3-none-any.whl (8.2 kB)
    # 21 1359.5 Collecting attrs==20.3.0 (from -r /tmp/./requirements.txt (line 8))
    # 21 1359.5   Downloading attrs-20.3.0-py2.py3-none-any.whl (49 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 49.3/49.3 kB 329.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting backcall==0.2.0 (from -r /tmp/./requirements.txt (line 9))
    # 21 1359.5   Downloading backcall-0.2.0-py2.py3-none-any.whl (11 kB)
    # 21 1359.5 Collecting blessings==1.7 (from -r /tmp/./requirements.txt (line 10))
    # 21 1359.5   Downloading blessings-1.7-py3-none-any.whl (18 kB)
    # 21 1359.5 Collecting brotlipy==0.7.0 (from -r /tmp/./requirements.txt (line 11))
    # 21 1359.5   Downloading brotlipy-0.7.0-cp38-cp38-manylinux1_x86_64.whl (1.1 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 4.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting cachetools==4.2.0 (from -r /tmp/./requirements.txt (line 12))
    # 21 1359.5   Downloading cachetools-4.2.0-py3-none-any.whl (12 kB)
    # 21 1359.5 Collecting certifi==2020.12.5 (from -r /tmp/./requirements.txt (line 13))
    # 21 1359.5   Downloading certifi-2020.12.5-py2.py3-none-any.whl (147 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.5/147.5 kB 1.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting cffi==1.14.4 (from -r /tmp/./requirements.txt (line 14))
    # 21 1359.5   Downloading cffi-1.14.4-cp38-cp38-manylinux1_x86_64.whl (411 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 411.1/411.1 kB 3.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting chardet==3.0.4 (from -r /tmp/./requirements.txt (line 15))
    # 21 1359.5   Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.4/133.4 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting click==7.1.2 (from -r /tmp/./requirements.txt (line 16))
    # 21 1359.5   Downloading click-7.1.2-py2.py3-none-any.whl (82 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 82.8/82.8 kB 863.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting cloudpickle==1.6.0 (from -r /tmp/./requirements.txt (line 17))
    # 21 1359.5   Downloading cloudpickle-1.6.0-py3-none-any.whl (23 kB)
    # 21 1359.5 Collecting colorama==0.4.4 (from -r /tmp/./requirements.txt (line 18))
    # 21 1359.5   Downloading colorama-0.4.4-py2.py3-none-any.whl (16 kB)
    # 21 1359.5 Collecting colorful==0.5.4 (from -r /tmp/./requirements.txt (line 19))
    # 21 1359.5   Downloading colorful-0.5.4-py2.py3-none-any.whl (201 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 202.0/202.0 kB 1.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting cryptography==3.3.2 (from -r /tmp/./requirements.txt (line 20))
    # 21 1359.5   Downloading cryptography-3.3.2-cp36-abi3-manylinux2010_x86_64.whl (2.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.6/2.6 MB 4.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting cycler==0.10.0 (from -r /tmp/./requirements.txt (line 21))
    # 21 1359.5   Downloading cycler-0.10.0-py2.py3-none-any.whl (6.5 kB)
    # 21 1359.5 Collecting Cython==0.29.21 (from -r /tmp/./requirements.txt (line 22))
    # 21 1359.5   Downloading Cython-0.29.21-cp38-cp38-manylinux1_x86_64.whl (1.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.9/1.9 MB 3.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting decorator==4.4.2 (from -r /tmp/./requirements.txt (line 23))
    # 21 1359.5   Downloading decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
    # 21 1359.5 Collecting dm-control==0.0.322773188 (from -r /tmp/./requirements.txt (line 24))
    # 21 1359.5   Downloading dm_control-0.0.322773188-py3-none-any.whl (18.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 18.6/18.6 MB 4.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting dm-env==1.3 (from -r /tmp/./requirements.txt (line 25))
    # 21 1359.5   Downloading dm_env-1.3-py3-none-any.whl (24 kB)
    # 21 1359.5 Collecting dm-tree==0.1.5 (from -r /tmp/./requirements.txt (line 26))
    # 21 1359.5   Downloading dm_tree-0.1.5-cp38-cp38-manylinux2014_x86_64.whl (91 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 91.6/91.6 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting fasteners==0.16 (from -r /tmp/./requirements.txt (line 27))
    # 21 1359.5   Downloading fasteners-0.16-py2.py3-none-any.whl (28 kB)
    # 21 1359.5 Collecting filelock==3.0.12 (from -r /tmp/./requirements.txt (line 28))
    # 21 1359.5   Downloading filelock-3.0.12-py3-none-any.whl (7.6 kB)
    # 21 1359.5 Collecting flatbuffers==1.12 (from -r /tmp/./requirements.txt (line 29))
    # 21 1359.5   Downloading flatbuffers-1.12-py2.py3-none-any.whl (15 kB)
    # 21 1359.5 Collecting future==0.18.2 (from -r /tmp/./requirements.txt (line 30))
    # 21 1359.5   Downloading future-0.18.2.tar.gz (829 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 829.2/829.2 kB 3.3 MB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting gast==0.3.3 (from -r /tmp/./requirements.txt (line 31))
    # 21 1359.5   Downloading gast-0.3.3-py2.py3-none-any.whl (9.7 kB)
    # 21 1359.5 Collecting gitdb==4.0.5 (from -r /tmp/./requirements.txt (line 32))
    # 21 1359.5   Downloading gitdb-4.0.5-py3-none-any.whl (63 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 63.1/63.1 kB 668.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting GitPython==3.1.12 (from -r /tmp/./requirements.txt (line 33))
    # 21 1359.5   Downloading GitPython-3.1.12-py3-none-any.whl (159 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.5/159.5 kB 1.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting glfw==2.0.0 (from -r /tmp/./requirements.txt (line 34))
    # 21 1359.5   Downloading glfw-2.0.0-py2.py27.py3.py30.py31.py32.py33.py34.py35.py36.py37.py38-none-manylinux2014_x86_64.whl (203 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 203.9/203.9 kB 1.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting google-api-core==1.25.0 (from -r /tmp/./requirements.txt (line 35))
    # 21 1359.5   Downloading google_api_core-1.25.0-py2.py3-none-any.whl (92 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 92.3/92.3 kB 786.1 kB/s eta 0:00:00
    # 21 1359.5 Collecting google-auth==1.24.0 (from -r /tmp/./requirements.txt (line 36))
    # 21 1359.5   Downloading google_auth-1.24.0-py2.py3-none-any.whl (114 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 114.7/114.7 kB 849.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting google-auth-oauthlib==0.4.2 (from -r /tmp/./requirements.txt (line 37))
    # 21 1359.5   Downloading google_auth_oauthlib-0.4.2-py2.py3-none-any.whl (18 kB)
    # 21 1359.5 Collecting google-pasta==0.2.0 (from -r /tmp/./requirements.txt (line 38))
    # 21 1359.5   Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.5/57.5 kB 351.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting googleapis-common-protos==1.52.0 (from -r /tmp/./requirements.txt (line 39))
    # 21 1359.5   Downloading googleapis_common_protos-1.52.0-py2.py3-none-any.whl (100 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.2/100.2 kB 639.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting gpustat==0.6.0 (from -r /tmp/./requirements.txt (line 40))
    # 21 1359.5   Downloading gpustat-0.6.0.tar.gz (78 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.1/78.1 kB 524.6 kB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting grpcio==1.32.0 (from -r /tmp/./requirements.txt (line 41))
    # 21 1359.5   Downloading grpcio-1.32.0-cp38-cp38-manylinux2014_x86_64.whl (3.8 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.8/3.8 MB 2.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting gtimer==1.0.0b5 (from -r /tmp/./requirements.txt (line 42))
    # 21 1359.5   Downloading gtimer-1.0.0b5.tar.gz (23 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting h5py==2.10.0 (from -r /tmp/./requirements.txt (line 43))
    # 21 1359.5   Downloading h5py-2.10.0-cp38-cp38-manylinux1_x86_64.whl (2.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.9/2.9 MB 2.0 MB/s eta 0:00:00
    # 21 1359.5 Collecting hiredis==1.1.0 (from -r /tmp/./requirements.txt (line 44))
    # 21 1359.5   Downloading hiredis-1.1.0-cp38-cp38-manylinux2010_x86_64.whl (62 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.7/62.7 kB 314.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting idna==2.10 (from -r /tmp/./requirements.txt (line 45))
    # 21 1359.5   Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.8/58.8 kB 278.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting imageio==2.9.0 (from -r /tmp/./requirements.txt (line 46))
    # 21 1359.5   Downloading imageio-2.9.0-py3-none-any.whl (3.3 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 2.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting iniconfig==1.1.1 (from -r /tmp/./requirements.txt (line 47))
    # 21 1359.5   Downloading iniconfig-1.1.1-py2.py3-none-any.whl (5.0 kB)
    # 21 1359.5 Collecting ipdb==0.13.4 (from -r /tmp/./requirements.txt (line 48))
    # 21 1359.5   Downloading ipdb-0.13.4.tar.gz (15 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting ipython==7.19.0 (from -r /tmp/./requirements.txt (line 49))
    # 21 1359.5   Downloading ipython-7.19.0-py3-none-any.whl (784 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 784.7/784.7 kB 2.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting ipython-genutils==0.2.0 (from -r /tmp/./requirements.txt (line 50))
    # 21 1359.5   Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB)
    # 21 1359.5 Collecting jedi==0.18.0 (from -r /tmp/./requirements.txt (line 51))
    # 21 1359.5   Downloading jedi-0.18.0-py2.py3-none-any.whl (1.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 5.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting joblib==1.0.0 (from -r /tmp/./requirements.txt (line 52))
    # 21 1359.5   Downloading joblib-1.0.0-py3-none-any.whl (302 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 303.0/303.0 kB 2.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting jsonschema==3.2.0 (from -r /tmp/./requirements.txt (line 53))
    # 21 1359.5   Downloading jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.3/56.3 kB 402.5 kB/s eta 0:00:00
    # 21 1359.5 Collecting Keras-Preprocessing==1.1.2 (from -r /tmp/./requirements.txt (line 54))
    # 21 1359.5   Downloading Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.6/42.6 kB 263.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting kiwisolver==1.3.1 (from -r /tmp/./requirements.txt (line 55))
    # 21 1359.5   Downloading kiwisolver-1.3.1-cp38-cp38-manylinux1_x86_64.whl (1.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 4.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting labmaze==1.0.3 (from -r /tmp/./requirements.txt (line 56))
    # 21 1359.5   Downloading labmaze-1.0.3-cp38-cp38-manylinux1_x86_64.whl (4.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.9/4.9 MB 4.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting lxml==4.6.2 (from -r /tmp/./requirements.txt (line 57))
    # 21 1359.5   Downloading lxml-4.6.2-cp38-cp38-manylinux1_x86_64.whl (5.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.4/5.4 MB 5.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting Markdown==3.3.3 (from -r /tmp/./requirements.txt (line 58))
    # 21 1359.5   Downloading Markdown-3.3.3-py3-none-any.whl (96 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 96.3/96.3 kB 832.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting matplotlib==3.3.3 (from -r /tmp/./requirements.txt (line 59))
    # 21 1359.5   Downloading matplotlib-3.3.3-cp38-cp38-manylinux1_x86_64.whl (11.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.6/11.6 MB 8.0 MB/s eta 0:00:00
    # 21 1359.5 Collecting msgpack==1.0.2 (from -r /tmp/./requirements.txt (line 60))
    # 21 1359.5   Downloading msgpack-1.0.2-cp38-cp38-manylinux1_x86_64.whl (302 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 302.8/302.8 kB 3.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting mujoco-py==2.0.2.13 (from -r /tmp/./requirements.txt (line 61))
    # 21 1359.5   Downloading mujoco-py-2.0.2.13.tar.gz (792 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 792.0/792.0 kB 5.6 MB/s eta 0:00:00
    # 21 1359.5   Installing build dependencies: started
    # 21 1359.5   Installing build dependencies: finished with status 'done'
    # 21 1359.5   Getting requirements to build wheel: started
    # 21 1359.5   Getting requirements to build wheel: finished with status 'done'
    # 21 1359.5   Installing backend dependencies: started
    # 21 1359.5   Installing backend dependencies: finished with status 'done'
    # 21 1359.5   Preparing metadata (pyproject.toml): started
    # 21 1359.5   Preparing metadata (pyproject.toml): finished with status 'done'
    # 21 1359.5 Collecting multidict==5.1.0 (from -r /tmp/./requirements.txt (line 62))
    # 21 1359.5   Downloading multidict-5.1.0-cp38-cp38-manylinux2014_x86_64.whl (159 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 159.4/159.4 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting networkx==2.5 (from -r /tmp/./requirements.txt (line 63))
    # 21 1359.5   Downloading networkx-2.5-py3-none-any.whl (1.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 5.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting numpy==1.19.5 (from -r /tmp/./requirements.txt (line 64))
    # 21 1359.5   Downloading numpy-1.19.5-cp38-cp38-manylinux2010_x86_64.whl (14.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.9/14.9 MB 4.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting nvidia-ml-py3==7.352.0 (from -r /tmp/./requirements.txt (line 65))
    # 21 1359.5   Downloading nvidia-ml-py3-7.352.0.tar.gz (19 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting oauthlib==3.1.0 (from -r /tmp/./requirements.txt (line 66))
    # 21 1359.5   Downloading oauthlib-3.1.0-py2.py3-none-any.whl (147 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 147.4/147.4 kB 1.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting opencensus==0.7.12 (from -r /tmp/./requirements.txt (line 67))
    # 21 1359.5   Downloading opencensus-0.7.12-py2.py3-none-any.whl (127 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 127.2/127.2 kB 973.8 kB/s eta 0:00:00
    # 21 1359.5 Collecting opencensus-context==0.1.2 (from -r /tmp/./requirements.txt (line 68))
    # 21 1359.5   Downloading opencensus_context-0.1.2-py2.py3-none-any.whl (4.4 kB)
    # 21 1359.5 Collecting opt-einsum==3.3.0 (from -r /tmp/./requirements.txt (line 69))
    # 21 1359.5   Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.5/65.5 kB 578.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting packaging==20.8 (from -r /tmp/./requirements.txt (line 70))
    # 21 1359.5   Downloading packaging-20.8-py2.py3-none-any.whl (39 kB)
    # 21 1359.5 Collecting pandas==1.2.0 (from -r /tmp/./requirements.txt (line 71))
    # 21 1359.5   Downloading pandas-1.2.0-cp38-cp38-manylinux1_x86_64.whl (9.7 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 9.7/9.7 MB 5.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting parso==0.8.1 (from -r /tmp/./requirements.txt (line 72))
    # 21 1359.5   Downloading parso-0.8.1-py2.py3-none-any.whl (93 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 93.6/93.6 kB 1.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting pexpect==4.8.0 (from -r /tmp/./requirements.txt (line 73))
    # 21 1359.5   Downloading pexpect-4.8.0-py2.py3-none-any.whl (59 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.0/59.0 kB 658.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting pickleshare==0.7.5 (from -r /tmp/./requirements.txt (line 74))
    # 21 1359.5   Downloading pickleshare-0.7.5-py2.py3-none-any.whl (6.9 kB)
    # 21 1359.5 Collecting Pillow==7.2.0 (from -r /tmp/./requirements.txt (line 75))
    # 21 1359.5   Downloading Pillow-7.2.0-cp38-cp38-manylinux1_x86_64.whl (2.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting pip==20.3.3 (from -r /tmp/./requirements.txt (line 76))
    # 21 1359.5   Downloading pip-20.3.3-py2.py3-none-any.whl (1.5 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.5/1.5 MB 335.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting pluggy==0.13.1 (from -r /tmp/./requirements.txt (line 77))
    # 21 1359.5   Downloading pluggy-0.13.1-py2.py3-none-any.whl (18 kB)
    # 21 1359.5 Collecting prometheus-client==0.9.0 (from -r /tmp/./requirements.txt (line 78))
    # 21 1359.5   Downloading prometheus_client-0.9.0-py2.py3-none-any.whl (53 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 53.8/53.8 kB 433.5 kB/s eta 0:00:00
    # 21 1359.5 Collecting prompt-toolkit==3.0.10 (from -r /tmp/./requirements.txt (line 79))
    # 21 1359.5   Downloading prompt_toolkit-3.0.10-py3-none-any.whl (355 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 355.8/355.8 kB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting protobuf==3.14.0 (from -r /tmp/./requirements.txt (line 80))
    # 21 1359.5   Downloading protobuf-3.14.0-cp38-cp38-manylinux1_x86_64.whl (1.0 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 1.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting psutil==5.8.0 (from -r /tmp/./requirements.txt (line 81))
    # 21 1359.5   Downloading psutil-5.8.0-cp38-cp38-manylinux2010_x86_64.whl (296 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 296.0/296.0 kB 1.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting ptyprocess==0.7.0 (from -r /tmp/./requirements.txt (line 82))
    # 21 1359.5   Downloading ptyprocess-0.7.0-py2.py3-none-any.whl (13 kB)
    # 21 1359.5 Collecting py==1.10.0 (from -r /tmp/./requirements.txt (line 83))
    # 21 1359.5   Downloading py-1.10.0-py2.py3-none-any.whl (97 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.6/97.6 kB 843.0 kB/s eta 0:00:00
    # 21 1359.5 Collecting py-spy==0.3.4 (from -r /tmp/./requirements.txt (line 84))
    # 21 1359.5   Downloading py_spy-0.3.4-py2.py3-none-manylinux1_x86_64.whl (3.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.2/3.2 MB 2.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting pyasn1==0.4.8 (from -r /tmp/./requirements.txt (line 85))
    # 21 1359.5   Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.1/77.1 kB 608.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyasn1-modules==0.2.8 (from -r /tmp/./requirements.txt (line 86))
    # 21 1359.5   Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.3/155.3 kB 1.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting pycosat==0.6.3 (from -r /tmp/./requirements.txt (line 87))
    # 21 1359.5   Downloading pycosat-0.6.3.zip (66 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 66.8/66.8 kB 472.8 kB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting pycparser==2.20 (from -r /tmp/./requirements.txt (line 88))
    # 21 1359.5   Downloading pycparser-2.20-py2.py3-none-any.whl (112 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 112.0/112.0 kB 716.1 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyglet==1.5.0 (from -r /tmp/./requirements.txt (line 89))
    # 21 1359.5   Downloading pyglet-1.5.0-py2.py3-none-any.whl (1.0 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 4.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting Pygments==2.7.4 (from -r /tmp/./requirements.txt (line 90))
    # 21 1359.5   Downloading Pygments-2.7.4-py3-none-any.whl (950 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 950.1/950.1 kB 2.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyOpenGL==3.1.5 (from -r /tmp/./requirements.txt (line 91))
    # 21 1359.5   Downloading PyOpenGL-3.1.5-py3-none-any.whl (2.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 4.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyOpenGL-accelerate==3.1.5 (from -r /tmp/./requirements.txt (line 92))
    # 21 1359.5   Downloading PyOpenGL-accelerate-3.1.5.tar.gz (538 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 538.4/538.4 kB 3.4 MB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting pyOpenSSL==20.0.1 (from -r /tmp/./requirements.txt (line 93))
    # 21 1359.5   Downloading pyOpenSSL-20.0.1-py2.py3-none-any.whl (54 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.1/54.1 kB 384.9 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyparsing==2.4.7 (from -r /tmp/./requirements.txt (line 94))
    # 21 1359.5   Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 67.8/67.8 kB 475.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting pyrsistent==0.17.3 (from -r /tmp/./requirements.txt (line 95))
    # 21 1359.5   Downloading pyrsistent-0.17.3.tar.gz (106 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 106.9/106.9 kB 751.2 kB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Requirement already satisfied: PySocks==1.7.1 in /opt/conda/envs/softlearning/lib/python3.8/site-packages (from -r /tmp/./requirements.txt (line 96)) (1.7.1)
    # 21 1359.5 Collecting pytest==6.2.1 (from -r /tmp/./requirements.txt (line 97))
    # 21 1359.5   Downloading pytest-6.2.1-py3-none-any.whl (279 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 279.9/279.9 kB 1.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting python-dateutil==2.8.1 (from -r /tmp/./requirements.txt (line 98))
    # 21 1359.5   Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.2/227.2 kB 2.0 MB/s eta 0:00:00
    # 21 1359.5 Collecting pytz==2020.5 (from -r /tmp/./requirements.txt (line 99))
    # 21 1359.5   Downloading pytz-2020.5-py2.py3-none-any.whl (510 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 510.8/510.8 kB 2.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyWavelets==1.1.1 (from -r /tmp/./requirements.txt (line 100))
    # 21 1359.5   Downloading PyWavelets-1.1.1-cp38-cp38-manylinux1_x86_64.whl (4.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.4/4.4 MB 2.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting PyYAML==5.4 (from -r /tmp/./requirements.txt (line 101))
    # 21 1359.5   Downloading PyYAML-5.4-cp38-cp38-manylinux1_x86_64.whl (662 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 662.2/662.2 kB 3.8 MB/s eta 0:00:00
    # 21 1359.5 Collecting ray==1.2.0 (from ray[tune]==1.2.0->-r /tmp/./requirements.txt (line 102))
    # 21 1359.5   Downloading ray-1.2.0-cp38-cp38-manylinux2014_x86_64.whl (47.3 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 47.3/47.3 MB 6.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting redis==3.5.3 (from -r /tmp/./requirements.txt (line 103))
    # 21 1359.5   Downloading redis-3.5.3-py2.py3-none-any.whl (72 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.1/72.1 kB 867.7 kB/s eta 0:00:00
    # 21 1359.5 Collecting requests==2.25.1 (from -r /tmp/./requirements.txt (line 104))
    # 21 1359.5   Downloading requests-2.25.1-py2.py3-none-any.whl (61 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.2/61.2 kB 713.2 kB/s eta 0:00:00
    # 21 1359.5 Collecting requests-oauthlib==1.3.0 (from -r /tmp/./requirements.txt (line 105))
    # 21 1359.5   Downloading requests_oauthlib-1.3.0-py2.py3-none-any.whl (23 kB)
    # 21 1359.5 Collecting rsa==4.7 (from -r /tmp/./requirements.txt (line 106))
    # 21 1359.5   Downloading rsa-4.7-py3-none-any.whl (34 kB)
    # 21 1359.5 Collecting ruamel-yaml==0.15.87 (from -r /tmp/./requirements.txt (line 107))
    # 21 1359.5   Downloading ruamel.yaml-0.15.87.tar.gz (316 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 316.9/316.9 kB 2.5 MB/s eta 0:00:00
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting scikit-image==0.18.1 (from -r /tmp/./requirements.txt (line 108))
    # 21 1359.5   Downloading scikit_image-0.18.1-cp38-cp38-manylinux1_x86_64.whl (30.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 30.2/30.2 MB 5.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting scikit-learn==0.24.1 (from -r /tmp/./requirements.txt (line 109))
    # 21 1359.5   Downloading scikit_learn-0.24.1-cp38-cp38-manylinux2010_x86_64.whl (24.9 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 24.9/24.9 MB 6.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting scikit-video==1.1.11 (from -r /tmp/./requirements.txt (line 110))
    # 21 1359.5   Downloading scikit_video-1.1.11-py2.py3-none-any.whl (2.3 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 1.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting scipy==1.6.0 (from -r /tmp/./requirements.txt (line 111))
    # 21 1359.5   Downloading scipy-1.6.0-cp38-cp38-manylinux1_x86_64.whl (27.2 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27.2/27.2 MB 7.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting setproctitle==1.2.1 (from -r /tmp/./requirements.txt (line 112))
    # 21 1359.5   Downloading setproctitle-1.2.1-cp38-cp38-manylinux1_x86_64.whl (36 kB)
    # 21 1359.5 Collecting six==1.15.0 (from -r /tmp/./requirements.txt (line 113))
    # 21 1359.5   Downloading six-1.15.0-py2.py3-none-any.whl (10 kB)
    # 21 1359.5 Collecting smmap==3.0.4 (from -r /tmp/./requirements.txt (line 114))
    # 21 1359.5   Downloading smmap-3.0.4-py2.py3-none-any.whl (25 kB)
    # 21 1359.5 Collecting tabulate==0.8.7 (from -r /tmp/./requirements.txt (line 115))
    # 21 1359.5   Downloading tabulate-0.8.7-py3-none-any.whl (24 kB)
    # 21 1359.5 Collecting tensorboard==2.4.1 (from -r /tmp/./requirements.txt (line 116))
    # 21 1359.5   Downloading tensorboard-2.4.1-py3-none-any.whl (10.6 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.6/10.6 MB 5.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorboard-plugin-wit==1.8.0 (from -r /tmp/./requirements.txt (line 117))
    # 21 1359.5   Downloading tensorboard_plugin_wit-1.8.0-py3-none-any.whl (781 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 781.2/781.2 kB 4.2 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorboardX==2.1 (from -r /tmp/./requirements.txt (line 118))
    # 21 1359.5   Downloading tensorboardX-2.1-py2.py3-none-any.whl (308 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 308.8/308.8 kB 2.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow==2.4.1 (from -r /tmp/./requirements.txt (line 119))
    # 21 1359.5   Downloading tensorflow-2.4.1-cp38-cp38-manylinux2010_x86_64.whl (394.4 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 394.4/394.4 MB 1.4 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow-addons==0.12.1 (from -r /tmp/./requirements.txt (line 120))
    # 21 1359.5   Downloading tensorflow_addons-0.12.1-cp38-cp38-manylinux2010_x86_64.whl (703 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 703.3/703.3 kB 691.6 kB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow-estimator==2.4.0 (from -r /tmp/./requirements.txt (line 121))
    # 21 1359.5   Downloading tensorflow_estimator-2.4.0-py2.py3-none-any.whl (462 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 462.0/462.0 kB 3.9 MB/s eta 0:00:00
    # 21 1359.5 Collecting tensorflow-probability==0.12.1 (from -r /tmp/./requirements.txt (line 122))
    # 21 1359.5   Downloading tensorflow_probability-0.12.1-py2.py3-none-any.whl (4.8 MB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.8/4.8 MB 3.7 MB/s eta 0:00:00
    # 21 1359.5 Collecting termcolor==1.1.0 (from -r /tmp/./requirements.txt (line 123))
    # 21 1359.5   Downloading termcolor-1.1.0.tar.gz (3.9 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting threadpoolctl==2.1.0 (from -r /tmp/./requirements.txt (line 124))
    # 21 1359.5   Downloading threadpoolctl-2.1.0-py3-none-any.whl (12 kB)
    # 21 1359.5 Collecting tifffile==2021.1.14 (from -r /tmp/./requirements.txt (line 125))
    # 21 1359.5   Downloading tifffile-2021.1.14-py3-none-any.whl (158 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 158.9/158.9 kB 1.3 MB/s eta 0:00:00
    # 21 1359.5 Collecting toml==0.10.2 (from -r /tmp/./requirements.txt (line 126))
    # 21 1359.5   Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB)
    # 21 1359.5 Collecting tqdm==4.55.1 (from -r /tmp/./requirements.txt (line 127))
    # 21 1359.5   Downloading tqdm-4.55Pip subprocess error:
    # 21 1359.5   error: subprocess-exited-with-error
    # 21 1359.5
    # 21 1359.5   × Building wheel for mujoco-py (pyproject.toml) did not run successfully.
    # 21 1359.5   │ exit code: 1
    # 21 1359.5   ╰─> [95 lines of output]
    # 21 1359.5       running bdist_wheel
    # 21 1359.5       running build
    # 21 1359.5       performance hint: mujoco_py/cymj.pyx:67:5: Exception check on 'c_warning_callback' will always require the GIL to be acquired.
    # 21 1359.5       Possible solutions:
    # 21 1359.5           1. Declare the function as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
    # 21 1359.5           2. Use an 'int' return type on the function to allow an error code to be returned.
    # 21 1359.5       performance hint: mujoco_py/cymj.pyx:104:5: Exception check on 'c_error_callback' will always require the GIL to be acquired.
    # 21 1359.5       Possible solutions:
    # 21 1359.5           1. Declare the function as 'noexcept' if you control the definition and you're sure you don't want the function to raise exceptions.
    # 21 1359.5           2. Use an 'int' return type on the function to allow an error code to be returned.
    # 21 1359.5
    # 21 1359.5       Error compiling Cython file:
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5       ...
    # 21 1359.5           See c_warning_callback, which is the C wrapper to the user defined function
    # 21 1359.5           '''
    # 21 1359.5           global py_warning_callback
    # 21 1359.5           global mju_user_warning
    # 21 1359.5           py_warning_callback = warn
    # 21 1359.5           mju_user_warning = c_warning_callback
    # 21 1359.5                              ^
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5
    # 21 1359.5       mujoco_py/cymj.pyx:92:23: Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to type 'void (const char *) except * nogil'.
    # 21 1359.5
    # 21 1359.5       Error compiling Cython file:
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5       ...
    # 21 1359.5           See c_warning_callback, which is the C wrapper to the user defined function
    # 21 1359.5           '''
    # 21 1359.5           global py_error_callback
    # 21 1359.5           global mju_user_error
    # 21 1359.5           py_error_callback = err_callback
    # 21 1359.5           mju_user_error = c_error_callback
    # 21 1359.5                            ^
    # 21 1359.5       ------------------------------------------------------------
    # 21 1359.5
    # 21 1359.5       mujoco_py/cymj.pyx:127:21: Cannot assign type 'void (const char *) except * nogil' to 'void (*)(const char *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to type 'void (const char *) except * nogil'.
    # 21 1359.5       Removing old mujoco_py cext /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/generated/cymj_2.0.2.13_38_linuxcpuextensionbuilder_38.so
    # 21 1359.5       Compiling /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/cymj.pyx because it changed.
    # 21 1359.5       [1/1] Cythonizing /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/cymj.pyx
    # 21 1359.5       Traceback (most recent call last):
    # 21 1359.5         File "/opt/conda/envs/softlearning/lib/python3.8/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
    # 21 1359.5           main()
    # 21 1359.5         File "/opt/conda/envs/softlearning/lib/python3.8/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
    # 21 1359.5           json_out['return_val'] = hook(**hook_input['kwargs'])
    # 21 1359.5         File "/opt/conda/envs/softlearning/lib/python3.8/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
    # 21 1359.5           return _build_backend().build_wheel(wheel_directory, config_settings,
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 404, in build_wheel
    # 21 1359.5           return self._build_with_temp_dir(
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 389, in _build_with_temp_dir
    # 21 1359.5           self.run_setup()
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 480, in run_setup
    # 21 1359.5           super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 311, in run_setup
    # 21 1359.5           exec(code, locals())
    # 21 1359.5         File "<string>", line 33, in <module>
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/__init__.py", line 103, in setup
    # 21 1359.5           return distutils.core.setup(**attrs)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 185, in setup
    # 21 1359.5           return run_commands(dist)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
    # 21 1359.5           dist.run_commands()
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
    # 21 1359.5           self.run_command(cmd)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/dist.py", line 963, in run_command
    # 21 1359.5           super().run_command(command)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    # 21 1359.5           cmd_obj.run()
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/normal/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 368, in run
    # 21 1359.5           self.run_command("build")
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
    # 21 1359.5           self.distribution.run_command(command)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/dist.py", line 963, in run_command
    # 21 1359.5           super().run_command(command)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    # 21 1359.5           cmd_obj.run()
    # 21 1359.5         File "<string>", line 29, in run
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/__init__.py", line 3, in <module>
    # 21 1359.5           from mujoco_py.builder import cymj, ignore_mujoco_warnings, functions, MujocoException
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 510, in <module>
    # 21 1359.5           cymj = load_cython_ext(mujoco_path)
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 105, in load_cython_ext
    # 21 1359.5           cext_so_path = builder.build()
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 221, in build
    # 21 1359.5           built_so_file_path = self._build_impl()
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 273, in _build_impl
    # 21 1359.5           so_file_path = super()._build_impl()
    # 21 1359.5         File "/tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/builder.py", line 234, in _build_impl
    # 21 1359.5           dist.ext_modules = cythonize([self.extension])
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/Cython/Build/Dependencies.py", line 1154, in cythonize
    # 21 1359.5           cythonize_one(*args)
    # 21 1359.5         File "/tmp/pip-build-env-q7bx0iqj/overlay/lib/python3.8/site-packages/Cython/Build/Dependencies.py", line 1321, in cythonize_one
    # 21 1359.5           raise CompileError(None, pyx_file)
    # 21 1359.5       Cython.Compiler.Errors.CompileError: /tmp/pip-install-dyng7tuk/mujoco-py_7f730c8dac33437a9823ca06587a6fca/mujoco_py/cymj.pyx
    # 21 1359.5       [end of output]
    # 21 1359.5
    # 21 1359.5   note: This error originates from a subprocess, and is likely not a problem with pip.
    # 21 1359.5   ERROR: Failed building wheel for mujoco-py
    # 21 1359.5 ERROR: Could not build wheels for mujoco-py, which is required to install pyproject.toml-based projects
    # 21 1359.5
    # 21 1359.5 .1-py2.py3-none-any.whl (68 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 68.3/68.3 kB 500.3 kB/s eta 0:00:00
    # 21 1359.5 Collecting traitlets==5.0.5 (from -r /tmp/./requirements.txt (line 128))
    # 21 1359.5   Downloading traitlets-5.0.5-py3-none-any.whl (100 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.1/100.1 kB 732.4 kB/s eta 0:00:00
    # 21 1359.5 Collecting typeguard==2.10.0 (from -r /tmp/./requirements.txt (line 129))
    # 21 1359.5   Downloading typeguard-2.10.0-py3-none-any.whl (16 kB)
    # 21 1359.5 Collecting typing-extensions==3.7.4.3 (from -r /tmp/./requirements.txt (line 130))
    # 21 1359.5   Downloading typing_extensions-3.7.4.3-py3-none-any.whl (22 kB)
    # 21 1359.5 Collecting urllib3==1.26.3 (from -r /tmp/./requirements.txt (line 131))
    # 21 1359.5   Downloading urllib3-1.26.3-py2.py3-none-any.whl (137 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 137.0/137.0 kB 1.1 MB/s eta 0:00:00
    # 21 1359.5 Collecting wcwidth==0.2.5 (from -r /tmp/./requirements.txt (line 132))
    # 21 1359.5   Downloading wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
    # 21 1359.5 Collecting Werkzeug==1.0.1 (from -r /tmp/./requirements.txt (line 133))
    # 21 1359.5   Downloading Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 298.6/298.6 kB 1.5 MB/s eta 0:00:00
    # 21 1359.5 Collecting wheel==0.36.2 (from -r /tmp/./requirements.txt (line 134))
    # 21 1359.5   Downloading wheel-0.36.2-py2.py3-none-any.whl (35 kB)
    # 21 1359.5 Collecting wrapt==1.12.1 (from -r /tmp/./requirements.txt (line 135))
    # 21 1359.5   Downloading wrapt-1.12.1.tar.gz (27 kB)
    # 21 1359.5   Preparing metadata (setup.py): started
    # 21 1359.5   Preparing metadata (setup.py): finished with status 'done'
    # 21 1359.5 Collecting yarl==1.6.3 (from -r /tmp/./requirements.txt (line 136))
    # 21 1359.5   Downloading yarl-1.6.3-cp38-cp38-manylinux2014_x86_64.whl (324 kB)
    # 21 1359.5      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 324.3/324.3 kB 2.0 MB/s eta 0:00:00
    # 21 1359.5 Requirement already satisfied: setuptools in /opt/conda/envs/softlearning/lib/python3.8/site-packages (from dm-control==0.0.322773188->-r /tmp/./requirements.txt (line 24)) (68.0.0)
    # 21 1359.5 Building wheels for collected packages: future, gpustat, gtimer, ipdb, mujoco-py, nvidia-ml-py3, pycosat, PyOpenGL-accelerate, pyrsistent, ruamel-yaml, termcolor, wrapt
    # 21 1359.5   Building wheel for future (setup.py): started
    # 21 1359.5   Building wheel for future (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for future: filename=future-0.18.2-py3-none-any.whl size=491058 sha256=f90c4958d6858a2d7acaaa0d053cc9c5a3aad37cbdea25f264cf946b238ab038
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/8e/70/28/3d6ccd6e315f65f245da085482a2e1c7d14b90b30f239e2cf4
    # 21 1359.5   Building wheel for gpustat (setup.py): started
    # 21 1359.5   Building wheel for gpustat (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for gpustat: filename=gpustat-0.6.0-py3-none-any.whl size=12594 sha256=40c56d7cbc148fd2a8ca00d0ae9548754afbdd8448474627a077ec7989be6323
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/0d/d9/80/b6cbcdc9946c7b50ce35441cc9e7d8c5a9d066469ba99bae44
    # 21 1359.5   Building wheel for gtimer (setup.py): started
    # 21 1359.5   Building wheel for gtimer (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for gtimer: filename=gtimer-1.0.0b5-py3-none-any.whl size=31052 sha256=f314d94f224d4a9eedeb0772c7551e61931f00ca52560ad4ff248b94e3b86e87
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/c3/64/e9/2e0651e41018363be497652601c51a1e5cd44cf368b722ca15
    # 21 1359.5   Building wheel for ipdb (setup.py): started
    # 21 1359.5   Building wheel for ipdb (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for ipdb: filename=ipdb-0.13.4-py3-none-any.whl size=10978 sha256=c588b6e10fb9ca38f0d986d11746e180c6f8c4fb609b5b6c190954c9947236f6
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/45/30/91/6d23d9241f432efb8e1e928b3ddd3657885d0a3118a1e570d2
    # 21 1359.5   Building wheel for mujoco-py (pyproject.toml): started
    # 21 1359.5   Building wheel for mujoco-py (pyproject.toml): finished with status 'error'
    # 21 1359.5   Building wheel for nvidia-ml-py3 (setup.py): started
    # 21 1359.5   Building wheel for nvidia-ml-py3 (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for nvidia-ml-py3: filename=nvidia_ml_py3-7.352.0-py3-none-any.whl size=19171 sha256=5f1d63a863f037f933527806df9a4cda32727d6b215c064b671fce04ea30abca
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/b9/b1/68/cb4feab29709d4155310d29a421389665dcab9eb3b679b527b
    # 21 1359.5   Building wheel for pycosat (setup.py): started
    # 21 1359.5   Building wheel for pycosat (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for pycosat: filename=pycosat-0.6.3-cp38-cp38-linux_x86_64.whl size=156654 sha256=b5ade3095eb3c889e38684f4bf8466e46264aae221060fd806659cf203e1d36e
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/71/5b/2d/0a9247760f0f008abc0eae7c0127a8c1cddfe1145e4b170fc0
    # 21 1359.5   Building wheel for PyOpenGL-accelerate (setup.py): started
    # 21 1359.5   Building wheel for PyOpenGL-accelerate (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for PyOpenGL-accelerate: filename=PyOpenGL_accelerate-3.1.5-cp38-cp38-linux_x86_64.whl size=1721370 sha256=1ac3d5a0e0a7986c4e70ceb341823f85ce3bbcd01e1b8b63e10b93584c3e25cf
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/78/c1/00/02b87e2b442a92cfa76c4650476396a245dc7e1bcbfc010ae2
    # 21 1359.5   Building wheel for pyrsistent (setup.py): started
    # 21 1359.5   Building wheel for pyrsistent (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for pyrsistent: filename=pyrsistent-0.17.3-cp38-cp38-linux_x86_64.whl size=119528 sha256=33680f64040cf1306930de65f3d42e28c6be8ae6c05b129abf7ab48ad857fe1d
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/3d/22/08/7042eb6309c650c7b53615d5df5cc61f1ea9680e7edd3a08d2
    # 21 1359.5   Building wheel for ruamel-yaml (setup.py): started
    # 21 1359.5   Building wheel for ruamel-yaml (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for ruamel-yaml: filename=ruamel.yaml-0.15.87-cp38-cp38-linux_x86_64.whl size=683654 sha256=845f5c8c2f3583b7e9a3f993a0dd80bd2ca1152407696dc6025a709aec6dbcab
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/f5/48/b9/83e6b45fde3fa62c6acda740b297ad8a57177b5292db032084
    # 21 1359.5   Building wheel for termcolor (setup.py): started
    # 21 1359.5   Building wheel for termcolor (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for termcolor: filename=termcolor-1.1.0-py3-none-any.whl size=4832 sha256=7068d9d006aff897ef4cddf92deedb1bfd42bea2d11f0c5173435c57b98dea79
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/a0/16/9c/5473df82468f958445479c59e784896fa24f4a5fc024b0f501
    # 21 1359.5   Building wheel for wrapt (setup.py): started
    # 21 1359.5   Building wheel for wrapt (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for wrapt: filename=wrapt-1.12.1-cp38-cp38-linux_x86_64.whl size=77936 sha256=34a0c4381532f2b71f67955f9087118fc2ade00481f59b1cd31762d0b3801c09
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/5f/fd/9e/b6cf5890494cb8ef0b5eaff72e5d55a70fb56316007d6dfe73
    # 21 1359.5 Successfully built future gpustat gtimer ipdb nvidia-ml-py3 pycosat PyOpenGL-accelerate pyrsistent ruamel-yaml termcolor wrapt
    # 21 1359.5 Failed to build mujoco-py
    # 21 1359.5
    # 21 1359.5 failed
    # 21 1359.5
    # 21 1359.5 CondaEnvException: Pip failed
    # 21 1359.5
    # 21 ERROR: process "/bin/bash -c conda env update -f /tmp/environment.yml     && conda clean --all -y" did not complete successfully: exit code: 1
    ------
     > [12/15] RUN --mount=type=secret,id=mjkey,dst=/root/.mujoco/mjkey.txt     conda env update -f /tmp/environment.yml     && conda clean --all -y:
    # 21 1359.5   Building wheel for wrapt (setup.py): finished with status 'done'
    # 21 1359.5   Created wheel for wrapt: filename=wrapt-1.12.1-cp38-cp38-linux_x86_64.whl size=77936 sha256=34a0c4381532f2b71f67955f9087118fc2ade00481f59b1cd31762d0b3801c09
    # 21 1359.5   Stored in directory: /root/.cache/pip/wheels/5f/fd/9e/b6cf5890494cb8ef0b5eaff72e5d55a70fb56316007d6dfe73
    # 21 1359.5 Successfully built future gpustat gtimer ipdb nvidia-ml-py3 pycosat PyOpenGL-accelerate pyrsistent ruamel-yaml termcolor wrapt
    # 21 1359.5 Failed to build mujoco-py
    # 21 1359.5
    # 21 1359.5 failed
    # 21 1359.5
    # 21 1359.5 CondaEnvException: Pip failed
    # 21 1359.5
    ------
    ERROR: failed to solve: process "/bin/bash -c conda env update -f /tmp/environment.yml     && conda clean --all -y" did not complete successfully: exit code: 1

Note that an extra space is added after the pound symbol `#` in the error message to prevent github linking issues.
@Zsk0
Copy link

Zsk0 commented Dec 13, 2023

  1. Add a compiler directive " compiler_directives={'legacy_implicit_noexcept': True}" to the line 239 of mujoco_py/builder.py
 def _build_impl(self):
        dist = Distribution({
            "script_name": None,
            "script_args": ["build_ext"]
        })
        dist.ext_modules = cythonize([self.extension],compiler_directives={'legacy_implicit_noexcept': True})
  1. Update Cython to the latest 3.0.2 version.
pip install -U Cython
  1. The reasons can be found here
    [MAINT, Cython] Implicit noexcept is deprecated in Cython 3.0 scikit-learn/scikit-learn#25609
    [BUG] enum classes cannot be used in cdef class method declarations cython/cython#5637

This works for my problem. Thanks a lot.

my env:

  • Ubuntu 22.04
  • python 3.8
  • mujoco 2.1.0
  • mujoco-py 2.1.2.14
  • Cython 3.0.6

This works!
Thanks

@YupuLu
Copy link

YupuLu commented Jan 7, 2024

pip install Cython==3.0.0a10 works for me.

My env:
Ubuntu 20.04
python 3.8.17
mujoco 2.1.0
mujoco-py 2.1.2.14

@ZhaoRunyi
Copy link

ZhaoRunyi commented Apr 19, 2024

  1. Add a compiler directive " compiler_directives={'legacy_implicit_noexcept': True}" to the line 239 of mujoco_py/builder.py
 def _build_impl(self):
        dist = Distribution({
            "script_name": None,
            "script_args": ["build_ext"]
        })
        dist.ext_modules = cythonize([self.extension],compiler_directives={'legacy_implicit_noexcept': True})
  1. Update Cython to the latest 3.0.2 version.
pip install -U Cython
  1. The reasons can be found here
    [MAINT, Cython] Implicit noexcept is deprecated in Cython 3.0 scikit-learn/scikit-learn#25609
    [BUG] enum classes cannot be used in cdef class method declarations cython/cython#5637

This cause me "AttributeError: module ‘mujoco_py’ has no attribute 'utils’"
after following the instructions from 4. https://blog.csdn.net/shouchen1/article/details/130002566 (it
's a Chinese blog), which is make chage to the test code provided by the official website:

import mujoco_py 
from mujoco_py import utils # this line is added
import os
mj_path = utils.discover_mujoco() # change mujoco.utils->utils
xml_path = os.path.join(mj_path, 'model', 'humanoid.xml')
model = mujoco_py.load_model_from_path(xml_path)
sim = mujoco_py.MjSim(model)

the problem solved.

@MSiba
Copy link

MSiba commented May 16, 2024

already have Cython==0.29.36 but the same error exists when pip install mujoco_py==2.0.2.7

Did you find a workaround for this?

@dhruvmsheth
Copy link

Here are the steps that worked for me:

pip install "cython<3"
conda install gxx_linux-64
sudo ln -sf /usr/bin/gcc /home/dhruvstra/anaconda3/envs/argus/bin/x86_64-conda-linux-gnu-cc

The /home/dhruvstra/anaconda3/envs/argus/bin/x86_64-conda-linux-gnu-cc should be your path to where conda linux gnu is installed. It might be located at usr/bin/

and the most important one was:
conda install -c conda-forge gcc=12.1.0

@gaisibo
Copy link

gaisibo commented Jul 26, 2024

Here are the steps that worked for me:

pip install "cython<3"
conda install gxx_linux-64
sudo ln -sf /usr/bin/gcc /home/dhruvstra/anaconda3/envs/argus/bin/x86_64-conda-linux-gnu-cc

The /home/dhruvstra/anaconda3/envs/argus/bin/x86_64-conda-linux-gnu-cc should be your path to where conda linux gnu is installed. It might be located at usr/bin/

and the most important one was: conda install -c conda-forge gcc=12.1.0

This works for me! Thank you!

@awesomeNabi
Copy link

Here are the steps that worked for me:

pip install "cython<3"
conda install gxx_linux-64
sudo ln -sf /usr/bin/gcc /home/dhruvstra/anaconda3/envs/argus/bin/x86_64-conda-linux-gnu-cc

The /home/dhruvstra/anaconda3/envs/argus/bin/x86_64-conda-linux-gnu-cc should be your path to where conda linux gnu is installed. It might be located at usr/bin/

and the most important one was: conda install -c conda-forge gcc=12.1.0

wonderful!!!it works

@varungupta31
Copy link

None of the other approaches worked for me, I started afresh and followed this:

#803

This finally worked. If you just want to run mujoco, this is worth a shot :)

Copy-pasting the contents of the linked discussion, credit to @Josh00-Lu

## Create conda
conda create -n demo python=3.9 mesalib glew glfw -c conda-forge -y
conda activate demo

## Install mujoco dependency
USER_DIR=$USER
echo $USER_DIR
wget -c "https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz"
mkdir -p /home/$USER_DIR/.mujoco
cp mujoco210-linux-x86_64.tar.gz /home/$USER_DIR/mujoco.tar.gz
rm mujoco210-linux-x86_64.tar.gz
mkdir -p /home/$USER_DIR/.mujoco
tar -zxvf /home/$USER_DIR/mujoco.tar.gz -C /home/$USER_DIR/.mujoco
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/$USER_DIR/.mujoco/mujoco210/bin" >> ~/.bashrc
echo "export MUJOCO_PY_MUJOCO_PATH=/home/$USER_DIR/.mujoco/mujoco210" >> ~/.bashrc

# activate 
source ~/.bashrc
conda activate demo

#  install 
export CC="/usr/bin/gcc"
pip install "mujoco_py>=2.0"
pip install "cython<3"

# compile mujoco using gcc
python
import mujoco_py

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests