{ "id": "131193", "key": "ALOY-1038", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "11113", "key": "ALOY", "name": "Alloy", "projectCategory": { "id": "10400", "description": "Tools for developing applications", "name": "Tooling" } }, "fixVersions": [ { "id": "15758", "description": "Alloy 1.4.0", "name": "Alloy 1.4.0", "archived": false, "released": true, "releaseDate": "2014-07-17" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2014-06-05T00:42:14.000+0000", "created": "2014-06-03T19:39:38.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "qe-3.3.0", "qe-testadded", "regression" ], "versions": [ { "id": "15758", "description": "Alloy 1.4.0", "name": "Alloy 1.4.0", "archived": false, "released": true, "releaseDate": "2014-07-17" } ], "issuelinks": [], "assignee": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "updated": "2014-06-06T21:57:43.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": "13603", "name": "Styling", "description": "TSS, dynamic styling, styling API" }, { "id": "12326", "name": "XML", "description": "View XML and parsing" } ], "description": "h5. Problem description\r\nOn Android, using a conditional with negation is not working on 1.4.0.\r\nWorks fine using Alloy 1.3.1 so is a regression.\r\n\r\nh5. Steps to reproduce\r\nThe Journal sample app can be used to reproduce the issue.\r\n1. Get the code from: https://github.com/appcelerator/alloy/tree/master/test/apps/models/journal\r\n2. Run on Android. Add an item. \r\nResult: when adding an entry a runtime error is displayed (see screenshot). \r\n\r\n3. Go to \"views/add.xml\" and change:\r\n{code}\r\n\r\n{code}\r\nto\r\n{code}\r\n\r\n{code}\r\nRun on Android and add an item\r\n\r\nResult: item is added as expected. \r\n\r\nBasically, using the conditional \"!ios\" is not working and the picker object was not being correctly created.\r\n\r\n ", "attachment": [ { "id": "48575", "filename": "Screen Shot 2014-06-03 at 12.38.33 PM.png", "author": { "name": "fcasali", "key": "fcasali", "displayName": "Federico Casali", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-06-03T19:39:38.000+0000", "size": 57814, "mimeType": "image/png" } ], "flagged": false, "summary": "Conditionals with negation are not working", "creator": { "name": "fcasali", "key": "fcasali", "displayName": "Federico Casali", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "fcasali", "key": "fcasali", "displayName": "Federico Casali", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "TiSDK 3.3.0.v20140603032057\r\nAlloy 1.4.0-beta\r\nAppcelerator Studio 3.3.0.201405271647\r\nCLI 3.3.0-beta2", "closedSprints": [ { "id": 117, "state": "closed", "name": "2014 Sprint 11 Alloy", "startDate": "2014-05-27T16:00:55.737Z", "endDate": "2014-06-07T04:00:00.000Z", "completeDate": "2014-06-09T14:18:58.490Z", "originBoardId": 124 } ], "comment": { "comments": [ { "id": "307620", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "In part, this issue was caused by the change to fix ALOY-989. However, negation only ever worked in the XML. In other words, this would have worked prior to 989:\r\n\r\n{{}}\r\n\r\nHowever, this would not have:\r\n\r\n{{\"#someView\\[platform=!ios]\"}}\r\n\r\nThis fix submitted here enables negation in both XML and TSS, as well as supporting comma-separated lists of conditionals in both XML & TSS.\r\n\r\nPR https://github.com/appcelerator/alloy/pull/428\r\n\r\nFunctional test\r\n\r\n1. Use the test app included with the PR. Labels in the app describe the XML {{platform}} or TSS platform conditionals used. \r\n2. Build for each of iOS, Android, and MobileWeb. You should see the number of labels as described in the app's output.\r\n3. Compare the labels displayed with the XML/TSS selectors used in the app's code", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2014-06-05T00:41:46.000+0000", "updated": "2014-06-05T00:41:46.000+0000" }, { "id": "307621", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "PR tested and merged", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2014-06-05T00:42:14.000+0000", "updated": "2014-06-05T00:42:14.000+0000" }, { "id": "307909", "author": { "name": "fcasali", "key": "fcasali", "displayName": "Federico Casali", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified fixed.\r\n\r\nConditionals with negations works fine both when used into XML and TSS files for platform and formFactor queries. \r\nCustomTSS queries does not support conditionals with negation.\r\n\r\nTiSDK 3.3.0.v20140605150555\r\nAlloy 1.4.0-beta2 \r\nAppcelerator Studio 3.3.0.201405271647\r\nCLI 3.3.0-beta2\r\n\r\nClosing.", "updateAuthor": { "name": "fcasali", "key": "fcasali", "displayName": "Federico Casali", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-06-06T21:57:08.000+0000", "updated": "2014-06-06T21:57:08.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }