tomsun28 commented on code in PR #1913: URL: https://github.com/apache/hertzbeat/pull/1913#discussion_r1589997073
########## hip/README.md: ########## @@ -0,0 +1,92 @@ +# HertzBeat Improvement Proposal (HIP) + +## What is a HIP? + +The HIP is a "HertzBeat Improvement Proposal" and it's the mechanism used to propose changes to the Apache HertzBeat codebases. + +The changes might be in terms of new features, large code refactoring, changes to APIs. + +In practical terms, the HIP defines a process in which developers can submit a design doc, receive feedback and get the "go ahead" to execute. + +### What is the goal of a HIP? + +There are several goals for the HIP process: + +1. Ensure community technical discussion of major changes to the Apache HertzBeat codebase. + +2. Provide clear and thorough design documentation of the proposed changes. Make sure every HertzBeat developer will have enough context to effectively perform a code review of the Pull Requests. + +3. Use the HIP document to serve as the baseline on which to create the documentation for the new feature. + +4. Have greater scrutiny to changes are affecting the public APIs (as defined below) to reduce chances of introducing breaking changes or APIs that are not expressing an ideal semantic. + +It is not a goal for HIP to add undue process or slow-down the development. + +### When is a HIP required? + +* Any new feature for HertzBeat (Example: New Monitor Protocol) +* Any change to the wire protocol APIs +* Any large code change that will touch multiple components +* Any change to the configuration + +### When is a HIP *not* required? + +* Bug-fixes +* Simple enhancements that won't affect the APIs or the semantic +* Small documentation changes +* Small website changes + +### Who can create a HIP? + +Any person willing to contribute to the Apache HertzBeat project is welcome to create a HIP. + +## How does the HIP process work? + +A HIP proposal can be in these states: +1. **DRAFT**: (Optional) This might be used for contributors to collaborate and to seek feedback on an incomplete version of the proposal. + +2. **DISCUSSION**: The proposal has been submitted to the community for feedback and approval. + +3. **ACCEPTED**: The proposal has been accepted by the HertzBeat project. + +4. **REJECTED**: The proposal has not been accepted by the HertzBeat project. + +5. **IMPLEMENTED**: The implementation of the proposed changes have been completed and everything has been merged. + +6. **RELEASED**: The proposed changes have been included in an official + Apache HertzBeat release. + + +The process works in the following way: + +1. Fork https://github.com/apache/HertzBeat repository (Using the fork button on GitHub). +2. Clone the repository, and on it, copy the file `hip/TEMPLATE.md` and name it `hip-xxx.md`. The number `xxx` should be the next sequential number after the last contributed HIP. You view the list of contributed HIPs (at any status) as a list of Pull Requests having a "HIP" label. Use the link [here](https://github.com/apache/HertzBeat/pulls?q=is%3Apr+label%3Ahip+) as shortcut. Review Comment: ```suggestion 2. Clone the repository, and on it, copy the file `hip/TEMPLATE.md` and name it `hip-xxx.md`. The number `xxx` should be the next sequential number after the last contributed HIP. You view the list of contributed HIPs (at any status) as a list of Pull Requests having a "HIP" label. Use the link [here](https://github.com/apache/hertzbeat/pulls?q=is%3Apr+label%3Ahip+) as shortcut. ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
