Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 1 addition & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,34 +30,6 @@ Mujin Controller Python Client is Licensed under the Apache License, Version 2.0

### How to re-generate `webstackgraphclient.py`

First, set up a virtualenv to install required pip packages:

```bash
# create a new virtualenv, you can also delete it afterwards
virtualenv .venv

# install required packages
./.venv/bin/pip install six==1.16.0 requests==2.27.1 graphql-core==3.2.0 typing_extensions==4.2.0

# install mujinwebstackclient
./.venv/bin/pip install .
```

Then, use `mujin_webstackclientpy_generategraphclient.py` to generate the content of the `webstackgraphclient.py` file.

```bash
./.venv/bin/python devbin/mujin_webstackclientpy_generategraphclient.py --url http://controller123 > python/mujinwebstackclient/webstackgraphclient.py
```

## Troubleshooting

### Jhbuild fails due to flake8

If Jhbuild fails on building mujinwebstackclientpy due to a flake8 violation (most likely with a several hundred errors and warnings), this could be happening due to flake8 running a default configuration within a virtual environment.

If this seems to be the case, you can delete the virtual environment.

```bash
# delete the virtual environment
rm -rf ./.venv
PYTHONPATH=python uv run --with six==1.16.0 --with requests==2.27.1 --with graphql-core==3.2.0 --with typing_extensions==4.2.0 --with websockets==16.0 devbin/mujin_webstackclientpy_generategraphclient.py --url http://controller123 > python/mujinwebstackclient/webstackgraphclient.py
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Can we break this command into multiple lines?
  2. Is ``PYTHONPATH=python really needed?

Copy link
Copy Markdown
Author

@cielavenir cielavenir Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@woswos

Is PYTHONPATH=python really needed

yes, it replaces install .

Can we break this command into multiple lines?

as far as I investigate, it is not possible, the most realistic alternative is to migrate our code base to pyproject.toml or requirements.txt, but it also requires dropping distutils1

Footnotes

  1. mujinsimulator already dropped distutils jfyi

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we break this command into multiple lines?

No, I just meant adding \ to make it easier to read the command in the readme file. Something like:

PYTHONPATH=python uv run \
--with six==1.16.0 \
--with requests==2.27.1 \
--with graphql-core==3.2.0 \
--with typing_extensions==4.2.0 \
--with websockets==16.0 \
devbin/mujin_webstackclientpy_generategraphclient.py --url http://controller123 > python/mujinwebstackclient/webstackgraphclient.py

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually it turned out mujincommon.setuptools.Distribution works on setuptools, so I post #92

```
Loading