Filing an issue on JIRA
Cordova has as a goal to be relevant on mobile platforms, and thus we prioritize bugs that are reproducible on real devices over emulators. If you are filing an issue that is device-specific, please provide as much information about the hardware as possible!
When you go to Create an Issue, you will be presented with a dialog with a bunch of forms. The important ones to fill out are:
- Summary: provide a decent title for your issue!
Priority: generally keep it to the default of "Major", unless it's a crash, freeze, or something of the like. If you deem the issue as "minor", might be a good idea to change the priority to "minor" as well
- Due Date: this field is never used nor paid attention to, so don't even!
- Affects Versions: add any versions of Cordova that you experience the problem with.
- Fix Versions: this will be set by contributors and committers once the issue is resolved. This field tells you in what version of Cordova the issue was fixed.
- Assignee: please leave this at automatic.
- Environment: if you have any additional details about your machine's environment (OS, version, etc.), please provide it here.
- Description: be as in-depth as you need to be. If you are unsure if you should provide code, you probably should provide code. Remember, any committer or contributor tackling your issue needs to a) reproduce the problem, b) write a test for it, c) write a patch, and d) check that the test passes. The more information you can provide, the better. If you want to take it to a next level, provide a test, screenshots, or any other additional information that can make going through a), b), c) and d) easier.
Filing an API Addition or New Feature
The spirit of the Cordova project is platform-agnostic. As such, when introducing new features, it is important to consider all platforms that are part of the Cordova family. Understandably, not all contributors have the time, resources or equipment to effectively test and implement new features across the several+ platforms Cordova supports. The middle ground, then, is to keep track of which features have landed in which platforms. The Cordova project does so via the issue tracker. JIRA allows for filing issues with sub-issues. Thus, to track a complex feature such as this, file a top-level issue and create sub-tasks for:
- Test(s) (mobile-spec)
- cordova-cli integration, if applicable
- All platforms related to the issue (try to include as many as possible), with the core ones being:
- Windows Phone 7
- Windows Phone 8
- Windows 8
- Optionally, "less" mainstream platforms such as Bada, Tizen, QT, and webOS.