Bug reporting
All bug reports should be made on the relevant tracker. Note that suggestions may not be appropriate on the tracker, please see Suggestions for more information.
Currently multiple trackers are in use for bug reporting:
If you are having a problem with the website or Wiki these issues should be posted on the Website tracker as they are usually unrelated to the engine or compiler.
Which one?
ENIGMA is made up of multiple projects managed by different people. To make sure that your bug gets addressed quickly and not bounced around too much, it helps to identify which project your bug affects and report it to the correct tracker. This can be as simple as understanding the difference between LateralGM, ENIGMA, and the Plugin. As a rule of thumb, LateralGM is the graphical interface, the Plugin is anything involving the ENIGMA menu, and ENIGMA uses terminal output or Enigma Progress Console output or the running game itself.
If you are experiencing an error or undesirable terminal output, there are a few quick ways to differentiate:
- An Exception can be assumed to be a plugin bug (or possibly an LGM bug), and typically looks like:
Unhandled exception: java.lang.NullPointerException: lorem ipsum dolor sit amet at lorem ipsum dolor sit amet (classpath:321) at lorem ipsum dolor sit amet (classpath:12)
- Otherwise it can generally be assumed to be an ENIGMA problem.
To easily differentiate between an LGM and a Plugin bug, simply copy lateralgm.jar to a location by itself (without ENIGMA), start it in that new location, and try to reproduce the bug. If you can, it is definitely a LateralGM bug.
If you can't decide, feel free to ask on the forums or IRC. You could post your bug report on any tracker, but if it's placed on the wrong tracker, the devs will have to take some extra steps to close your bug and repost it on the correct tracker.
Reporting correctly
If you have received an error of any kind then please copy and post the entire terminal output, pastebin can be used to paste any text if it is long. Other things that are also always helpful to post are: the platform you are using, the enigma revision you are using (if you know it) and a description of the issue so it is actually understandable. If you can reproduce the issue reliably, describing the steps to do so is also very helpful. Before posting please preferably try and look to see if the bug has already been posted previously. Also note some things should not be posted on the trackers such as missing functions or variables since ENIGMA is still in development these obviously just haven't been written yet, suggestions should also not be posted on the trackers these should be made on the wiki in the relevant place.
It may also be handy for you to check the tracker again after a while to see if a developer is requiring any further information about what the bug is. If you think the bug may require a lot of discussion or in most cases if you want the bug to be solved faster it is also advisable that you go onto the IRC and mention the bug you have reported. If you think you have the solution to the problem you should feel free to mention it or send us a pull request.
Following up
A bug report has an eventful life, documented on Ticket procedure, and to ensure your report has the most fulfilling life, follow up with your report. A lot of reports we get we will have questions on, so we'll try and ask the reporter (you). If you aren't following up on your report, those questions may go unanswered, and your bug report may very well die a premature death. You shouldn't have to follow up for very long - we make sure to get as much information as we need right up front so that you don't have to worry about your bug report anymore after that, and can know that it is leading a normal life and will hopefully get resolved soon.
If no activity is happening on the bug, don't be afraid to ask what's up, or try to provide more information that may help us figure it out sooner. Just be aware, we are volunteers, and we're always short on hands, so try not to get upset, we're doing all we can! Believe it or not, we care deeply about your bug too, and we would love to see it fixed as soon as possible.