Uploaded image for project: 'Alloy'
  1. Alloy
  2. ALOY-863

Mobileweb 3.2.0 breaks Alloy apps with "'apiName' is read only"

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Alloy 1.3.0, 2013 Sprint 22
    • Component/s: Runtime
    • Labels:
      None
    • Environment:

      TiSDK 3.2.0.v20131024102550
      Alloy 1.3.0
      Chrome 30.0.1599.101

      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 screenshot

      test 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_children

        Attachments

          Activity

            People

            • Assignee:
              tlukasavage Tony Lukasavage
              Reporter:
              tlukasavage Tony Lukasavage
            • Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Backbone Issue Sync

                • Backbone Issue Sync is enabled for your project, but we do not have any synchronization info for this issue.

                  Git Integration