{ "id": "160129", "key": "TIMOB-23365", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "17706", "name": "Release 5.4.0", "archived": false, "released": true, "releaseDate": "2016-08-11" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2016-06-03T21:05:18.000+0000", "created": "2016-05-09T20:56:54.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "17706", "name": "Release 5.4.0", "archived": false, "released": true, "releaseDate": "2016-08-11" } ], "issuelinks": [ { "id": "51934", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "159582", "key": "TIMOB-23216", "fields": { "summary": "Windows: Data binding: returning false displays false", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "Low", "id": "4" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "51946", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "126436", "key": "ALOY-1355", "fields": { "summary": "Alloy doesn't cast \"true\"/\"false\" attributes as booleans", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Low", "id": "4" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "51947", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "159167", "key": "ALOY-1480", "fields": { "summary": "Bug/Regression: Data binding always returns string values", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2016-07-04T18:17:07.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "12642", "name": "Windows", "description": "Windows authoring support" } ], "description": "h2. Problem\r\n\r\nIn iOS & Android applications we bind to the visible tag on tables, table view rows, labels, buttons, textfields, textareas, views etc. This does not work on Windows 8.1 or Windows 10. When attempting to bind to the visible tag the items always show. \r\n\r\nh2. Test case\r\n\r\nExample code is attached. Will output a table as displayed below:\r\n!http://i.imgur.com/dtKSrK6.png!\r\n\r\nh2. Discussions\r\n\r\nI would expect the same functionality as iOS & Android on Windows.\r\n \r\n\r\n\r\n", "attachment": [ { "id": "59178", "filename": "exampleCollection.js", "author": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "created": "2016-05-10T14:06:34.000+0000", "size": 864, "mimeType": "application/x-javascript" }, { "id": "59179", "filename": "index.js", "author": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "created": "2016-05-10T14:06:25.000+0000", "size": 2441, "mimeType": "application/x-javascript" }, { "id": "59177", "filename": "index.xml", "author": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "created": "2016-05-10T14:06:41.000+0000", "size": 934, "mimeType": "text/xml" } ], "flagged": false, "summary": "Windows: Alloy, Unable to Bind to Visible Tag on Windows 8.1 & Windows 10", "creator": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "environment": "Ti: 5.3.0.v20160509143032 \r\nWindows 10 Pro Environment\r\nBuilding for Windows 8.1 & 10", "closedSprints": [ { "id": 631, "state": "closed", "name": "2016 Sprint 11 SDK", "startDate": "2016-05-21T00:06:10.029Z", "endDate": "2016-06-04T00:06:00.000Z", "completeDate": "2016-06-06T07:30:39.854Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "385239", "author": { "name": "nsalahin", "key": "nsalahin", "displayName": "Nazmus Salahin", "active": true, "timeZone": "Asia/Dhaka" }, "body": "Hello [~kdclaw3@gmail.com],\r\n\r\nThanks for reporting. It will be appreciated if you provide full test code for reproducing this issue. We will recognize this as bug when we are able to reproduce this.\r\n\r\nThanks in advance", "updateAuthor": { "name": "nsalahin", "key": "nsalahin", "displayName": "Nazmus Salahin", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2016-05-10T05:21:49.000+0000", "updated": "2016-05-10T05:21:49.000+0000" }, { "id": "385282", "author": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "body": "@nsalahin Full code to reproduce the bug is attached.", "updateAuthor": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "created": "2016-05-10T14:10:12.000+0000", "updated": "2016-05-10T14:13:12.000+0000" }, { "id": "385369", "author": { "name": "nsalahin", "key": "nsalahin", "displayName": "Nazmus Salahin", "active": true, "timeZone": "Asia/Dhaka" }, "body": "Thanks [~kdclaw3@gmail.com]. We really appreciate your contribution.", "updateAuthor": { "name": "nsalahin", "key": "nsalahin", "displayName": "Nazmus Salahin", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2016-05-11T05:25:41.000+0000", "updated": "2016-05-11T05:25:41.000+0000" }, { "id": "385382", "author": { "name": "nsalahin", "key": "nsalahin", "displayName": "Nazmus Salahin", "active": true, "timeZone": "Asia/Dhaka" }, "body": "Hello,\r\nI am able to reproduce this issue with given code and given step.\r\n\r\n*Steps:*\r\n1. Create a default alloy project for windows phone.\r\n2. Replace index.xml and index.js file with given one. \r\n3. Paste exmapleCollection.js file in models folder.\r\n4. Build and run the app.\r\n\r\nFor an empty index.tss file following screen is produced.\r\n[Screenshot|https://i.imgsafe.org/758b5fe.png]\r\n\r\nThanks\r\n\r\n*Environment*:\r\n\r\n*OS :* Microsoft Windows 8.1 Enterprise N\r\n*Device info:* Microsoft Lumia 640 (Windows Phone 8.1)\r\n*Node.js Version:* 0.12.7\r\n*npm Version:* 2.11.3\r\n*Titanium SDKs:* 5.4.0.v20160429102159\r\n*Java Development Kit Version:* 1.8.0_73\r\n*Titanium CLI Version:* 5.0.5\r\n*Appcelerator CLI Version:* 5.2.2\r\n*Appcelerator Studio:* 4.5.0", "updateAuthor": { "name": "nsalahin", "key": "nsalahin", "displayName": "Nazmus Salahin", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2016-05-11T09:26:13.000+0000", "updated": "2016-05-11T09:26:13.000+0000" }, { "id": "387431", "author": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "body": "Can we get a status on this issue. This is holding us up from going live with windows.\r\n", "updateAuthor": { "name": "kdclaw3@gmail.com", "key": "kdclaw3@gmail.com", "displayName": "Dee Clawson", "active": true, "timeZone": "America/New_York" }, "created": "2016-06-02T17:29:21.000+0000", "updated": "2016-06-02T17:29:21.000+0000" }, { "id": "387442", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "Gary can you take a quick look to get an idea of the scope of this fix? I can't tell quickly if this is a Windows SDK issue, or an Alloy issue, or what.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-06-02T18:46:25.000+0000", "updated": "2016-06-02T18:46:25.000+0000" }, { "id": "387445", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "[~kdclaw3@gmail.com] What version of Alloy are you using?\r\n\r\n[~fokkezb] I see that alloy's data binding was refactored for 1.9.0. Any ideas on where to start looking for who to fix this? Not sure why it'd be specific to Windows...", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-06-02T18:58:56.000+0000", "updated": "2016-06-02T18:58:56.000+0000" }, { "id": "387515", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I've taken a look, there seems to be a problem with the way the boolean value is being interpreted. The JSValue interprets it as a string, this means casting the JSValue to a boolean always returns {{true}}. This is also why the assert returns a warning.\r\n\r\n{code}\r\n[WARN] TitaniumKit\\src\\UI\\View.cpp:825: argument.IsBoolean()\r\n{code}\r\n\r\nI'll take a look into why this is happening.", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-06-03T15:03:00.000+0000", "updated": "2016-06-03T15:03:23.000+0000" }, { "id": "387519", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "Sounds like the same root issue as TIMOB-23216, which Fokke linked to ALOY-1355 and ALOY-1480", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-06-03T16:18:49.000+0000", "updated": "2016-06-03T16:20:13.000+0000" }, { "id": "387520", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR: https://github.com/appcelerator/HAL/pull/62", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-06-03T16:23:39.000+0000", "updated": "2016-06-03T16:23:39.000+0000" }, { "id": "387521", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "I think that is the wrong solution. Javascript has some surprising behavior around coercing a String to a Boolean, where \"false\" actually becomes true.\r\n\r\nI think the root cause may have been bugs in Alloy itself where they were turning booleans into strings. What version of Alloy are you guys using? This should be fixed in Alloy 1.9.0 according to the linked tickets.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2016-06-03T16:29:40.000+0000", "updated": "2016-06-03T16:29:40.000+0000" }, { "id": "387523", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I'm using Alloy 1.8.5, I will try Alloy 1.9.0.", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-06-03T16:44:46.000+0000", "updated": "2016-06-03T16:44:46.000+0000" }, { "id": "387528", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "*UPDATE*\r\n[~cwilliams] Re-tried using Alloy 1.9.0, the issue has been fixed!\r\n\r\nHowever, Android re-interprets boolean strings \"true\" and \"false\" as their boolean value. I have yet to test this on iOS.\r\n\r\n{code}\r\nvar win = Ti.UI.createWindow({ backgroundColor: 'white' }),\r\n btn = Ti.UI.createButton({\r\n backgroundColor: 'red',\r\n title: 'this should be visible',\r\n visible: \"false\"\r\n });\r\nwin.add(btn);\r\nwin.open();\r\n{code}", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-06-03T17:23:16.000+0000", "updated": "2016-06-03T20:52:04.000+0000" }, { "id": "387549", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Fixed by Alloy 1.9.0 - https://github.com/appcelerator/alloy/pull/780\r\n\r\nI will mark this ticket as resolved.", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-06-03T21:03:05.000+0000", "updated": "2016-06-03T21:03:05.000+0000" }, { "id": "389899", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Verified using:\r\n\r\nWindows 10 Pro\r\nTi SDK: 5.4.0.v20160704082523\r\nAppc NPM: 4.2.7-2 \r\nAppc CLI: 5.4.0-25\r\nAppc Studio: 4.7.0.201606220541\r\n\r\nUsing the code example provided the output is as expected and matches iOS and Android.\r\n\r\nClosing ticket", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2016-07-04T18:17:02.000+0000", "updated": "2016-07-04T18:17:02.000+0000" } ], "maxResults": 16, "total": 16, "startAt": 0 } } }