Squirrel 0.9.3 & iCloud

The latest 0.9.3 update of Squirrel contains some changes in the way iCloud databases are handled. As a result, some users may have found that their database seemed to have been deleted. This post contains explanations about why this happens and how to restore your database.

iCloud in Mavericks

Starting with Mavericks, opening an iCloud enabled database is instantaneous, whereas it could take up to a few minutes before. The connection to iCloud happens in the background and data appears as it becomes available. This has the advantage to let you work while the database is being downloaded and reconstructed.

Because of this change, Squirrel 0.9.3 now stores its iCloud database in a different location, in order not to interfere with previous versions of Squirrel on the same computer. Hence, at first launch, the database will be loaded from iCloud in the background.

When downloading from iCloud, your database is being retreived as multiple transactions logs which represent successive edits you've performed in the past. Those logs are successibely being applied to a base store to get the latest version of your database. This can take up to a few minutes so it is important you give some time to Squirrel for this.

Problems can happen when those transaction logs are corrupted. If a corrupted transaction log is generated, the sync can stop accross all devices and databases cannot be retrieved from iCloud anymore. This is an issue we have been having for months, as iCloud is directly managed by OS X and iOS. Those corruption bugs rely in the system and we are dependent on Apple to fix them. That said, the stability of iCloud has considerably improved over the past months.

How to retrieve a database

If your database never gets downloaded and reconstructed from iCloud, here is how to retrieve it:

  • Go to the Finder, and select "Go" > "Go to folder"…
  • Copy the following URL: ~/Library/Mobile Documents/KGK6E7FS65~com~squirrelapp~squirrelmac/Documents/LocalData.nosync

You should see a file with a name composed by a single identifier followed by the .squirrel extenstion. If you have more than one file, choose the file with the lastest modification date.

  • Copy this file to your desktop, and rename it to "Database.squirrelbackup".
  • Launch Squirrel, and select File > Database > Restore…
  • Select the backup file on your desktop and restore it

This database will then be sent to iCloud, and will be available to all your devices.

Squirrel 0.9.1

Squirrel 0.9.1 is now available on the Mac App Store. It mainly contains user requested feature improvements. Particularly, we've added filter buttons to the transactions manager. This allows you for instance to display only unreconciled transactions, or entries of the current month.

This update also contains a workaround to an iCloud issue, where a database could be assigned the wrong iCloud account metadata. This problem would prevent the database from being used with iCloud, as it would be incorrectly considered as being used with the wrong iCloud account.

Here is the full changelog:

  • Added Dutch localization.
  • Added two new buttons to filter transactions according to their reconciliation state or date. This allows you to only display unreconciled transactions, or transactions of the current month for instance.
  • Added a menu item to skip scheduled transactions occurrences via the contextual menu.
  • Added a cmd-F shortcut to search for transactions.
  • Pie chart legends are now shown even when the mouse is not over the graph.
  • Transactions can now be selected via the history graph.
  • The welcome screen is now correctly laid out in all the languages.
  • New layout of the importer window.
  • Month names are now properly truncated in the history graph.
  • The notes text field now has a scroll bar.
  • The OFX importer now handles different encodings appropriately.
  • The toolbar buttons in the net banking browser are now working properly.
  • Searching transactions by amount doesn't take the sign of the transaction into account anymore.
  • Changing the date of a transaction belonging to a transfer now also changes the date of its sibling transaction.
  • Fixed an issue where transactions could be edited via the reports.
  • Fixed layout issue in the reports pie charts.
  • Fixed an issue where the amount of a transaction could unexpectedly change.
  • Fixed localization errors in German.

Upgrade discount

A bit more than one year ago, Squirrel transitioned to a Mac App Store only version. Since then, we have been offering free upgrades to registered users via promotional codes so they could continue to get updates.

This method has however a serious limitation: the number of codes provided by Apple is set to a maximum of 50 per version released on the store. Our idea was to provide as many minor updates as possible to migrate the largest number of users. And we have been quite successful since we've been able to allow around 600 users to upgrade.

However, with more people now willing to migrate with the recent release of the iCloud update, and the increasing review times on the Mac App Store, this method is showing its limits. That's why we are now putting Squirrel on sale, to allow the remaining users to get the Mac App Store version for a reasonable upgrade price.

The Mac App Store has many advantages over traditional distribution:

  • your purchases are tied to your Apple ID, making it easier to reinstall owned apps, and install them on your other computers
  • updates are all centralized, and OS X automatically notifies you when a new one is available
  • iCloud sync is only available to App Store apps

During November, Squirrel is available at the special price of $7.99, or €6.99.

As the Mac App Store doesn't allow paid upgrades, we have to set the same price for everyone. We believe those $7.99 are a good compromise, allowing both upgrading and new users to support the development of Squirrel.

iCloud sync update

Squirrel 0.9 is now available with the long awaited iCloud support. Syncing is now as simple as activating a switch in the preferences of the applications. The synchronization is continuous, with changes automatically sent to iCloud and available within seconds on all the other devices.

As Squirrel is getting closer to 1.0, we've added new languages. Squirrel now speaks Italian, Spanish and Swedish.

We have also improved some features of Squirrel on the Mac:

  • the history graph now displays months names
  • selecting different time frames in reports is now easier

We hope you'll like these updates, both available on the App Stores!

New Trends Reporting Tool

A new reporting tool has been introduced in Squirrel 0.8.16: Trends. This new mode will show your expenses or income on a daily, weekly, monthly or yearly basis. This easily lets you know the evolution of your spendings, after selecting a category or tag.

Trends in Squirrel 0.8.16