Did you know that Titanium 3.4.0.GA and Alloy 1.5.0 fixed 335 bugs in total? I bet some of them were affecting your apps as well! And being the expert developer you are, you probably found a temporary workaround. So what do you do when a new release comes out? Do you go through all of the fixed bugs and try to remember if it was one you dealt with?
FIXME
I hope the answer to that last question was no. When I run into a bug I take the following steps:
- First I search JIRA to see if it is a known bug.
- If I can’t find the bug, I create a simple test case that reproduces the bug and report it.
- I implement a workaround so I can finish the app.
- Lastly, I add a comment to the workaround code like this:
1 2 3 4 5 |
var view = Ti.UI.createView({ // FIXME https://jira.appcelerator.org/browse/TIMOB-15099 borderRadius: OS_IOS ? 5 : require('alloy/measurement').dpToPX(5) }); |
Manual: Regular expressions
For each new release, I can now go the other way around and for each JIRA issue I refer to in my code check if it has been fixed so I can remove the workaround. Until now I did this manually by doing a regular expression search in Sublimetext.
Automatic: Tickets
Like very developer I’m lazy, so I created tickets, an Node.js module and CLI that will search (any or specific) code for references to issues of (any or specific) JIRA projects and then queries one or more JIRA installs for their status.
Highly adjustable
The default settings search for TIMOB, TC and ALOY tickets on the Appcelerator JIRA, but it can be set to search for any project on any or even multiple JIRA installs.
Screencast
See how it works:
Get it
Install tickets via NPM:
1 |
sudo npm install -g tickets |
Type tickets -h
for an overview of the options and consult the README for an example how to use tickets as a module.
Be lazy… Code Strong!