diff --git a/docs/Beta_Test_Guide.md b/docs/Beta_Test_Guide.md index e8180da42..aa1a0734f 100644 --- a/docs/Beta_Test_Guide.md +++ b/docs/Beta_Test_Guide.md @@ -1,12 +1,13 @@ *** UNDER CONSTRUCTION *** You are interrested in testing the bleeding edge functionnalities and features added by the developers every day, and you are not afraid of bug that will inevitably crop up from time to time ? Then this page is for you ! You are going to learn : + 1. How to set up your development environment 2. How is the Moose repository organized 3. How Moose is loaded in the missions and how this can make your workflow more efficient 4. How to use tools to process your .miz files efficiently 5. How Moose's release cycle work -6. How to report a bug +6. How the Issue Tracker is managed This might be a bit daunting at first, but the rewards in term of simplified workflow and direct access to new features is well worth the effort! If you have any problem during the setup or at any other point, don't hesitate to ask the [community](Communities) for help! @@ -19,7 +20,7 @@ This guide assumes that you already setup your development environment, like a " ### 1.1.1) Install GITHUB desktop Install [GITHUB](https://desktop.github.com) desktop. -Since the MOOSE code is evolving very rapidely between Releases, we store the MOOSE code on GitHub, and we use the GitHUb to sync it between the remote repository (the "origin") and your local MOOSE repository. That way, only one click is needed to update to the latest version of GitHub +Since the MOOSE code is evolving very rapidely between Releases, we store the MOOSE code on GitHub, and we use the GitHUb to sync it between the remote repository (the "origin") and your local MOOSE repository. That way, only one click is needed to update to the latest version of GitHub. ### 1.1.2) Link the MOOSE repository @@ -39,6 +40,7 @@ Install [7-Zip](http://www.7-zip.org/) if you don't already have it. It is a fre Because DCS is going to load Moose dynamically (more on that later), we need to do some (slightly) advanced stuff to finish the setup of your own development enviroment. Thankfully we wrote a program to do all of it automatically for you ! Browse to your local MOOSE repository and run `Moose Development Environment Setup\MooseDevelopmentEnvironmentSetup.exe` **as an administrator** (Select the file > Right Click > Run as administrator). + * The Splash screen opens, click ok * Enter (or browse for) the 3 paths asked and click ok. Don't worry about the trailing backslashs. * Let the program do it's magic ! @@ -46,9 +48,10 @@ Browse to your local MOOSE repository and run `Moose Development Environment Set If you encounter a problem during this installation, please contact the [community](Communities), with the mdes.log file which was generated next to the executable file. We'll try our best to help you! -**Wait, I'm not running a program randomly found on the internet like that. I don't even know what it does, and why does it have to be run as an administartor anyway?!** +_Wait, I'm not running a program randomly found on the internet like that. I don't even know what it does, and why does it have to be run as an administartor anyway?!_ And you are right. But the explanation is a bit technical, your are warned! The software will do the following: + * Create a hard link between your local repository and `DCSWorld/Scripts/` * Add 7-Zip to your PATH environment variable (this explains the restart requirement) * Copy a precompiled version of Lua 5.1 to your `Program Files` (this explains the administrator priviledge requirement) @@ -80,9 +83,64 @@ Note that if you want to release your missions to end users, you will need to ma # 4) Tools to help you manage your .miz files +***TODO : Add a list of the .miz files tools a briefly explain their usages*** + # 5) The release cycle -To ensure that the next Release of Moose is as bug-free and feature rich as possible, every developer respects a +To ensure that the next Release of Moose is as bug-free and feature rich as possible, every Moose developer respects a release cycle. +![](Installation/MOOSE_Release_Cycle.JPG) -# 6) How to report a bug ? +If you are not familiar with Git, this might be a bit criptic, but the idea behind it is simple : +* Most of the time, developers write code, be it features or bug fixes, and the testers report bugs +* When a good amount of features are added to the last release, FlightControl decides to enter in a "Feature Freeze" period. No new features are added (but they can still be worked on), and every bug must be eliminated. That is the period in which bug reports are paramount! +* Now that this version of Moose is stable, we can release it for every mission designer, and go back to the start for the next cycle. + + +# 6) The Issue Tracker + +## 6.1) How to report a bug ? + +If you encounter what seem to be a bug, which is bound to happen sooner or later, since you are testing the brand new untested features of Moose, You will want to report it so that it can be solved by the devloppers. We use the standard GitHub [Issue Tracker](https://github.com/FlightControl-Master/MOOSE/issues). Here is the process to create a new issue : + +* First, do a quick search on the issue tracker to see if someone hasn't already reported your issue. If it is the case, comment on this issue that you are able to reproduce it, and add the informations listed below. +* Create a new issue. +* Add the information listed below +* Add the lablel possible bug +* Thank you for helping us make Moose better! + +**_Informations we need to solve the issue_** + +* A descriptive title, not too long if possible. For exemple, `CTD when calling SPAWN:New()` is a good title. `I found a bug in MOOSE` is not. +* Explain what you are trying to do, as well as how you expect Moose to be behave. +* Which version of Moose and DCS World you are using. This can be found in `dcs.log` +* Did the code you are using worked in previous version of either DCS World or Moose? Which one? +* The code or portion of code that triggered the problem Please put **_```lua_** one line before your code, and **_```_** at the end, to make your code readable. +* The relevant part of `dcs.log`. Please put **_```_** before and after your copy pasted log to make it readable + +![Example of a great bug report](Installation/GitHub_Issue_example.JPG) + +## 6.2) How to add a feature request ? + +* A descriptive title, not too long if possible. +* Explain in detail what you want Moose to do in which circonstance. +* If possible, add some pseudocode or a high level design implementation to better explain how your feature would work. +* Add the lablel enhancment + +## 6.3) The life and death of an issue + +**_What is going to happen next to my issue?_** + +* A contributor will set some labels and a milestone to your issue, in order to classify it. +* You might be asked to clarify some part of your issue, please answer as swiftly as possible. +* You might be asked to sync your local repository and try again, if we think we fixed your issue. If we can confirm it to be fixed the issue is closed. + +**_Wait, my issue was closed, and it never got fixed ! / Nobody is paying attention to it !_** + +This can happen for multiple reasons : + +* Your issue is a duplicate. (There is alredy a issue in our issue tracker for this) +* Nobody was able to reproduce your bug, so we think it's a problem on your end +* Your feature request asks for a feature that already exists +* We think your feature request is a really good idea, but it's a huge tasked. We therefore postponed it to the Realease after the next one, or to a later Release. +* We are working haard and simply don't have the time. We will get around to check your issue, please be patient! \ No newline at end of file diff --git a/docs/Installation/GitHub_Issue_example.JPG b/docs/Installation/GitHub_Issue_example.JPG new file mode 100644 index 000000000..4107ca45a Binary files /dev/null and b/docs/Installation/GitHub_Issue_example.JPG differ diff --git a/docs/Installation/MOOSE_Release_Cycle.JPG b/docs/Installation/MOOSE_Release_Cycle.JPG new file mode 100644 index 000000000..29e41a618 Binary files /dev/null and b/docs/Installation/MOOSE_Release_Cycle.JPG differ