[ALOY-863] Mobileweb 3.2.0 breaks Alloy apps with "'apiName' is read only"
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | Critical |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2013-10-26T03:09:49.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Alloy 1.3.0, 2013 Sprint 22 |
Components | Runtime |
Labels | n/a |
Reporter | Tony Lukasavage |
Assignee | Tony Lukasavage |
Created | 2013-10-25T21:05:50.000+0000 |
Updated | 2013-12-10T00:38:14.000+0000 |
Description
problem
To facilitate dynamic styling to this point, Alloy was required to shim the non-existent "apiName" property on Titanium proxies in order to automatically apply appropriate styles. In TiSDK 3.2.0+ this property has been implemented natively. It works fine in Android and iOS, but unfortunately in Mobileweb it has been explicitly implemented (not just documented) as a readonly property, I'm assuming via:
Object.defineProperty(proxy, "apiName", {writable:false});
This unfortunately causes an unavoidable runtime error in any Alloy app that would make use of dynamic styling, and perhaps even some that don't.
error
See attached screenshottest case
Run the following test app for alloy for mobileweb and you will get this error: https://github.com/appcelerator/alloy/tree/master/test/apps/advanced/require_childrenAttachments
File | Date | Size |
---|---|---|
Screen Shot 2013-10-25 at 5.04.19 PM.png | 2013-10-25T21:09:26.000+0000 | 24159 |