{ "id": "147480", "key": "TIMOB-18868", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "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": [], "resolution": { "id": "7", "description": "", "name": "Invalid" }, "resolutiondate": "2015-05-03T08:45:22.000+0000", "created": "2015-05-03T07:43:10.000+0000", "priority": { "name": "None", "id": "6" }, "labels": [], "versions": [ { "id": "16711", "description": "Release 3.5.1", "name": "Release 3.5.1", "archived": false, "released": true, "releaseDate": "2015-03-06" }, { "id": "16593", "description": "Release 4.0.0", "name": "Release 4.0.0", "archived": false, "released": true, "releaseDate": "2015-05-21" } ], "issuelinks": [ { "id": "47541", "type": { "id": "10011", "name": "Includes", "inward": "is included by", "outward": "includes" }, "outwardIssue": { "id": "139305", "key": "TIMOB-17993", "fields": { "summary": "iOS: Split CFBundleVersion and CFBundleShortVersionString ", "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 } } } } ], "assignee": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "updated": "2017-03-20T21:33:46.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" }, { "id": "10207", "name": "Tooling" } ], "description": "This ticket describes the changes in the original PR ([#6408|https://github.com/appcelerator/titanium_mobile/pull/6408]) for TIMOB-17993. That issue requested a way to set CFBundleVersion and CFBundleShortVersionString separately without asking for a specific solution. The PR resolved this by no longer overwriting these two, *but also other keys* set in {{tiapp.xml/ios/plist}} or a custom {{Info.plist}}.\r\n\r\nSo the request of this new ticket is for the build process to not overwrite keys set in {{tiapp.xml/ios/plist}} or a custom {{Info.plist}}.\r\n\r\nh2. Current situation\r\n\r\n1. Set some defaults ({{UIStatusBarStyle}}, {{CFBundleIdentifier}}..)\r\n2. Merge keys in custom {{Info.plist}} in project root\r\n3. Merge keys in {{tiapp.xml/ios/plist}}\r\n4. Set {{CFBundleVersion}}, {{CFBundleShortVersionString}}\r\n5. Set {{CFBundleIconFiles}}, {{UILaunchImages}}, {{UIAppFonts}}\r\n\r\nh2. New situation\r\n\r\n1. Set some defaults ({{UIStatusBarStyle}}, {{CFBundleIdentifier}}..)\r\n2. Merge keys in custom {{Info.plist}} in project root\r\n3. Merge keys in {{tiapp.xml/ios/plist}}\r\n4. Set {{CFBundleVersion}}, {{CFBundleShortVersionString}} *only if not set by 2 or 3* (fixed by [#6818|https://github.com/appcelerator/titanium_mobile/pull/6818] for TIMOB-17993)\r\n5. Set {{CFBundleIconFiles}}, {{UILaunchImages}}, {{UIAppFonts}} *only if not set by 2 or 3* (fixed by [#6408|https://github.com/appcelerator/titanium_mobile/pull/6408] for this issue)\r\n\r\nh2. PR\r\nThe PR on master for this issue, but also including that of TIMOB-17993:\r\nhttps://github.com/appcelerator/titanium_mobile/pull/6408\r\n\r\nh2. Note\r\nFor {{UILaunchImages}} [417f378430ba85908135c41a2806a5d49f271ae4|https://github.com/appcelerator/titanium_mobile/commit/417f378430ba85908135c41a2806a5d49f271ae4#diff-f430483233aa01af5b10df8390f9635dR2083] already tried to not overwrite values set via {{tiapp.xml/ios/plist}} or {{Info.plist}} but because it was checking the merged {{plist}} variable, it also skipped when the build directory already was generated, requiring the project to be cleaned every time you add a launch image. My PR fixes this.", "attachment": [], "flagged": false, "summary": "Do not overwrite Info.plist keys set by user", "creator": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "subtasks": [], "reporter": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "environment": null, "comment": { "comments": [ { "id": "351487", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "There's no need for this ticket. TIMOB-17993 is the superior version and it has been merged and resolved.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-05-03T08:45:22.000+0000", "updated": "2015-05-03T08:45:22.000+0000" }, { "id": "413988", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Closing ticket as invalid.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-03-20T21:33:46.000+0000", "updated": "2017-03-20T21:33:46.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }