{ "id": "170240", "key": "TIMOB-25564", "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": "20014", "name": "Hyperloop 3.0.1", "archived": false, "released": true } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-11-29T10:02:27.000+0000", "created": "2017-11-07T09:12:08.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "19960", "name": "Hyperloop 2.2.2", "archived": false, "released": true } ], "issuelinks": [ { "id": "56182", "type": { "id": "10122", "name": "Gantt: start-finish", "inward": "is triggered by", "outward": "is triggering" }, "outwardIssue": { "id": "170490", "key": "TIMOB-25571", "fields": { "summary": "iOS: Adhoc-build fails when using Cocoapods in Hyperloop", "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": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2018-08-06T17:49:26.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": "13715", "name": "Hyperloop", "description": "Hyperloop project" }, { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "Hey!\r\n\r\nI ran into an issue when using Analytics pod version higher than 3.3.0. Starting from 3.4.0 it does not build and gives an CompileC error when trying to build.\r\n\r\nXcode version: 9.1\r\nTitanium SDK: 6.3.0.GA\r\n\r\nMy Podfile looks like this:\r\n\r\n{code:java}\r\n# This is required for CocoaPods 1.x\r\ninstall! 'cocoapods',\r\n :integrate_targets => false\r\n\r\nplatform :ios, '8.0'\r\ntarget 'Testcase' do\r\n pod 'Analytics', '3.6.7'\r\nend\r\n{code}\r\n\r\nError from studio:\r\n\r\n\r\n{code:java}\r\n[INFO] : Invoking xcodebuild\r\n[ERROR] : ** BUILD FAILED **\r\n[ERROR] : The following build commands failed:\r\n[ERROR] : \tCompileC build/Intermediates/Testcase.build/Debug-iphonesimulator/Testcase.build/Objects-normal/x86_64/analytics.o /Users/kristjan/Documents/Appcelerator_Studio_Workspace/Testcase/build/hyperloop/ios/js/analytics/analytics.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler\r\n[ERROR] : \tLd build/Products/Debug-iphonesimulator/Testcase.app/Testcase normal x86_64\r\n[ERROR] : \tGenerateDSYMFile build/Products/Debug-iphonesimulator/Testcase.app.dSYM build/Products/Debug-iphonesimulator/Testcase.app/Testcase\r\n[ERROR] : (3 failures)\r\n{code}\r\n\r\nAny idea what could cause this? Segment analytics is a really good tool for analytics and 3.3.0 version has some unfixed memory leaks. I would really appreciate if the latest version could be made to work.\r\n\r\nLet me know if there is any further information i could provide.", "attachment": [], "flagged": false, "summary": "Hyperloop: iOS - Build failed when using analytics pod", "creator": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Mac OS Sierra version 10.12.6", "comment": { "comments": [ { "id": "430222", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "I just tried with Hyperloop 2.2.2 and SDK 6.3.0.GA and it works using the above Podfile and this code to test:\r\n{code:js}\r\nvar SEGAnalyticsConfiguration = require('Analytics/SEGAnalyticsConfiguration');\r\nvar configuration = SEGAnalyticsConfiguration.configurationWithWriteKey('YOUR_WRITE_KEY');\r\n{code}\r\nEnsure to have the latest Hyperloop-version and try again. If that does not work, please provide a full test-project and trace-logs.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-07T15:30:52.000+0000", "updated": "2017-11-07T15:30:52.000+0000" }, { "id": "430242", "author": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Thanks for the reply!\r\n\r\nI guess SEGAnalyticsConfiguration works but the analytics itself doesn't.\r\n\r\n{code:java}\r\nanalytics = require('Analytics/SEGAnalytics');\r\nanalyticsConf = require('Analytics/SEGAnalyticsConfiguration');\r\nvar analyticsKey = '*****';\r\n\r\nvar conf = analyticsConf.configurationWithWriteKey(analyticsKey);\r\nconf.recordScreenViews = false;\r\nconf.trackApplicationLifecycleEvents = true;\r\nconf.flushAt = 1;\r\nanalytics.setupWithConfiguration(conf);\r\n{code}\r\n", "updateAuthor": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-11-07T21:03:29.000+0000", "updated": "2017-11-07T21:03:29.000+0000" }, { "id": "430381", "author": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Is it possible to get this issue reopened? The problem is still there when using analytics = require('Analytics/SEGAnalytics');\r\nSo it is easily reproducible.", "updateAuthor": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-11-10T07:44:31.000+0000", "updated": "2017-11-10T07:44:31.000+0000" }, { "id": "431367", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~kbrand] You are right, it fails with that require-statement. The reason is that the framework (Analytics) and umbrella header (SEGAnalytics) are different, which is against the iOS best practices but still allowed. We probably do not handle that case so far. But we made many changes regarding more dynamic umbrella-header handling over the last weeks, so maybe [~jvennemann] knows if we may already fixed it as part of the recent changes?", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-28T09:34:46.000+0000", "updated": "2017-11-28T09:34:46.000+0000" }, { "id": "431368", "author": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "body": "But if you use a build 3.3 for the analytics pod then it wont fail. It starts failing from 3.4 version. In 3.3 it still uses the same umbrella header but for some reason it does not fail then.", "updateAuthor": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-11-28T09:38:53.000+0000", "updated": "2017-11-28T09:38:53.000+0000" }, { "id": "431370", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "I agree, it shouldn't matter after all. But looking at [their changelog|https://cocoapods.org/pods/Analytics#changelog], they didn't change any code structure, so I'm wondering what else could influence the error. We'll have to go through their commits first.\r\n\r\n*EDIT*: Looking at a [relevant commit|https://github.com/segmentio/analytics-ios/commit/2b021444d577942162c814e16e003d8741bf425d] between the versions, they added the {{SEGAnalyticsRequest}} class and replaced it with {{SEGHTTPClient}} and the {{GZIP}} extension for {{NSData}} with {{SEGGZIP}}, not really much more. Need to investigate this further.\r\n\r\n*EDIT*: They have a typedef in [this line|https://github.com/segmentio/analytics-ios/commit/2b021444d577942162c814e16e003d8741bf425d#diff-37b3080e62e213b7c3a3d0e5fcc352afR9] of the header, which my not be handled correctly. [~jvennemann] to confirm.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-28T09:47:03.000+0000", "updated": "2017-11-28T09:53:34.000+0000" }, { "id": "431410", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~hknoechel], yeah you are right, the typedef is causing some issues. We generate a native helper class to handle the block that is defined there and that helper produces a wrong header import because they don't follow the umbrella header best practices.\r\n\r\nI'm working on a fix but unfortunately this will only work together with {{use_frameworks!}} in the Podfile. This allows us to grab the correct umbrella header from the module map.", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-28T21:46:53.000+0000", "updated": "2017-11-28T21:46:53.000+0000" }, { "id": "431435", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR: https://github.com/appcelerator/hyperloop.next/pull/265", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-29T08:19:38.000+0000", "updated": "2017-11-29T08:19:38.000+0000" }, { "id": "431438", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~kbrand] We just released Hyperloop 3.0.1 that contains this fix: https://github.com/appcelerator-modules/hyperloop-builds/releases/tag/v3.0.1", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-29T10:05:33.000+0000", "updated": "2017-11-29T10:05:33.000+0000" }, { "id": "431442", "author": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Can confirm that the build does not fail anymore with Hyperloop 3.0.1.\r\n\r\nThanks a lot for fixing the issue!", "updateAuthor": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-11-29T12:51:38.000+0000", "updated": "2017-11-29T12:51:38.000+0000" }, { "id": "431447", "author": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~hknoechel] there is another issue now though. Building for dist-adhoc fails now when i use my podfile with hyperloop 3.0.1 and SDK 7.0.0.v20171128203009\r\n\r\n[ERROR] Failed to export archive to ipa\r\n[ERROR] The selected provisioning profile \"Project xxx (adhoc) (***)\" is most likely not a valid Ad Hoc provisioning profile.\r\n[ERROR] Please ensure you are using a valid Ad Hoc provisioning that is linked to the signing identity, then try again.\r\n\r\nWhere *** is my actual provisioning profile UUID what is 100% correct. If i remove my podfile (Not using hyperloop) it packages correctly for adhoc without any issues.\r\n\r\nAny ideas what could cause it?", "updateAuthor": { "name": "kbrand", "key": "kbrand", "displayName": "Kristjan Brand", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-11-29T14:26:59.000+0000", "updated": "2017-11-29T14:33:41.000+0000" }, { "id": "431449", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "That's really weird! Didn't hear of that issue so far. Maybe cocoapods override some build-settings of the app. Let me open an own ticket for that and have it investigated! *EDIT*: Created TIMOB-25571 to follow-up.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-29T14:48:39.000+0000", "updated": "2017-11-29T14:50:44.000+0000" }, { "id": "440166", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Cleaning up older fixed issues. If this issue should not have been closed as fixed, please reopen.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-08-06T17:49:26.000+0000", "updated": "2018-08-06T17:49:26.000+0000" } ], "maxResults": 14, "total": 14, "startAt": 0 } } }