{ "id": "175564", "key": "TIMOB-28152", "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": "21092", "name": "Release 9.2.1", "archived": false, "released": true, "releaseDate": "2020-10-06" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2020-10-02T14:25:13.000+0000", "created": "2020-09-24T12:55:06.000+0000", "priority": { "name": "None", "id": "6" }, "labels": [], "versions": [ { "id": "21051", "description": "", "name": "Release 9.2.0", "archived": false, "released": true, "releaseDate": "2020-09-23" } ], "issuelinks": [], "assignee": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "updated": "2020-10-02T14:25:13.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": "13103", "name": "CLI", "description": "Node-based command line interface" }, { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "h5.Description\r\n\r\nWhen the SDK determines that a rebuild is needed (as opposed to a clean rebuild, or no rebuild) a compile error can occur. [This block|https://github.com/appcelerator/titanium_mobile/blob/818db6f3fae3ea0f2512950b8eb194b25b5d57a3/iphone/cli/commands/_build.js#L2743-L2902] determines if a rebuild is needed, it appears the following circumstances can trigger this error:\r\n\r\n* SDK path changes (i.e. SDK version changed from 9.2.0.v20200923092031 -> 9.2.0.GA as this technically isn't an SDK version change)\r\n\r\nThe following do not:\r\n\r\n* Target changing (even if the same deploy type is maintained)\r\n* iOS SDK changing\r\n\r\nThe error specifically is \r\n\r\n{code}\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.m:41:28: error: use of undeclared identifier 'UITitaniumNativeItemSpinner'; did you mean 'UIKitchenSinkNativeItemSpinner'?\r\n[TRACE] MAKE_SYSTEM_PROP(ACTIVITY, UITitaniumNativeItemSpinner);\r\n[TRACE] ^~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n[TRACE] UIKitchenSinkNativeItemSpinner\r\n[TRACE] In module 'TitaniumKit' imported from /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.h:9:\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:324:36: note: expanded from macro 'MAKE_SYSTEM_PROP'\r\n[TRACE] return [NSNumber numberWithInt:map]; \\\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:420:3: note: 'UIKitchenSinkNativeItemSpinner' declared here\r\n[TRACE] UIKitchenSinkNativeItemSpinner = -2,\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.m:42:27: error: use of undeclared identifier 'UITitaniumNativeItemSpinner'; did you mean 'UIKitchenSinkNativeItemSpinner'?\r\n[TRACE] MAKE_SYSTEM_PROP(SPINNER, UITitaniumNativeItemSpinner);\r\n[TRACE] ^~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n[TRACE] UIKitchenSinkNativeItemSpinner\r\n[TRACE] In module 'TitaniumKit' imported from /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.h:9:\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:324:36: note: expanded from macro 'MAKE_SYSTEM_PROP'\r\n[TRACE] return [NSNumber numberWithInt:map]; \\\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:420:3: note: 'UIKitchenSinkNativeItemSpinner' declared here\r\n[TRACE] UIKitchenSinkNativeItemSpinner = -2,\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.m:43:30: error: use of undeclared identifier 'UITitaniumNativeItemInfoLight'; did you mean 'UIKitchenSinkNativeItemInfoLight'?\r\n[TRACE] MAKE_SYSTEM_PROP(INFO_LIGHT, UITitaniumNativeItemInfoLight);\r\n[TRACE] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n[TRACE] UIKitchenSinkNativeItemInfoLight\r\n[TRACE] In module 'TitaniumKit' imported from /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.h:9:\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:324:36: note: expanded from macro 'MAKE_SYSTEM_PROP'\r\n[TRACE] return [NSNumber numberWithInt:map]; \\\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:435:3: note: 'UIKitchenSinkNativeItemInfoLight' declared here\r\n[TRACE] UIKitchenSinkNativeItemInfoLight = -13,\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.m:44:29: error: use of undeclared identifier 'UITitaniumNativeItemInfoDark'; did you mean 'UIKitchenSinkNativeItemInfoDark'?\r\n[TRACE] MAKE_SYSTEM_PROP(INFO_DARK, UITitaniumNativeItemInfoDark);\r\n[TRACE] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n[TRACE] UIKitchenSinkNativeItemInfoDark\r\n[TRACE] In module 'TitaniumKit' imported from /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.h:9:\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:324:36: note: expanded from macro 'MAKE_SYSTEM_PROP'\r\n[TRACE] return [NSNumber numberWithInt:map]; \\\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:436:3: note: 'UIKitchenSinkNativeItemInfoDark' declared here\r\n[TRACE] UIKitchenSinkNativeItemInfoDark = -14,\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.m:45:30: error: use of undeclared identifier 'UITitaniumNativeItemDisclosure'; did you mean 'UIKitchenSinkNativeItemDisclosure'?\r\n[TRACE] MAKE_SYSTEM_PROP(DISCLOSURE, UITitaniumNativeItemDisclosure);\r\n[TRACE] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n[TRACE] UIKitchenSinkNativeItemDisclosure\r\n[TRACE] In module 'TitaniumKit' imported from /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.h:9:\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:324:36: note: expanded from macro 'MAKE_SYSTEM_PROP'\r\n[TRACE] return [NSNumber numberWithInt:map]; \\\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:438:3: note: 'UIKitchenSinkNativeItemDisclosure' declared here\r\n[TRACE] UIKitchenSinkNativeItemDisclosure = -15,\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.m:46:31: error: use of undeclared identifier 'UITitaniumNativeItemContactAdd'; did you mean 'UIKitchenSinkNativeItemContactAdd'?\r\n[TRACE] MAKE_SYSTEM_PROP(CONTACT_ADD, UITitaniumNativeItemContactAdd);\r\n[TRACE] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n[TRACE] UIKitchenSinkNativeItemContactAdd\r\n[TRACE] In module 'TitaniumKit' imported from /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/Classes/TiUIiOSSystemButtonProxy.h:9:\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:324:36: note: expanded from macro 'MAKE_SYSTEM_PROP'\r\n[TRACE] return [NSNumber numberWithInt:map]; \\\r\n[TRACE] ^\r\n[TRACE] /Users/awam/git/testing_apps/kitchensink-v2/build/iphone/build/Products/Debug-iphoneos/TitaniumKit.framework/Headers/TiBase.h:440:3: note: 'UIKitchenSinkNativeItemContactAdd' declared here\r\n[TRACE] UIKitchenSinkNativeItemContactAdd = -16\r\n[TRACE] ^\r\n[TRACE] 6 errors generated.\r\n{code}\r\n\r\n[This|https://github.com/appcelerator/titanium_mobile/blob/b999f2716088d221bc9e146233cbb559776ad4df/iphone/TitaniumKit/TitaniumKit/Sources/API/TiBase.h#L417-L438] is how the code should look.\r\n\r\nIt appears that one of the renames [here|https://github.com/appcelerator/titanium_mobile/blob/818db6f3fae3ea0f2512950b8eb194b25b5d57a3/iphone/cli/commands/_build.js#L3033-L3102] or [here|https://github.com/appcelerator/titanium_mobile/blob/818db6f3fae3ea0f2512950b8eb194b25b5d57a3/iphone/cli/commands/_build.js#L4709] is changing the {{Titanium}} portion of the enums to the app name.\r\n\r\n\r\nh5.Steps to reproduce\r\n\r\n1. Install 9.2.0.v20200923092031 and 9.2.0.GA\r\n2. Set your apps SDK to 9.2.0.v20200923092031\r\n3. Run {{appc run -p ios -T device --build-only}}\r\n4. Set your apps SDK to 9.2.0.GA\r\n5. Run {{appc run -p ios -T device --build-only}}\r\n\r\nh5.Actual\r\n\r\nCompile error\r\n\r\nh5.Expected\r\n\r\nNo compile error", "attachment": [], "flagged": false, "summary": "iOS: Compile error when SDK forces a rebuild", "creator": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "subtasks": [], "reporter": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "environment": null, "closedSprints": [ { "id": 1206, "state": "closed", "name": "2020 Sprint 19", "startDate": "2020-09-14T20:01:00.000Z", "endDate": "2020-09-25T20:01:00.000Z", "completeDate": "2020-09-28T15:30:19.875Z", "originBoardId": 114 }, { "id": 1207, "state": "closed", "name": "2020 Sprint 20", "startDate": "2020-09-28T15:30:47.481Z", "endDate": "2020-10-09T15:30:00.000Z", "completeDate": "2020-10-09T16:33:43.453Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "457018", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "-Looks like the root cause is occurring during the first build, not the second build. But the problem only manifests in the second build-\r\n\r\nIt seems to actually be expected that these values get scrubbed and Titanium replaced with the app name, I'm guessing the problem actually lies in the usage in the SDK not being replaced", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2020-09-24T14:52:42.000+0000", "updated": "2020-09-25T12:01:17.000+0000" }, { "id": "457035", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "https://github.com/appcelerator/titanium_mobile/pull/12135", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2020-09-25T16:11:12.000+0000", "updated": "2020-09-25T16:11:12.000+0000" }, { "id": "457072", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed, Waiting on Jenkins build and 9.2.1 Backport. ", "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-09-29T11:27:47.000+0000", "updated": "2020-09-29T11:27:47.000+0000" }, { "id": "457130", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "body": "*Closing ticket*. Fix verified in SDK version {{9.2.1.v20201001120538}}, and {{9.3.0.v20201001144501}}.\r\n\r\n*Test and other information can be found at:*\r\nhttps://github.com/appcelerator/titanium_mobile/pull/12135", "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-10-02T14:25:06.000+0000", "updated": "2020-10-02T14:25:06.000+0000" } ], "maxResults": 5, "total": 5, "startAt": 0 } } }