diff --git a/.github/ISSUE_TEMPLATE/bug_report_general.yml b/.github/ISSUE_TEMPLATE/bug_report_general.yml new file mode 100644 index 0000000..9fbb23c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report_general.yml @@ -0,0 +1,152 @@ +name: Bug report (general) +description: Report a bug so we can all improve together. +title: "[Bug]_Title" +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + # Description + + - type: textarea + attributes: + label: Describe the bug + description: Provide a general overview of the bug and its impact on you or your peers. + + - type: input + attributes: + label: Describe yourself + description: Provide a general overview of your perspective on the problem. Are you a developer, user, artist, etc.? This can help us understand you better. Developers, artists, and users sometimes use different ways to describe the same thing, and we want to meet you in your domain. + + - type: textarea + attributes: + label: To Reproduce + description: | + Steps to reproduce the behaviour: + + 1. Go to '...' + 2. Click on '....' + 3. Scroll down to '....' + 4. See error + + - type: textarea + attributes: + label: How did you discover the bug? + description: | + Tell us what you did when you encountered the bug and what impact it had: + 1. I was playing around with x.y / I was working with {softwareA, softwareB, etc.} + 2. I opened '...' + 3. Then boom + + - type: textarea + attributes: + label: Expected behaviour + description: A clear and concise description of what you expected to happen. + + - type: textarea + attributes: + label: Screenshots + description: If applicable, please add screenshots to help explain your problem. + + - type: markdown + attributes: + value: | + # Environment Description + + - type: textarea + attributes: + label: Hardware Setup + description: | + Please describe your system Setup: + - Environment: VM, bare metal + - Hardware Specs: Cpu, Ram, Drives, etc. + - Network: internal/external [e.g., Self, Hosted, Cloud, Peer-to-Peer, Complex VPN, etc.] + + - type: textarea + attributes: + label: Software Setup + description: | + Please describe what software you are using so we know what to look out for: + - Affected Software: [e.g., Chrome, Safari, Ayon, Houdini, etc.] + - Driver Versions + + - type: input + attributes: + label: User Type + description: | + Please describe what user this setup was made for: + - Environment: Developer, Td, Artist, General User, Admin, etc. + + - type: textarea + attributes: + label: Additional Environment Details + description: | + if you have some special stuff running that we should be aware of, here is the place to tell us: + + - type: dropdown + validations: + required: true + attributes: + label: What platform are you running on? + description: | + Please specify the operating systems you are using. + multiple: true + options: + - Windows 10 + - Windows 11 + - Windows Server 2019 + - Windows Server 2022 + - Ubuntu + - CentOS + - Red Hat Enterprise Linux (RHEL) + - Debian + - Fedora + - openSUSE + - Arch Linux + - Linux Mint + - Slackware + - Elementary OS + - Kali Linux + - Gentoo + - Manjaro + - FreeBSD + - OpenBSD + - NetBSD + - Solaris + - OpenIndiana + - AIX (IBM) + - macOS Monterey + - macOS Big Sur + - macOS Catalina + - macOS Mojave + - VMware ESXi (Hypervisor) + - Microsoft Hyper-V (Hypervisor) + - Citrix XenServer (Hypervisor) + - Proxmox (Hypervisor) + - Oracle VM Server + - CoreOS + - Ubuntu Server + - CentOS Stream + - Red Hat Enterprise Linux Server + - SUSE Linux Enterprise Server + + - type: textarea + attributes: + label: Additional context + description: Add any other context about the problem here. + + - type: checkboxes + attributes: + label: Is there an existing issue with this? + description: >- + Please search to see if an issue with the bug you encountered already exists. + options: + - label: I have searched the existing issues + required: true + - type: checkboxes + attributes: + label: Are there any labels you wish to add? + description: Please search labels and identify those related to your bug. + options: + - label: I have added the relevant labels to the bug report. + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..5745954 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: Ynput Community Discussions + url: https://community.ynput.io + about: Please ask and answer questions here. + - name: Ynput Discord Server + url: https://discord.gg/ynput + about: For community quick chats. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..8b74c6e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,77 @@ +name: "Feature Request" +description: "Suggest a new feature or enhancement." +title: "[Feature Request]_Title " +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + **Please provide the following information:** + + - type: textarea + id: description + attributes: + label: "Description" + description: "Describe the feature or enhancement in detail." + placeholder: "Detailed description of the feature" + + - type: textarea + id: rationale + attributes: + label: "Rationale" + description: "Explain why this feature is needed." + placeholder: "Why is this feature important?" + + - type: textarea + id: proposed_solution + attributes: + label: "Proposed Solution" + description: "Describe your proposed solution." + placeholder: "Describe your solution." + + - type: textarea + id: alternatives + attributes: + label: "Alternatives Considered" + description: "List any alternatives you've considered." + placeholder: "Alternatives considered" + + - type: textarea + id: additional_context + attributes: + label: "Additional Context" + description: "Add any other context or screenshots." + placeholder: "Additional context." + + - type: markdown + attributes: + value: | + # impact assumptions + + - type: dropdown + attributes: + label: Severity + description: Please specify the Severity of this PR on your Operation + multiple: true + options: + - Not Severe + - Low + - Mid + - High + - Critical + - Stopper + + - type: checkboxes + attributes: + label: Is there an existing issue with this? + description: Please search to see if an issue with your feature request already exists. + options: + - label: I have searched the existing issues + required: true + - type: checkboxes + attributes: + label: Are there any labels you wish to add? + description: Please search labels and identify those related to your feature request. + options: + - label: I have added the relevant labels to the feature request. + required: true diff --git a/.github/ISSUE_TEMPLATE/proposal_technical.yml b/.github/ISSUE_TEMPLATE/proposal_technical.yml new file mode 100644 index 0000000..1e3baaa --- /dev/null +++ b/.github/ISSUE_TEMPLATE/proposal_technical.yml @@ -0,0 +1,234 @@ +name: Proposal (Technical) +description: 'Propose a new implementation, tool, system, or feature.' +title: "[Proposal]_Title" +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + # Description + + - type: textarea + attributes: + label: Summary + description: A brief proposal summary, including the main goals and expected outcomes. + + - type: textarea + attributes: + label: Glossary of Terms + description: Provide definitions and explanations of key terms used throughout the proposal. This ensures all readers have a common understanding of important concepts and terminology. + + - type: textarea + attributes: + label: Description + description: A detailed description of the project or feature, including background information, context, and its importance. + + - type: textarea + attributes: + label: Approval + description: > + What is needed for this to get approved? + + - **Reviews**: Who should review this? If unsure, consider people who often commit to the repo. + - **Implementations**: Is this self-contained or does it affect external libraries/tools? If it affects others, consider creating a sample implementation. + - **Acknowledgements**: Does this need acknowledgment from other tools/projects? List them here. + - **Testing Progress**: What should the testing process look like? Include any automated or manual tests. + + - type: markdown + attributes: + value: | + # User Stories + + - type: textarea + attributes: + label: User Stories + description: | + Describe scenarios illustrating how users are affected by the current problem and how the proposed solution will improve their experience. Example User Stories: + + - User Story 1: As a [type of user], I want [some goal] so that [some reason]. + - User Story 2: As a [type of user], I am facing [specific problem], which affects [aspect of the user's experience]. + + - type: markdown + attributes: + value: | + # Impact Assumptions + + - type: dropdown + attributes: + label: Assumed Complexity + description: Specify the assumed complexity level. + multiple: true + options: + - Hours + - Days + - Months + - More than 1/2 Year + + - type: dropdown + attributes: + label: Impact Scale + description: Specify the impact scale on other code/tools. + multiple: true + options: + - No other tool + - One more tool + - A few more tools + - An entire tool group + - Might propagate to all tools + + - type: textarea + attributes: + label: Other Tools Affected + description: If the impact scale is anything but "No other tool," list all the tools/repos affected. + + - type: markdown + attributes: + value: | + # Implementation Details + + - type: textarea + attributes: + label: How it Solves the Problem + description: Explain how the proposed implementation addresses the initial problems. + + - type: textarea + attributes: + label: High-Level Overview + description: Provide a brief outline of the proposed implementation and its key components. + + - type: textarea + attributes: + label: Detailed Technical Plan + description: Describe the in-depth technical approach, including specific steps, methodologies, tools, and options considered for implementation. + + - type: textarea + attributes: + label: Unresolved Questions + description: List all unresolved questions for further debate and consideration. + + - type: markdown + attributes: + value: | + ## Steps and Milestones + + - type: textarea + attributes: + label: Milestones + description: Provide key milestones to clarify the work steps for this proposal. + + - type: markdown + attributes: + value: | + ## Dependencies and Problems + + - type: markdown + attributes: + value: | + ### Problems + + - type: textarea + attributes: + label: Potential Problems + description: Identify potential issues or challenges that may arise during implementation. + + - type: textarea + attributes: + label: Long-term Issues + description: Identify any long-term issues that might emerge after implementation. + + - type: textarea + attributes: + label: Transient Problems + description: Identify any temporary issues arising from implementing the proposed solution. + + - type: textarea + attributes: + label: Impacting Branches + description: Detail any branches or repositories impacted by the project. + + - type: markdown + attributes: + value: | + ### Dependencies + + - type: textarea + attributes: + label: Dependencies + description: List all dependencies the project relies on, including software, hardware, and third-party services. + + - type: textarea + attributes: + label: Outgoing Dependencies + description: List all projects, branches, and issues that rely on this implementation. + + - type: textarea + attributes: + label: Dependency Issues + description: Identify any existing issues that might impact the project. + + - type: textarea + attributes: + label: Dependent Branches + description: Detail any branches or repositories on which the project depends. + + - type: textarea + attributes: + label: Common Dependencies + description: List any commonly used libraries, tools, or frameworks required for the project. + + - type: markdown + attributes: + value: | + ## Testing and Documentation + + - type: textarea + attributes: + label: Non-persistent Tests + description: Outline tests that can be run during development, including automated tests. + + - type: textarea + attributes: + label: Testing Plan + description: Outline the strategy for testing the project, including unit, integration, and user acceptance tests. + + - type: textarea + attributes: + label: Documentation + description: Describe the documentation to be created or updated as part of this project. + + - type: markdown + attributes: + value: | + ## Maintenance + + - type: textarea + attributes: + label: Maintenance + description: Explain the plan for maintaining the project after implementation. + + - type: textarea + attributes: + label: Risk Management + description: Identify potential risks and provide a mitigation plan for each. + + - type: textarea + attributes: + label: Appendices + description: Include any additional information, diagrams, or references supporting the proposal. + + - type: checkboxes + attributes: + label: Existing Issues + description: >- + Please search to see if an issue with this proposal already exists. + options: + - label: I have searched the existing issues + required: true + + - type: checkboxes + attributes: + label: Relevant Labels + description: Please add relevant labels to the proposal. + options: + - label: I have added the relevant labels to the proposal. + required: true diff --git a/.github/ISSUE_TEMPLATE/pull_request_template.md b/.github/ISSUE_TEMPLATE/pull_request_template.md new file mode 100644 index 0000000..0804c36 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/pull_request_template.md @@ -0,0 +1,34 @@ +### Description +Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. + +### Changelog +Paragraphs containing detailed information on the changes made, providing an in-depth description of the updates and enhancements. + +### Approval +who needs to approve this, and who is affected by this PR + +### Linked issues/branches +list all issues and branches that interact with this branch + +### Type of Change +- [ ] Bug-fix (non-breaking change which fixes an issue) +- [ ] New feature (non-breaking change which adds functionality) +- [ ] Breaking change (fix or feature that would cause existing functionality not to work as expected) +- [ ] Requires a documentation update + +## Additional info +Paragraphs of text give context to additional technical information or code examples. + +## Testing: + +### Manual Testing notes: +Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration. + +- [ ] Test A +- [ ] Test B + +### Persistent Testing notes: +List all tests that have been added to the test to persist. (e.g. unit tests and other automated tests) + +- [ ] Test A +- [ ] Test B