NativeScript / NativeScript/nativescript-cli

Unable to use --provision option to build or run iOS apps

Open
#5,320 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
1.1k
Forks
204
Avg merge
1d 9h
Merged PRs (30d)
8

Description

Environment

OSX: 10.15.4

Output of tns doctor:
✔ Getting NativeScript components versions information...
✔ Component nativescript has 6.7.4 version and is up to date.
✔ Component tns-core-modules has 6.5.2 version and is up to date.
✔ Component tns-ios has 6.5.1 version and is up to date.
✔ Xcode is installed and is configured properly.
✔ xcodeproj is installed and is configured properly.
✔ CocoaPods are installed.
✔ CocoaPods update is not required.
✔ CocoaPods are configured properly.
✔ Your current CocoaPods version is newer than 1.0.0.
✔ Python installed and configured correctly.
✔ The Python 'six' package is found.
✔ Xcode version 11.5.0 satisfies minimum required version 10.

Not interested in Android in this project, so Android bits are not configured

Describe the bug

I am unable to run or build the app.

I can build the prepared app using XCode (once I fix the signing configuration, another potential issue with prepare command)

When trying to list available provisioning profiles:

tns <run|build|provision> ios --provision

Results in the not so friendly:

Expected """ or [^'"'] but "'" found.

When I run the command with the logging level increased:

tns <run|build|provision> ios --provision --log trace

I get the more useful:

...
Current CLI version:  6.7.4
Project dir from hooksArgs is: undefined.
Hooks directories: [ '/Users/j/Projects/visionlab/sad-dev/hooks' ]
BeforeHookName for command resolveCommand is before-resolveCommand
Project dir from hooksArgs is: undefined.
Hooks directories: [ '/Users/j/Projects/visionlab/sad-dev/hooks' ]
AfterHookName for command resolveCommand is after-resolveCommand
Validate options for platform: iOS
SyntaxError: Expected "\"" or [^'"'] but "'" found.
    at peg$buildStructuredError (/usr/local/lib/node_modules/nativescript/node_modules/ios-mobileprovision-finder/parsers/security-find-identity.js:314:12)
    at Object.peg$parse [as parse] (/usr/local/lib/node_modules/nativescript/node_modules/ios-mobileprovision-finder/parsers/security-find-identity.js:999:11)
    at Object.read (/usr/local/lib/node_modules/nativescript/node_modules/ios-mobileprovision-finder/index.ts:243:43)
    at IOSProvisionService.<anonymous> (/usr/local/lib/node_modules/nativescript/lib/services/ios-provision-service.js:80:55)
...

I tried to checkout what was going on above but it's complicated. I think it fails when trying to parse provisioning profiles.

Sadly the same error occurs when I try to supply a provisioning profile:

tns run ios --provision <UUID or Name>

Same thing happens on a newly created app.

Trying to run the app with no provisioning profile supplied in the command line fails with a signing error (regardless of the PROVISIONING_PROFILE or DEVELOPMENT_TEAM) being set in app/App_Resources/build.xcconfig but that's probably another issue.

To Reproduce

tns create sad-dev
cd sad-dev
tns run ios --provision

Expected behavior

A list of provisioning profiles

Additional context

I am running on Catalina. All seemed to work before I updated the OS. But sadly other stuff changed as well: NS version, etc...

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue with tns create sad-dev, then tns run ios --provision on the reported environment. Start with ios-provision-service.js and the ios-mobileprovision-finder parser, especially parsers/security-find-identity.js, where the trace shows parsing fails. Done means provisioning profiles can be listed and a supplied profile can be used without the reported syntax error.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, javascript
Domain
cli, mobile
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.