diff --git a/.github/ISSUE_TEMPLATE/agenda_item.md b/.github/ISSUE_TEMPLATE/agenda_item.md new file mode 100644 index 00000000..62c68d0b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/agenda_item.md @@ -0,0 +1,19 @@ +--- +name: Design Meeting Agenda Item +about: Add an item to the next Design Meeting agenda +title: '' +labels: ['Design Meeting'] +assignees: ['llvm-beanz', 'farzonl'] + +--- + +**Does the agenda item relate to an existing proposal or specification language?** +Please link the file in the repo where the problem is documented. + +**Describe the issue or outstanding question.** +This can be as short as a question that needs answering or as complex as needed +to convey the problem that needs solving. + +**Additional context** +Add any other context or screenshots about the feature request here. + diff --git a/README.md b/README.md index 1177d99d..d1623869 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,14 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. +## Public Design Meeting + +The HLSL team organizes a meeting every two weeks which is open to the public to discuss work in progress in this repository. +That includes proposals for new HLSL features as well as the ongoing work to write a language specification. + +For more information on this meeting and the terms and conditions for +participation, see the [Design Meeting](docs/DesignMeeting.md) documentation. + ## Trademarks This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft diff --git a/docs/DesignMeeting.md b/docs/DesignMeeting.md new file mode 100644 index 00000000..71159317 --- /dev/null +++ b/docs/DesignMeeting.md @@ -0,0 +1,127 @@ +# Design Meeting + +> NOTE: Please read the [terms of participation](#design-meeting-terms) +> ("Terms") below prior to joining the Teams meeting. You joining the Teams +> meeting with Microsoft indicates your acknowledgement, agreement, and consent +> to these Terms. If you do not agree to these Terms, please do not join the +> meeting. +> +> If you intend to contribute code or other copyrightable materials (e.g. +> written comments, tools, documentation, etc.) to the hlsl specs repository, +> you are required to sign a Contributor License Agreement (CLA). For details, +> visit https://cla.microsoft.com. + +Public design meetings are held every other week (cancelling for holidays). +During these meetings the facilitator will iterate through PRs, issues and other +agenda topics to ensure forward progress and facilitate discussion. + +The meetings are facilitated by [Chris Bieneman](https://github.com/llvm-beanz) +and [Farzon Lotfi](https://github.com/farzonl). + +Meeting minutes will be posted into the [Meeting Minutes](docs/DesignMeetingMinutes) +folder of this repository following the [template](docs/DesignMeetingMinutes/Template.md). + +## Adding Agenda Items + +If there is an existing Issue or Pull Request you would like to discuss at the +next design meeting please add the +[Design Meeting](https://github.com/microsoft/hlsl-specs/labels/Design%20Meeting) +label. Issues and Pull Requests with the Design Meeting label will be given priority +during the meeting. + +If there is not an existing Issue or Pull request. File an issue with the +[Design Meeting Agenda Item](https://github.com/microsoft/hlsl-specs/issues/new?template=agenda_item.md) +template. + +## Attending the Meeting + +The design meeting is held using Microsoft Teams. + +If you wish to attend the meeting for an individual occurrence or on a recurring +basis, email [Ask HLSL @ Microsoft](mailto:AskHLSL@microsoft.com). Please +specify whether you want the recurring invite or a specific occurrence. + +## Design Meeting Terms + +NOTE: Please read the following terms of participation ("Terms") prior to +joining the Teams meeting. You joining the Teams meeting with Microsoft +indicates your acknowledgement, agreement, and consent to these Terms. If you +do not agree to these Terms, please do not join the meeting. + +1. **Your Consent.** You, as the participant in the Teams meeting hosted by +Microsoft ("You") that provides these Terms as part of the meeting invitation, +must read and agree to these Terms prior to joining and/or participating in the +Teams meeting hosted by Microsoft ("Meeting"). By joining the Meeting, You +consent to these Terms. + + +2. **Definitions.** + +* "Code" means any computer software code, whether in human-readable or +machine-executable form, that is delivered by You to Microsoft. + +* "Input" means all written or verbal suggestions, comments, feedback, ideas, or +know-how, that You provide to Microsoft during or relating to a Meeting. + +* "Materials" means any documentation, reports, tools, or other copyrighted +materials that have relevance to a Meeting. + + +3. **Scope.** These Terms cover any and all Input that You provide, now or in +the future, at any time, related to the Meeting subject matter. Any Code or +Materials that you want to submit to Microsoft must be submitted via the +Microsoft Contribution License Agreement. For details, visit +https://cla.microsoft.com. + + +4. **Your Employer.** References to "employer" in these Terms include Your +employer or anyone else for whom You are acting in providing your Input, e.g. as +a contractor, vendor, or agent. If Your Input is provided in the course of Your +work for an employer You must be authorized by the scope of your work, or secure +permission from Your employer, to provide Input before consenting to these Terms +by joining a Meeting. In that case, the term "You" or "Your" in these Terms will +refer to You and the employer collectively. + + +5. **License grants.** You grant to Microsoft under all of Your applicable +intellectual property rights, a nonexclusive, perpetual, irrevocable, +royalty-free, worldwide right and license in the Input to modify, reproduce, +create derivative works, test, display, perform, distribute, support, copy, +make, have made, use, offer to sell, sell and import, and otherwise dispose of +the Input, and to sublicense any or all of the foregoing rights to +third-parties. + + +6. **Representations and Warranties.** You represent that You are legally +entitled to provide Input according to these Terms and grant the licenses in +Section 5. If You are joining this meeting on behalf of Your employer, You +represent and warrant that You have the necessary authority to bind Your +employer to the obligations contained in these Terms. UNLESS REQUIRED BY +APPLICABLE LAW OR AGREED TO IN WRITING, AND EXCEPT FOR THE WARRANTIES EXPRESSLY +STATED IN THESE TERMS, THE INPUT PROVIDED UNDER THESE TERMS IS PROVIDED WITHOUT +WARRANTY OF ANY KIND, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY OF +NONINFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. + + +7. **Notice to Microsoft.** You agree to notify Microsoft in writing of any +facts or circumstances of which You later become aware that would make Your +representations in these Terms inaccurate in any respect. + + +8. **Maintenance and Disclosure.** You agree that Input provided may be +maintained indefinitely and disclosed publicly. + + +9. **Governing Law/Jurisdiction.** These Terms are governed by the laws of the +State of Washington, and the parties consent to exclusive jurisdiction and venue +in the federal courts sitting in King County, Washington, unless no federal +subject matter jurisdiction exists, in which case the parties consent to +exclusive jurisdiction and venue in the Superior Court of King County, +Washington. The parties waive all defenses of lack of personal jurisdiction and +forum non-conveniens. + + +10. **Entire Agreement/Assignment.** These Terms are the entire agreement +between the parties, and supersedes any and all prior agreements, understandings +or communications, written or oral, between the parties relating to the subject +matter hereof. diff --git a/docs/DesignMeetingMinutes/Template.md b/docs/DesignMeetingMinutes/Template.md new file mode 100644 index 00000000..4246e491 --- /dev/null +++ b/docs/DesignMeetingMinutes/Template.md @@ -0,0 +1,11 @@ +# Design Meeting Minutes: YYYY/MM/DD + +> NOTE: Please read the [terms of participation](DesignMeetingTerms.txt) +> ("Terms") prior to joining the Teams meeting. You joining the Teams meeting +> with Microsoft indicates your acknowledgement, agreement, and consent to these +> Terms. If you do not agree to these Terms, please do not join the meeting. +> +> If you intend to contribute code or other copyrightable materials (e.g. +> written comments, tools, documentation, etc.) to the hlsl specs repository, +> you are required to sign a Contributor License Agreement (CLA). For details, +> visit https://cla.microsoft.com. diff --git a/docs/DesignMeetingMinutes/index.md b/docs/DesignMeetingMinutes/index.md new file mode 100644 index 00000000..30d4d9e9 --- /dev/null +++ b/docs/DesignMeetingMinutes/index.md @@ -0,0 +1,8 @@ +# Meeting Minute Index + +{% assign doclist = site.pages | sort: 'url' %} +{% for doc in doclist %} +{% if doc.name contains '.md' and doc.dir == '/docs/DesignMeetingMinutes/' and doc.name != 'index.md' %} +* [{{ doc.name }}]({{ doc.url | relative_url }}) +{% endif %} +{% endfor %} diff --git a/docs/DesignMeetingTerms.txt b/docs/DesignMeetingTerms.txt new file mode 100644 index 00000000..db67c430 --- /dev/null +++ b/docs/DesignMeetingTerms.txt @@ -0,0 +1,82 @@ +NOTE: Please read the following terms of participation ("Terms") prior to +joining the Teams meeting. You joining the Teams meeting with Microsoft +indicates your acknowledgement, agreement, and consent to these Terms. If you +do not agree to these Terms, please do not join the meeting. + +1. **Your Consent.** You, as the participant in the Teams meeting hosted by +Microsoft ("You") that provides these Terms as part of the meeting invitation, +must read and agree to these Terms prior to joining and/or participating in the +Teams meeting hosted by Microsoft ("Meeting"). By joining the Meeting, You +consent to these Terms. + + +2. **Definitions.** + +* "Code" means any computer software code, whether in human-readable or +machine-executable form, that is delivered by You to Microsoft. + +* "Input" means all written or verbal suggestions, comments, feedback, ideas, or +know-how, that You provide to Microsoft during or relating to a Meeting. + +* "Materials" means any documentation, reports, tools, or other copyrighted +materials that have relevance to a Meeting. + + +3. **Scope.** These Terms cover any and all Input that You provide, now or in +the future, at any time, related to the Meeting subject matter. Any Code or +Materials that you want to submit to Microsoft must be submitted via the +Microsoft Contribution License Agreement. For details, visit +https://cla.microsoft.com. + + +4. **Your Employer.** References to "employer" in these Terms include Your +employer or anyone else for whom You are acting in providing your Input, e.g. as +a contractor, vendor, or agent. If Your Input is provided in the course of Your +work for an employer You must be authorized by the scope of your work, or secure +permission from Your employer, to provide Input before consenting to these Terms +by joining a Meeting. In that case, the term "You" or "Your" in these Terms will +refer to You and the employer collectively. + + +5. **License grants.** You grant to Microsoft under all of Your applicable +intellectual property rights, a nonexclusive, perpetual, irrevocable, +royalty-free, worldwide right and license in the Input to modify, reproduce, +create derivative works, test, display, perform, distribute, support, copy, +make, have made, use, offer to sell, sell and import, and otherwise dispose of +the Input, and to sublicense any or all of the foregoing rights to +third-parties. + + +6. **Representations and Warranties.** You represent that You are legally +entitled to provide Input according to these Terms and grant the licenses in +Section 5. If You are joining this meeting on behalf of Your employer, You +represent and warrant that You have the necessary authority to bind Your +employer to the obligations contained in these Terms. UNLESS REQUIRED BY +APPLICABLE LAW OR AGREED TO IN WRITING, AND EXCEPT FOR THE WARRANTIES EXPRESSLY +STATED IN THESE TERMS, THE INPUT PROVIDED UNDER THESE TERMS IS PROVIDED WITHOUT +WARRANTY OF ANY KIND, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY OF +NONINFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE. + + +7. **Notice to Microsoft.** You agree to notify Microsoft in writing of any +facts or circumstances of which You later become aware that would make Your +representations in these Terms inaccurate in any respect. + + +8. **Maintenance and Disclosure.** You agree that Input provided may be +maintained indefinitely and disclosed publicly. + + +9. **Governing Law/Jurisdiction.** These Terms are governed by the laws of the +State of Washington, and the parties consent to exclusive jurisdiction and venue +in the federal courts sitting in King County, Washington, unless no federal +subject matter jurisdiction exists, in which case the parties consent to +exclusive jurisdiction and venue in the Superior Court of King County, +Washington. The parties waive all defenses of lack of personal jurisdiction and +forum non-conveniens. + + +10. **Entire Agreement/Assignment.** These Terms are the entire agreement +between the parties, and supersedes any and all prior agreements, understandings +or communications, written or oral, between the parties relating to the subject +matter hereof.