{ "id": "174609", "key": "TIMOB-27706", "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": "20033", "name": "Release 9.0.0", "archived": false, "released": true, "releaseDate": "2020-03-18" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2020-01-10T22:44:52.000+0000", "created": "2020-01-07T05:50:39.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "android", "build", "engSchedule", "linux", "module" ], "versions": [], "issuelinks": [], "assignee": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2020-01-10T22:44:52.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": "10202", "name": "Android", "description": "Android Platform" } ], "description": "*Summary:*\r\nNative Android modules such as \"ti.facebook\" will not have their main JAR included in the app if built from a case-sensitive file system. The app will succeed to build, but attempting to use the module's APIs will fail.\r\n\r\nFor \"ti.facebook\", the following warning will be logged when doing a build.\r\n{code:java}\r\n[WARN] Module facebook version 8.0.0 does not have a main jar file\r\n{code}\r\n\r\n_(This is more of an issue on Linux where the file system is case-sensitive by default.)_\r\n\r\n*How to create case-sensitive disk image on macOS:*\r\n# Open the \"Disk Utility\" app.\r\n# From the menu, click: {{File -> New Image -> Blank Image}}\r\n# Click on the \"Image Format\" drop-down and select \"sparse bundle disk image\".\r\n# In \"Save As\" field, enter: {{CaseSensitive.sparsebundle}}\r\n# In \"Where\" field, select destination to write this image file to.\r\n# In \"Name\" field, enter: {{CaseSensitive}}\r\n# In \"Size\" field, enter: {{1 GB}}\r\n# Click \"Format\" drop-down and select \"Mac OS Extended (Case-sensitive)\".\r\n# Click the \"Save\" button.\r\n\r\nYou can mount the above image by double clicking the \"CaseSensitive.sparsebundle\" file. You can find the \"CaseSensitive\" volume in \"Finder\" under the \"Locations\" section.\r\n\r\n*Steps to reproduce:*\r\n# Download [kitchensink-v2|https://github.com/appcelerator/kitchensink-v2] to the case sensitive volume.\r\n# Download the newest release version of the [ti.facebook|https://github.com/appcelerator-modules/ti.facebook] module.\r\n# Unzip module to folder: {{kitchensink-v2/modules/ti.facebook/...}}\r\n# Open the \"tiapp.xml\" file.\r\n# Build and run on Android.\r\n# Notice the following gets logged:\r\n{code}\r\n[WARN] Module facebook version 8.0.0 does not have a main jar file\r\n{code}\r\n# Tap on the app's \"Mashups\" tab.\r\n# Tap on the Facebook row.\r\n# Notice the app crashes.\r\n\r\n*Reason:*\r\nTitanium's build script is doing a {{toLowerCase()}} on the JAR file name [here|https://github.com/appcelerator/titanium_mobile/blob/243afd00e0760f2060e797312942ee65d47b9f5f/android/cli/commands/_build.js#L1575].\r\n\r\n*Note:*\r\nThis issue causes a build failure in Titanium 9.0.0 since moving to gradle.\r\n", "attachment": [], "flagged": false, "summary": "Android: Native modules having uppercase \"name\" are excluded from build on case-sensitive systems", "creator": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "closedSprints": [ { "id": 1176, "state": "closed", "name": "2020 Sprint 1", "startDate": "2020-01-02T21:15:56.301Z", "endDate": "2020-01-17T21:15:00.000Z", "completeDate": "2020-01-21T17:44:29.577Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "453491", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/11417", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-01-08T06:00:29.000+0000", "updated": "2020-01-08T06:00:29.000+0000" }, { "id": "453533", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "merged to master for 9.0.0", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2020-01-09T16:40:19.000+0000", "updated": "2020-01-09T16:40:19.000+0000" }, { "id": "453661", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified on:\r\nMac OS: 10.15.1\r\nSDK: 9.0.0.v20200110103446\r\nAppc CLI: 7.1.2\r\nJDK: 11.0.4\r\nNode: 10.16.3\r\nStudio: 6.0.0.201911251516\r\nDevice: Pixel3(v10.0) emulator", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-01-10T22:44:52.000+0000", "updated": "2020-01-10T22:44:52.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }