From abc36a013c42fea2bd49fcac3a3a0b74c17888aa Mon Sep 17 00:00:00 2001 From: PeacefulPotato <57071692+PeacefulPotato@users.noreply.github.com> Date: Fri, 4 Dec 2020 10:18:02 -0500 Subject: [PATCH] Create CONTRIBUTING.md --- CONTRIBUTING.md | 74 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..4d748cc --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,74 @@ +# Issues +There are three types of issues: Bugs, Questions and Enhcanements. +## Bugs +Bugs are things that are supposed to work but don't. +Some examples include: +* An error or exception +* A flaw in a security feature +* Encoded messages not decoding properly +Non examples include: +* A security issue not yet advertised (such as adding RSA encrytion) +* Adding something new, instead of fixing something old +* Asking a question about something you don't get +If you find a bug, label it with the "bugs" tag, as well as the "security" tag if the bug relates to security. Then, be sure to label it as follows: +``` +**Issue Description** +Description of your issue +**System Details** +* Interpreter version X (i.e. repl.it or IDLE version 2020-09). If using a command prompt, say the name of the program you enter, like "python3", and the version, using --version. +* HOP Encode/Decode (which program is malfunctioning) +**Steps to reproduce** +Make sure that the steps can be easily followed. +1. Do step 1 +2. Do step 2 +3. Do step 3 +etc. +**Expected behavior** +What is supposed to happen +**Actual behavior** +What actually happened +**Exception** +If you got an exception, list it below. +`Exception` +**Screenshots** +Any screenshots you deem necessary. Optional, but helpful. +``` +## Questions +Questions are things that you are unsure about. When in doubt, mark it as a question. If you have a question, label it in the following manner: +``` +**Question** +Make sure you are clear and concise. Clear means the average person can understand what you want to know, and concise means the question isn't too long. +**System Details** +* Interpreter version X (i.e. repl.it or IDLE version 2020-09). If using a command prompt, say the name of the program you enter, like "python3", and the version, using --version. +* HOP Encode/Decode (which program you are confused about) +**Screenshots** +Any screenshots you deem necessary. Optional, but helpful. +``` +## Enhancements +Enhancements are things you want to improve. Be sure to list it both as an enhancement and label it based on what type of enhancement it is: +Security: This is an improvement to security you would like to see, such as RSA encryption. +QOL: This is an improvement to quality of life you would like to see, such as more lanugages as codes. If in doubt, mark it as QOL. +Documentation: This is an improvement to documentation you would like to see. +Be sure to label the enhancement as follows: +``` +**Program to Enhance** +What you want to enhance. Examples include HOP Encode and HOP Decode. +**Description of Enhancement** +A clear and concise descrpition of how you want to enhance the program. +**Approach** +Possible ways to accomplish this enhancement. +**Screenshots** +Any screenshots you deem necessary. Optional, but helpful. +``` +# Pull Requests +Pull requests are when you want to change the code yourself. Please link to any relavent issues by clicking on the gear next to "linked issues". +Additionally, add this to the milestone the issues are linked to, and label it based on what you are trying to solve (Bug or Enhancement and what type if necessary). +They should be formatted as follows: +``` +**Changes** +A bulleted list of the changes you made. Will be used in release notes. +**Reasoning** +Why you want to make these changes. Should be clear and concise. +**Drawback Handling** +Potential drawbacks in this change and how you addressed them. +```