From 71b48d783e8d6d6a219c57d04b0215117d72e905 Mon Sep 17 00:00:00 2001 From: Dana Robinson Date: Mon, 17 Nov 2025 21:28:24 -0700 Subject: [PATCH 1/5] Add content to CONTRIBUTING.md --- CONTRIBUTING.md | 55 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 52 insertions(+), 3 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6c939f55..4d686ce1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,17 +1,66 @@ # Contributing to hipFile/rocFile -## Overview +Thank you for contributing! This guide outlines the development workflow, +contribution standards, and best practices when working on hipFile. + +[!NOTE] The ROCm libraries are transitioning to a monorepo system called +[TheRock](https://github.com/ROCm/TheRock). hipFile has not yet been +incorporated into this yet. ## Development Setup +TBD + ## Branching Model -## Commit Messages +The main development trunk of hipFile is the `develop` branch. + +hipFile generally uses trunk-based development, where feature branches +are intended to be relatively short-lived. We do not, however, use the +"branch by abstraction" pattern, where in-flight work is switched on +and off by feature flags. Instead, when necessary, feature branches will +be created and prefixed with `feature/`. These feature branches will +be deleted after the feature has been merged to `develop`. Any feature +branches which are not merged to `develop`, but should be kept around +for posterity, will be renamed `feature` --> `inactive`. + +Although we encourage using forks for development, you will sometimes +see branches from AMD staff named `/`. These will be +very short-lived. + +### Release branches + +Releases are tagged `vX.Y.Z`, where `X`, `Y`, and `Z` are the major, +minor, and patch versions of the release. + +Releases occur from `develop`. Upon release, the tag is created and +the minor version number is bumped. The major version number will +only be bumped on `develop` when making an API/ABI-breaking change. + +Release branches are created retroactively and only when it is +necessary to bugfix supported versions of the library. It is our +intent to minimize the number of versions we support and features +will normally not be brought back to minor releases of previous +library versions. Release branches are not kept in sync with +`develop` and just contain cherry-picks of bug and performance +fixes. + +Bugfixing should take place on 'develop' and be cherry-picked to +any branches that are being maintained. The only exception to this +is when a bug is only present on a release branch. ## Pull Requests +We welcome pull requests from outside contributors. Pull requests +must pass our CI and be approved by at least one code owner. +Outside contributors should fully fill out the ROCm template (for +non-trivial PRs). + +Please also ensure that your code complies with this project's +coding style, as detailed in `STYLEGUIDE.md`. + ## Issue Reporting * Non-security issues should be reported as GitHub issues -* Security issues should be reported as directed in SECURITY.md +* Security issues should be reported as directed in `SECURITY.md` * Feature requests should be made using GitHub discussions From 221378e0984e20fa3c9b7028e5597cfd3f7e1ffa Mon Sep 17 00:00:00 2001 From: Dana Robinson Date: Mon, 17 Nov 2025 21:30:44 -0700 Subject: [PATCH 2/5] Minor typo --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4d686ce1..2851ad50 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ Thank you for contributing! This guide outlines the development workflow, contribution standards, and best practices when working on hipFile. [!NOTE] The ROCm libraries are transitioning to a monorepo system called -[TheRock](https://github.com/ROCm/TheRock). hipFile has not yet been +[TheRock](https://github.com/ROCm/TheRock). hipFile has not been incorporated into this yet. ## Development Setup From 27fb5014698a63d1cccc9c5d5770241fa73bbd94 Mon Sep 17 00:00:00 2001 From: Dana Robinson Date: Mon, 17 Nov 2025 22:54:21 -0700 Subject: [PATCH 3/5] Fix note --- CONTRIBUTING.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2851ad50..61f3edf4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,9 +3,8 @@ Thank you for contributing! This guide outlines the development workflow, contribution standards, and best practices when working on hipFile. -[!NOTE] The ROCm libraries are transitioning to a monorepo system called -[TheRock](https://github.com/ROCm/TheRock). hipFile has not been -incorporated into this yet. +> [!NOTE] +> The ROCm libraries are transitioning to a monorepo system called [TheRock](https://github.com/ROCm/TheRock). hipFile has not been incorporated into this monorepo yet. ## Development Setup From cb673ae46e7329e84cf3909af1fa82e140f41179 Mon Sep 17 00:00:00 2001 From: Dana Robinson Date: Mon, 17 Nov 2025 22:55:22 -0700 Subject: [PATCH 4/5] Fix quotes --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 61f3edf4..2e194942 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -44,7 +44,7 @@ library versions. Release branches are not kept in sync with `develop` and just contain cherry-picks of bug and performance fixes. -Bugfixing should take place on 'develop' and be cherry-picked to +Bugfixing should take place on `develop` and be cherry-picked to any branches that are being maintained. The only exception to this is when a bug is only present on a release branch. From 54127a48e29c1e57ebdf8f01169521057b62dc5f Mon Sep 17 00:00:00 2001 From: Dana Robinson Date: Tue, 18 Nov 2025 09:31:10 -0700 Subject: [PATCH 5/5] Strengthen language around forks --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2e194942..9675b19a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -23,7 +23,7 @@ be deleted after the feature has been merged to `develop`. Any feature branches which are not merged to `develop`, but should be kept around for posterity, will be renamed `feature` --> `inactive`. -Although we encourage using forks for development, you will sometimes +External developers must use forks for development. You will sometimes see branches from AMD staff named `/`. These will be very short-lived.