{ "id": "168303", "key": "TIMOB-24796", "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": "19572", "description": "Important fixes for 6.1.0", "name": "Release 6.1.1", "archived": false, "released": true, "releaseDate": "2017-06-16" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-06-15T18:36:20.000+0000", "created": "2017-06-08T17:48:05.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "merge-6.1.1", "mobilesdk", "module", "user_experience", "validate" ], "versions": [], "issuelinks": [ { "id": "55163", "type": { "id": "10000", "name": "Blocks", "inward": "is blocked by", "outward": "blocks" }, "outwardIssue": { "id": "161603", "key": "MOD-2267", "fields": { "summary": "SyncServer Client: Getting error \"dlopen failed: /data/app/com.app.synctest-2/lib/arm/libappcelerator.syncserver.client.so: has text relocations\" when building for android", "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": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "55161", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "outwardIssue": { "id": "148855", "key": "TIMOB-23490", "fields": { "summary": "iOS: Hybrid CommonJS and Native modules don't export commonjs", "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": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "55164", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "outwardIssue": { "id": "148984", "key": "TIMOB-19914", "fields": { "summary": "Creation of Packaged JavaScript and Hybrid Modules: it doesn't work properly", "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": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "55165", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "161519", "key": "TIMOB-23590", "fields": { "summary": "iOS/Android: Recompile appcelerator.syncserver.client module against latest SDK", "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": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false } } } }, { "id": "55162", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "155961", "key": "MOD-2212", "fields": { "summary": "5.2.0 not compiling CommonJS modules", "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" } }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "updated": "2017-06-15T22:48:58.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": "Hi, I tested this using 6.1.0.GA and it works only for a single commonjs file.\r\nSuppose that you have a module called it.commonjs.test.module and in your assets folder you have two files called:\r\nit.commonjs.test.module.js\r\nanother.module.js\r\nIn the second one you have:\r\n{code:javascript}\r\nmodule.exports = {\r\n sayWelcome: function() {\r\n Ti.API.info(\"Welcome from the second commonjs module\");\r\n }\r\n};\r\n{code}\r\nIn the first one you have:\r\n{code:javascript}\r\nmodule.exports = {\r\n sayHello: function() {\r\n alert(\"Hello!\");\r\n },\r\n secondModule: require(\"it.commonjs.test.module/another.module\")\r\n}\r\n{code}\r\nYou can successfully build the module but when you try to run an app that requires the it.commonjs.test.module module you get an error like:\r\n{{[ERROR] Script Error Couldn't find module: it.commonjs.test.module/another.module for architecture: i386}}\r\nIf you try to build the module with 3.5.1.GA sdk everything is working fine.\r\nOn Android is working also with 6.1.0.GA.", "attachment": [ { "id": "62623", "filename": "hybrid.ios.mod.zip", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2017-06-08T20:22:14.000+0000", "size": 22491, "mimeType": "application/zip" } ], "flagged": false, "summary": "iOS: Hybrid CommonJS and Native modules don't handle multiple js files", "creator": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "Andrea.Vitale", "key": "andrea.vitale", "displayName": "Andrea Vitale", "active": true, "timeZone": "Europe/Berlin" }, "environment": "Appcelerator Studio 4.0.1\r\nTitanium SDK 4.0.0GA\r\nMac OSX Yosemite", "comment": { "comments": [ { "id": "421561", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "master/6.2.0: https://github.com/appcelerator/titanium_mobile/pull/9131\r\n6.1.1: https://github.com/appcelerator/titanium_mobile/pull/9132\r\n\r\nI'm not really sure how this \"worked\" in 3.5.1, as it appears we've always mangled the file paths to turn '.' to '_' when attempting to load JS assets in a native iOS module - but I can find no version of titanium_prep that actually generated file paths with the same underscore mangling.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2017-06-08T20:21:17.000+0000", "updated": "2017-06-08T20:21:17.000+0000" }, { "id": "421562", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "For testing/review:\r\nI've attached a hybrid iOS native module with two commonjs files in the assets folder. Unzip it, and attempt to build the module and run the example app.js by doing:\r\n{code:javascript}\r\nunzip hybrid.ios.mod.zip\r\ncd hybrid.ios.mod\r\nti build -p ios\r\n{code}\r\n\r\nPrior to the PR this would complain at runtime about being unable to load the required js files. With the fix in the PR, it should not complain and the log output should show that we were able to load an object with each require call.", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2017-06-08T20:24:10.000+0000", "updated": "2017-06-08T20:24:10.000+0000" }, { "id": "421597", "author": { "name": "Andrea.Vitale", "key": "andrea.vitale", "displayName": "Andrea Vitale", "active": true, "timeZone": "Europe/Berlin" }, "body": "Tested with my sample project that works only on 3.5.1.GA.\r\nVerified the fix, everything is working now!\r\n\r\nReally thank you.", "updateAuthor": { "name": "Andrea.Vitale", "key": "andrea.vitale", "displayName": "Andrea Vitale", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-06-09T07:47:00.000+0000", "updated": "2017-06-09T07:47:00.000+0000" }, { "id": "422080", "author": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Passed FR with this environment:\r\nNode Version: 6.10.3\r\nNPM Version: 3.10.10\r\nMac OS: 10.12.4\r\nAppc CLI: 6.2.2\r\nAppc CLI NPM: 4.2.9\r\nTitanium SDK version: 6.1.1 locally built with the appropriate pr\r\nAppcelerator Studio, build: 4.9.0.201705302345-39\r\nXcode 8.3.2\r\nHyperloop 2.1.0 (master) and 2.0.1\r\n\r\nI built the module and used the module in the demo app. No errors were seen at any stage, and the app worked as expected.", "updateAuthor": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-06-15T18:36:10.000+0000", "updated": "2017-06-15T18:36:10.000+0000" }, { "id": "422111", "author": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified that the fixes are here:\r\nSDK 6.1.1.v20170615113917\r\nSDK 6.2.0.v20170615115004\r\nClosing ticket.", "updateAuthor": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-06-15T22:48:14.000+0000", "updated": "2017-06-15T22:48:26.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }