diff --git a/.github/DISCUSSION_TEMPLATE/Asking-for-Help.yaml b/.github/DISCUSSION_TEMPLATE/Asking-for-Help.yaml new file mode 100644 index 00000000..46aff129 --- /dev/null +++ b/.github/DISCUSSION_TEMPLATE/Asking-for-Help.yaml @@ -0,0 +1,68 @@ +body: + - type: textarea + attributes: + label: Intro + description: Who are you, what do you use MuJoCo for? + value: | + Hi! + + I am a ([graduate / undergrad] student / professor / researcher) at XYZ, I use MuJoCo for my research on ABC. + validations: + required: true + - type: textarea + attributes: + label: My setup + description: MuJoCo / MJX version, API (C or Python), architecture, OS + version. + validations: + required: true + - type: textarea + attributes: + label: My question + description: What you are trying to do, what problem have you encountered? + - type: textarea + attributes: + label: Minimal model and/or code that explain my question + description: Please include a loadable MJCF, not a partial snippet. If your model requires binary assets to load, attach a zip file. + value: | + If you encountered the issue in a complex model, please simplify it as much as possible (while still reproducing the issue). + + Model: +
+ minimal XML + + ```XML + + + + + + + + + ``` +
+ + Code: + ```python + import mujoco + import mediapy as media + model = mujoco.MjModel.from_xml_string(xml) + data = mujoco.MjData(model) + + with mujoco.Renderer(model) as renderer: + mujoco.mj_forward(model, data) + renderer.update_scene(data) + + media.show_image(renderer.render()) + ``` + validations: + required: false + - type: checkboxes + attributes: + label: Confirmations + options: + - label: I searched the [latest documentation](https://mujoco.readthedocs.io/en/latest/overview.html) thoroughly before posting. + required: true + - label: I searched previous [Issues](https://github.com/google-deepmind/mujoco/issues) and [Discussions](https://github.com/google-deepmind/mujoco/discussions), I am certain this has not been raised before. + required: true + diff --git a/.github/ISSUE_TEMPLATE/Bug-Report.yaml b/.github/ISSUE_TEMPLATE/Bug-Report.yaml new file mode 100644 index 00000000..dbac3604 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/Bug-Report.yaml @@ -0,0 +1,92 @@ +name: 🐛 Bug Report +description: >- + Please only use this if you're sure you've found a bug. Thanks! 🙏 +labels: bug +body: + - type: textarea + attributes: + label: Intro + description: Who are you, what do you use MuJoCo for? + value: | + Hi! + + I am a ([graduate / undergrad] student / professor / researcher) at XYZ, I use MuJoCo for my research on ABC. + validations: + required: true + - type: textarea + attributes: + label: My setup + description: MuJoCo / MJX version, API (C or Python), architecture, OS + version. + validations: + required: true + - type: textarea + attributes: + label: What's happening? What did you expect? + description: A clear and concise description of the current behaviour vs what you expected. If helpful to understand the issue, attach screenshots/videos. + value: | + Setting `rgba="1 0 0 1"` renders as **green**, I expected it to render as **red**. + + Here is a screen-shot showing a green sphere: + validations: + required: true + - type: textarea + attributes: + label: Steps for reproduction + description: Steps to reproduce the issue. + value: | + 1. Load the model below. + 2. Run the code below. + 3. See green sphere (should be red). + validations: + required: true + - type: textarea + attributes: + label: Minimal model for reproduction + description: Please include a loadable MJCF, not a partial snippet. If your model requires binary assets to load, attach a zip file. + value: | + If you encountered the issue in a complex model, please simplify it as much as possible (while still reproducing the issue). + +
+ minimal XML + + ```XML + + + + + + + + + ``` +
+ validations: + required: false + - type: textarea + attributes: + label: Code required for reproduction + description: Code required for reproduction of the bug. + value: | + ```python + import mujoco + import mediapy as media + model = mujoco.MjModel.from_xml_string(xml) + data = mujoco.MjData(model) + + with mujoco.Renderer(model) as renderer: + mujoco.mj_forward(model, data) + renderer.update_scene(data) + + media.show_image(renderer.render()) + ``` + validations: + required: false + - type: checkboxes + attributes: + label: Confirmations + options: + - label: I searched the [latest documentation](https://mujoco.readthedocs.io/en/latest/overview.html) thoroughly before posting. + required: true + - label: I searched previous [Issues](https://github.com/google-deepmind/mujoco/issues) and [Discussions](https://github.com/google-deepmind/mujoco/discussions), I am certain this has not been raised before. + required: true + diff --git a/.github/ISSUE_TEMPLATE/Feature-Request.yaml b/.github/ISSUE_TEMPLATE/Feature-Request.yaml new file mode 100644 index 00000000..5879099a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/Feature-Request.yaml @@ -0,0 +1,26 @@ +name: 🚀 Feature request +description: Submit a proposal/request for a new MuJoCo feature +labels: enhancement +body: +- type: textarea + attributes: + label: The feature, motivation and pitch + description: > + A clear and concise description of the feature proposal. Please outline the motivation for the proposal. Is your feature request related to a specific problem? e.g., *"I'm working on X and would like Y to be possible"*. If this is related to another GitHub issue, please link here too. + validations: + required: true +- type: textarea + attributes: + label: Alternatives + description: > + A description of any alternative solutions or features you've considered, if any. +- type: textarea + attributes: + label: Additional context + description: > + Add any other context or screenshots about the feature request. +- type: markdown + attributes: + value: > + Thanks for contributing 🎉! + diff --git a/.github/ISSUE_TEMPLATE/ask_for_help.md b/.github/ISSUE_TEMPLATE/ask_for_help.md deleted file mode 100644 index e330354c..00000000 --- a/.github/ISSUE_TEMPLATE/ask_for_help.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -name: Asking for help -about: Request help from the developers and the community -title: '' -labels: question -assignees: '' - ---- - -**How to ask for help** - -First, read our quick guide to -[asking good questions](https://github.com/google-deepmind/mujoco#asking-questions). -Below is a template for you to use: - -Hi, - -I'm a (student / professor / engineer) and I'm trying to use MuJoCo for _____. - -I'm looking for some help with ____. - -Here is a model which explains my question: - -
- minimal XML - -```XML - - - - - - - - - - - - - - - - -``` - -
- -Here is a screenshot / video, illustrating my question: diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index dff6e4de..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: bug -assignees: '' - ---- - -**How to submit a good bug report** - -- Are you sure this is a bug? If not, consider using the "Ask for help" or "Feature request" templates. - -- Use a clear and descriptive title. - -- Make it easy to reproduce the problem. - -- Include a ***minimal*** model that demonstrates the problem. If the model is small, include it as inline XML. If it requires binary assets, attach it as a zip file. - -- Include a screenshot or video, if relevant. - -- Include the following context: - - Operating system. - - MuJoCo version (and if the bug is new, the version where it used to work). - - For Python issues, what bindings are you using (i.e `mujoco`, `dm_control`, `mujoco-py`)? \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yaml b/.github/ISSUE_TEMPLATE/config.yaml new file mode 100644 index 00000000..bee58251 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yaml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: 🙏 Asking for Help + about: Start a new discussion + url: https://github.com/google-deepmind/mujoco/discussions/categories/asking-for-help diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 8ca6213c..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for MuJoCo -title: '' -labels: enhancement -assignees: '' - ---- - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. \ No newline at end of file diff --git a/README.md b/README.md index 06c5f29d..28c2f27f 100644 --- a/README.md +++ b/README.md @@ -99,44 +99,14 @@ and [style guide](STYLEGUIDE.md). ## Asking Questions -Questions and requests for help are welcome on the GitHub -[Issues](https://github.com/google-deepmind/mujoco/issues) page and should focus -on a specific problem or question. +Questions and requests for help are welcome as a GitHub +["Asking for Help" Discussion](https://github.com/google-deepmind/mujoco/discussions/categories/asking-for-help) +and should focus on a specific problem or question. -[Discussions](https://github.com/google-deepmind/mujoco/discussions) should -address wider concerns that might require input from multiple participants. +## Bug reports and feature requests -Here are some guidelines for asking good questions: - -1. Search for existing questions or issues that touch on the same subject. - - You can add comments to existing threads or start new ones. If you start a - new thread and there are existing relevant threads, please link to them. - -2. Use a clear and specific title. Try to include keywords that will make your - question easy for other to find in the future. - -3. Introduce yourself and your project more generally. - - If your level of expertise is exceptional (either high or low), and it might - be relevant to what we can assume you know, please state that as well. - -4. Take a step back and tell us what you're trying to accomplish, if we - understand you goal we might suggest a different type of solution than the - one you are having problems with - -5. Make it easy for others to reproduce the problem or understand your question. - - If this requires a model, please include it. Try to make the model minimal: - remove elements that are unrelated to your question. Pure XML models should - be inlined. Models requiring binary assets (meshes, textures), should be - attached as a `.zip` file. Please make sure the included model is loadable - before you attach it. - -6. Include an illustrative screenshot or video, if relevant. - -7. Tell us how you are accessing MuJoCo (C API, Python bindings, etc.) and which - MuJoCo version and operating system you are using. +GitHub [Issues](https://github.com/google-deepmind/mujoco/issues) are reserved +for bug reports, feature requests and other development-related subjects. ## Related software MuJoCo forms the backbone of many environment packages, but these are too many