[TIMOB-27099] iOS Debug: Error in console on variable view refresh during debug
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | Medium |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2019-06-12T22:59:49.000+0000 |
Affected Version/s | Release 8.0.0 |
Fix Version/s | Release 8.0.2 |
Components | iOS |
Labels | n/a |
Reporter | Satyam Sekhri |
Assignee | Christopher Williams |
Created | 2019-05-17T22:33:44.000+0000 |
Updated | 2019-06-12T22:59:53.000+0000 |
Description
When stepping through during debug an error is logged in console as the variable view refreshes on each step.
The error is shown only during debug on iOS with 8.1 Ti SDK.
If we close the variable window the error would not be shown.
Steps to reproduce:
1. Create a classic/alloy project
2. Add some breakpoints
3. Debug on iOS simulator
4. When the debugger suspends on a breakpoint click on Step in.
Actual Result:
An error is shown as soon as the debugger suspends for the first time. After step in the same error is shown in console again.
The error shown is:
[ERROR] : Blob.file property requested but the Filesystem API was never requested.
Expected Result:
No error should be shown
So I think this is an SDK issue, not a Studio one. I'm not 100% sure of the fix here. Maybe just that the change in proxies on iOS that I did made the file property enumerable when it wasn't before so now it's surfacing the "error" whereas before it didn't? It'd be good to know the exact codepath this is happening to get an idea, but my best guess here is that somewhere down a chain of objects there's a blob property (maybe off a view?) and that blob is a non-file based blob so the file property should return null - and that the error/warning log int he SDK is in fact wrong/expected and benign.
This is actually just a very old error message that should have been removed during the move to TitaniumKit in SDK 8.0. It was guarded by a macro define for when you attempted to get a blob's file property without having the filesystem api being used as well, but that macro can't be used in TitaniumKit, and the message is now displaying when it shouldn't at all.
master: https://github.com/appcelerator/titanium_mobile/pull/10906 8_0_X: https://github.com/appcelerator/titanium_mobile/pull/10907
FR Passed. No errors logged during debug.
merged to 8_0_X, re-running build on master and then will merge
PR merged to master. [~cwilliams] please add backport PR for 8_1_X
cherry-picked commit b8e5cd24b5c362742420e331644fd4a00c4d8ee2 to 8_1_X branch
Verified on: Mac OS 10.14.3 Ti SDK: 8.0.2.v20190605070127, 8.2.0.v20190606083608 Appc CLI: 7.0.11 Node: 10.13.0 JDK: 1.8.0_144 Studio: 5.2.0.201906102148 XCode: 10.2.1 Not closing the ticket as need to verify the issue on the SDK build from 8_1_X branch as well which is currently failing to build on Jenkins.
Verified on: Mac OS 10.14.3 Ti SDK: 8.0.2.v20190605070127, 8.1.0.v20190611140242, 8.2.0.v20190606083608 Appc CLI: 7.0.11 Node: 10.13.0 JDK: 1.8.0_144 Studio: 5.2.0.201906102148 XCode: 10.2.1
Reopening to update title