Improve dependency management
jvmncs opened this issue · comments
Right now, the repos we rely on are a bit of a mess. In particular, gym-ai-safety-gridworlds has a broken setup.py and ai-safety-gridworlds doesn't have one at all. We've also been relying on a submodule for using ai-safety-gridworlds, which I'd prefer to avoid long-term. Here's a plan for fixing this situation.
- Maintain a fork of
ai-safety-gridworlds
with a proper setup.py (can ideally PR this back to the main repo) - Create the
safe-grid-gym
repo- Hard fork of
gym_ai_safety_gridworlds
using David's fork - Hard fork of
ai-safety-gridworlds-viewer
- Simplify setup.py, pointing to our fork of the ai-safety-gridworlds repo
- Make sure to give proper attribution in the license
- Hard fork of
- Simplify our own setup.py to match all of this
Do we want to keep using the fork we are currently using which also contains the modified tomato watering environment (https://github.com/jvmancuso/ai-safety-gridworlds)? Could be a problem, if we want to submit a PR for the setup.py
Yeah that's a good plan. We can submit the PR from a different branch but have our fork maintain our own environments as needed
Decided to include ai-safety-gridworlds-viewer
in this, edited top-level comment to reflect changes
I updated our fork of ai-safety-gridworlds
with a setup.py and created the new safe-grid-gym
repo that combines the viewer and the gym environment.