Home | History | Annotate | Download | only in vulkan-validation-layers
      1 ## Vulkan Validation Layers Repository Management
      2 
      3 # **Open Source Project  Objectives**
      4 
      5 * Alignment with the Vulkan Specification
      6   - The goal is for validation layer behavior to enforce the vulkan specification on applications. Questions on specification
      7 interpretations may require consulting with the Khronos Vulkan Workgroup for resolution
      8     - [Core Specification](https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html)
      9     - [Header Files](https://www.khronos.org/registry/vulkan/#headers)
     10     - [SDK Resources](https://vulkan.lunarg.com)
     11 * ISV Enablement
     12   - Updates of validation layer functionality should be available in a timely fashion
     13   - Every effort will be made to be responsive to ISV issues with validation layers
     14 * Cross Platform Compatibility
     15   - Google and LunarG collaboration:
     16     - Google: Monitor for Android
     17     - LunarG: Monitor for desktop (Windows and Linux)
     18     - Continuous Integration: HW test farms operated by Google and LunarG monitor various hardware/software platforms
     19 * Repo Quality
     20   - Repo remains in healthy state with all tests passing and good-quality, consistent codebase
     21   - Continuous Integration: Along with Github, HW test farms operated by Google and LunarG perform pre-commit cloud testing
     22 on pull-requests
     23 
     24 # **Roles and Definitions**
     25 * Contributor, Commenter, User
     26   - Submitting contributions, creating issues, or using the contents of the repository
     27 * Approver
     28   - Experienced project members who have made significant technical contributions
     29   - Write control: Approve pull/merge requests (verify submissions vs. acceptance criteria)
     30 * Technical Project Leads
     31   - Lead the project in terms of versioning, quality assurance, and overarching objectives
     32   - Monitor github issues and drive timely resolution
     33   - Designate new approvers
     34   - Ensure project information such as the Readme, Contributing docs, wiki, etc., kept up-to-date
     35   - Act as a facilitator in resolving technical conflicts
     36   - Is a point-of-contact for project-related questions
     37 
     38 The technical project leads for this repository are:
     39 * **Mark Lobodzinski** [mark@lunarg.com](mailto:mark@lunarg.com)
     40 * **Tobin Ehlis** [tobine@google.com](mailto:tobine@google.com)
     41 
     42 # **Acceptance Criteria and Process**
     43   - All source code to include Khronos copyright and license (Apache 2.0).
     44     - Additional copyrights of contributors appended
     45   - Contributions are via pull requests
     46     - Project leads will assigning approvers to contributor pull requests
     47     - Approvers can self-assign their reviewers
     48     - For complex or invasive contributions, Project Leads may request approval from specific reviewers
     49     - At least one review approval is required to complete a pull request
     50     - The goal is to be responsive to contributors while ensuring acceptance criteria is met and to facilitate their submissions
     51     - Approval is dependent upon adherence to the guidelines in [CONTRIBUTING.md](CONTRIBUTING.md), and alignment with
     52 repository goals of maintainability, completeness, and quality
     53     - Conflicts or questions will ultimately be resolved by the project leads
     54