Sunday, March 29, 2009

Camera Plus 2.1.1 in review

I just submitted version 2.1.1 of Camera Plus to Apple for review and (hopefully) approval. This new version fixes a critical bug with the Tap Anywhere to Shoot functionality that was introduced with version 2.1.

As some have noted, the Tap Anywhere to Shoot feature stops working when you discard an image (it works fine if you just keep saving images). I apologize for this bug—it shouldn't have come through and I wanted to give you a brief explanation as to how it came about.

Like many developers (at least, I hope), I keep all my work in a code-versioning repository. This makes it possible for me to keep track of the various versions of Camera Plus independently from each other—for example, I have an experimental version of CP ready to go when iPhone OS 3.0 is released—as well as keep an ongoing backup of the code.

Version management is, normally, a wonderful feature, but occasionally gives the developer a false sense of security. In this particular case, when I submitted version 2.1 to the store I created a copy of it in my repository so that I could continue working on CP and go back to what I had submitted to the App Store in case Apple discovered some bug.

Well, Apple didn't find any bug, but I did—and, therefore, I had to make changes to the original version I had submitted and resubmit my binary again. In the process, I copied a file in the wrong place and, thus, I introduced the Tap Anywhere bug.

Now, I use a battery of automated tests to check the basics of the application every time I submit it to the store. Certain operations, however, are difficult to perform in an automated fashion—Tap Anywhere is one of them—and, therefore, I also keep a checklist of manual tests that should be performed before publishing a revision of the app. The checklist includes tests for Tap Anywhere, but, evidently, the test coverage was not adequate—and didn't pick up the one particular use case that is causing the feature to fail.

Monday, March 16, 2009

Camera Plus 2.1 is on its way!

I'm happy to announce that Camera Plus 2.1 was submitted to the App Store for approval tonight. This version includes a number of bug fixes and small additions in response to the feedback that I have received since the introduction of CP2.0:
  • Fixed bugs that led to instability with the background save function
  • Added the possibility of making Tap Anywhere to work either on tap or release
  • Improved the tap area for the steady indicator
  • Settings are now saved as soon as changes are made, without the need to tap the "Save" button, which has been removed
  • Fixed a bug that was causing the level indicator to be reversed in certain orientations
  • Improved the tap area for the help and website links
  • Added review link
Apologies to all for the time it's taken for me to push this release. I've been rather busy, and had a few health issues that slowed me down. Hopefully, Apple will be able to review the new version and find it acceptable within a few days.