Putting in a plug for getting this fix out sooner than later. The memory growth doesn't trigger iOS memory warnings so a dev may be unaware it's happening. It does not appear as a leak in Instruments, but that's expected since it's not really a leak. In our app, it seems like the OS or the browser puts us in bad-app jail and queues up native calls.
Symptomatically, Xcode console output stops and calls through the dialogs plugin don't result in a dialog presentation--nothing at all happens. Non system events proceed normally so until there's a failed system level call a user will think the app is ok. As soon as the home button is pressed, Xcode console will barf out all of the queued console.log messages and when the app is relaunched (without force quit), the queued dialogs appear. All of them, one at a time.
For the benefit of google, Instruments shows unabated growth of the memory allocated to VM: JS garbage collector. My simple test method is to use setInterval to fire off a console.log message indicating the current time, and then watch the console either in Xcode itself or via the devices window in Xcode. At some point in time with 3.7.0, the console messages will stop arriving.
I have tested the fix on the following devices, watching both for the above symptoms and for the linear memory usage expansion signature (we make routine system calls in our app) in both Instruments and Xcode. I am satisfied (enough) that the fix is production worthy, we'll be shipping to Apple later today.
- iPhone 4S on 7.0.6
- iPhone 5, 5S and 6 on 8.1.3