[TIMOB-17239] Strip invalid characters from Xcode project targets
GitHub Issue | n/a |
---|---|
Type | Improvement |
Priority | Low |
Status | Closed |
Resolution | Duplicate |
Resolution Date | 2016-02-02T07:52:26.000+0000 |
Affected Version/s | n/a |
Fix Version/s | n/a |
Components | iOS, Tooling |
Labels | n/a |
Reporter | Ingo Muschenetz |
Assignee | Chris Barber |
Created | 2014-06-29T09:25:50.000+0000 |
Updated | 2017-03-20T22:27:31.000+0000 |
Description
The iOS build script copies an Xcode project into the build dir and performs a bunch of string replacements. This introduces issues with naming things such as the targets. For example, you cannot have a \ [ ] { } ( ) . + or * in the target name. You also cannot have the word "titanium" in the app name. We simply need to properly escape the app name.
The change needs to take place around https://github.com/appcelerator/titanium_mobile/blob/master/iphone/cli/commands/_build.js#L2002-L2014. There may also need to be some changes in project.pbxproj template.
Proposed solution: https://github.com/appcelerator/titanium_mobile/pull/5854. It is suggested that there may be a better way.
I don't think we should allow this. The tooling should be smart enough to properly generate a valid build target name which is populated in the Info.plist. So the problem is in the Xcode project files. I'm adjusting this ticket accordingly.
[~hansknoechel] I don't think this is a problem anymore. In Summer 2015 when adding support for Watch apps, the iOS build should support any project name (including "titanium") as well as any character. I believe this ticket can be marked resolved.
Resolved as part of TIMOB-19336.
Closing ticket as duplicate.