diff --git a/ContributionGuidelines.md b/ContributionGuidelines.md index cdd4345..199b39e 100644 --- a/ContributionGuidelines.md +++ b/ContributionGuidelines.md @@ -3,14 +3,14 @@ Contributions are welcome and encouraged, provided your code is of sufficient quality. Before submitting a pull request, please ensure your code adheres to the following requirements: 1. Licensed under MIT, BSD or compatible license, or dedicated to the public domain -1. KISS (Keep It Simple Stupid). Your script should have 1 job and do it well. Keep the User Interface clean and simple. Only include options that will benefit the majority of users. Trying to cram in every conceivable option is not only confusing, it clutters the script interface, and it makes the code more difficult to test and maintain as well. -1. Runs cleanly with no warnings +1. KISS (Keep It Simple Stupid). Your script should have 1 job and do it well. Keep the User Interface clean and simple. Only include options that will benefit the majority of users. Trying to cram in every conceivable option is not only confusing, it clutters the script interface and makes the code more difficult to test and maintain as well. +1. Runs cleanly with no errors or warnings 1. Encoding should be UTF-8/UTF-16 1. Uses 2-spaces for code blocks & indentation 1. Uses descriptive function and variable names in the **P**ascal**C**ase convention 1. Avoids the use of `Not` and uses positive conditionals wherever possible (e.g. `If,%foo%,Equal,0` instead of `If,Not,%foo%,Equal,1`) 1. Uses common sense when it comes to embedded files. **Do not embed files or licensed software you do not have permission to distribute**. Do not create .script "container files" that only contain attachments; if your running into performance issues with attachment size use a standalone .7z file instead. Where possible downloading the files and caching them is preferred. -1. Does not use section parameters (#1, #2 , #9, etc.) as temporary variables for storing values. If you need temporary variables use `SetLocal` and declare an actual variable. If you need more then 1 section parameter please use `GetParam` and assign each parameter to a variable, as this makes the code much easier to read. +1. Does not use section parameters (#1, #2 , #9, etc.) as temporary variables for storing values. If you need temporary variables use `SetLocal` and declare an actual variable. If you need more then 1 section parameter please use `GetParam` and assign each parameter to a variable. This makes the code much easier to read and debug. Your pull request should fully describe the functionality you are adding/removing or the problem you are solving. Regardless of whether your patch modifies one line or one thousand lines, you must describe what has prompted and/or motivated the change. @@ -33,6 +33,6 @@ Script files use semantic versioning in the form of `MAJOR.MINOR.PATCH.BUILD` eg |PATCH|Bugfixes, download url updates, etc.| |BUILD|Zero for release. May be incremented by the end user to track personal changes or for special builds.| -### Public Project Releases +### Project Releases The most current versions of individual scripts may be downloaded at any time from the master branch. Occasionally we will publish a release on github that bundles the current scripts with the PEBakery binaries. These released will be named by the date of the release in the form of `YYYY-MM-DD`. \ No newline at end of file