{ "id": "172518", "key": "TIMOB-26499", "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": "20238", "description": "", "name": "Release 7.5.0", "archived": false, "released": true, "releaseDate": "2018-11-15" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2018-10-31T18:24:50.000+0000", "created": "2018-10-30T15:55:52.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "20238", "description": "", "name": "Release 7.5.0", "archived": false, "released": true, "releaseDate": "2018-11-15" } ], "issuelinks": [ { "id": "56954", "type": { "id": "10122", "name": "Gantt: start-finish", "inward": "is triggered by", "outward": "is triggering" }, "inwardIssue": { "id": "168104", "key": "TIMOB-24776", "fields": { "summary": "iOS: ListView item template support CommonJS modules", "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": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } }, { "id": "56973", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "172515", "key": "TIMOB-26498", "fields": { "summary": "Windows: ListView item template support CommonJS modules and Alloy widgets", "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": "Medium", "id": "3" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } } ], "assignee": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2018-11-06T10:19:55.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": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "*Steps to reproduce the behavior*\r\n# Setup a new Alloy project and install the [av.imageview|https://github.com/AndreaVitale/av.imageview] module.\r\n# Change {{app/views/index.xml}} to the following template that uses the module inside a list view:\r\n{code:xml}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n{code}\r\n# Add the following to {{app/alloy.js}}\r\n{code:js}\r\nvar AvImageview = require(\"av.imageview\");\r\n{code}\r\n\r\n*Actual behavior*\r\nThe app boots with an JS error:\r\n{code}\r\n[ERROR] Failed to load Alloy widget / CommonJS module \"AvImageview.ImageView\" to be used as template\r\n[ERROR] Script Error {\r\n[ERROR] column = 1036;\r\n[ERROR] line = 58;\r\n[ERROR] message = \"Invalid item template type provided\";\r\n[ERROR] nativeLocation = \"+[TiViewProxy unarchiveFromTemplate:inContext:] (TiViewProxy.m:2994)\";\r\n[ERROR] nativeReason = \"The item template type provided cannot be resolved.\";\r\n[ERROR] nativeStack = \"3 global-test-alloy 0x00000001006a0294 global-test-alloy + 590484\\n4 global-test-alloy 0x0000000100651b48 global-test-alloy + 269128\\n5 global-test-alloy 0x00000001006514dc global-test-alloy + 267484\\n6 CoreFoundation 0x00000001a8e6fb0c + 216\\n7 global-test-alloy 0x00000001006510e8 global-test-alloy + 266472\\n8 global-test-alloy 0x0000000100785420 global-test-alloy + 1528864\\n9 global-test-alloy 0x000000010078ce20 global-test-alloy + 1560096\\n10 global-test-alloy 0x000000010079eae4 global-test-alloy + 1632996\\n11 global-test-alloy 0x00000001006bf5dc global-test-alloy + 718300\\n12 global-test-alloy 0x000000010079e968 global-test-alloy + 1632616\\n13 Foundation 0x00000001a99344ac + 272\\n14 global-test-alloy 0x000000010069ff64 global-test-alloy + 589668\\n15 global-test-alloy 0x000000010069c0b8 global-test-alloy + 573624\\n16 global-test-alloy 0x0000000100649420 global-test-alloy + 234528\\n17 global-test-alloy 0x000000010079d454 global-test-alloy + 1627220\\n18 global-test-alloy 0x000000010069c2d8 global-test-alloy + 574168\\n19 global-test-alloy 0x00000001006a2dfc global-test-alloy + 601596\";\r\n[ERROR] sourceURL = \"file:///var/containers/Bundle/Application/1690C6F2-C45D-41D3-9311-6B917582242A/global-test-alloy.app/alloy/controllers/index.js\";\r\n[ERROR] stack = \" at [native code]\\n at Controller(/alloy/controllers/index.js:58:1036)\\n at createController(/alloy.js:339:48)\\n at (/app.js:61:23)\\n at global code(/app.js:62:70)\\n at require@[native code]\\n at (/ti.main.js:27:8)\\n at loadAsync(/ti.internal/bootstrap.loader.js:148:186)\\n at global code(/ti.main.js:24:52)\";\r\n[ERROR] toJSON = \"\";\r\n[ERROR] } \r\n[ERROR] Script Error Module \"app.js\" failed to leave a valid exports object\r\n{code}\r\n\r\n*Expected behavior*\r\nThe app works as expected and the image is displayed using the module.\r\n\r\n*Additional notes*\r\nThis works in 7.4.1 and is broken in 7.5.0 due to this change: https://github.com/appcelerator/titanium_mobile/pull/10131", "attachment": [], "flagged": false, "summary": "iOS: Third-party modules cannot be referenced anymore in Alloy templates", "creator": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "closedSprints": [ { "id": 1088, "state": "closed", "name": "2018 Sprint 22", "startDate": "2018-10-21T23:20:52.653Z", "endDate": "2018-11-04T23:20:00.000Z", "completeDate": "2018-11-04T23:29:59.423Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "443101", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR (7_5_X): https://github.com/appcelerator/titanium_mobile/pull/10410", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2018-10-30T17:39:47.000+0000", "updated": "2018-10-30T17:39:47.000+0000" }, { "id": "443179", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/10415", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2018-11-01T12:00:47.000+0000", "updated": "2018-11-01T12:00:47.000+0000" }, { "id": "443290", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-11-05T14:49:18.000+0000", "updated": "2018-11-05T15:38:02.000+0000" }, { "id": "443323", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-11-06T10:19:49.000+0000", "updated": "2018-11-06T10:19:49.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }