Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-17239] Strip invalid characters from Xcode project targets

GitHub Issuen/a
TypeImprovement
PriorityLow
StatusClosed
ResolutionDuplicate
Resolution Date2016-02-02T07:52:26.000+0000
Affected Version/sn/a
Fix Version/sn/a
ComponentsiOS, Tooling
Labelsn/a
ReporterIngo Muschenetz
AssigneeChris Barber
Created2014-06-29T09:25:50.000+0000
Updated2017-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.

Comments

  1. Ingo Muschenetz 2014-06-29

    Proposed solution: https://github.com/appcelerator/titanium_mobile/pull/5854. It is suggested that there may be a better way.
  2. Chris Barber 2014-06-30

    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.
  3. Chris Barber 2016-02-02

    [~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.
  4. Hans Knöchel 2016-02-02

    Resolved as part of TIMOB-19336.
  5. Lee Morris 2017-03-20

    Closing ticket as duplicate.

JSON Source