AppCode 2020.3 Help

Project security

To prevent potential security risks, AppCode lets you decide how to open a project if you not sure about its source. AppCode warns you about tasks or configurations that will be executed during the opening or cloning process, and lets you configure sources that you can trust.

Open Swift packages

When you open an Xcode project with Swift package dependencies, AppCode executes its build scripts during the loading process that potentially may contain the untrusted code.

Open a project for the first time

When you try to open a Swift package or an Xcode project with Swift package dependencies from the unknown source for the first time, AppCode displays a warning and lets you decide how to proceed.

Untrusted Project

You can select one of the following actions:

  • Preview in Safe Mode: in this case AppCode opens a project in a "preview mode" meaning you can browse the project's sources, but it might be unsafe to resolve Swift package dependencies and load and run Swift packages.

    AppCode displays a notification on top of the editor area and you can click the Trust project link and load your project at any time.

  • Trust Project: in this case AppCode opens and loads a project. That means that Swift package dependencies are resolved, standalone Swift packages are loaded, run/debug configurations for Swift packages are available.

  • Don't Open: in this case AppCode cancels the action.

Open an existing project

If a project you are planning to open was created on a different machine and contains the .idea directory, AppCode opens your project in the IDE automatically as if you would choose the Preview in Safe Mode action. AppCode cannot resolve remote Swift package dependencies, load and run Swift packages. However, you still can browse the project's sources and open them in the editor.

When trying to update Swift package dependencies, you'll get a notification suggesting you to trust and load the project.

AppCode also displays a notification stating that the project is untrusted.

the Trust project notification

If you trust the source, click Trust project and load it.

the Untrusted AppCode project dialog

In this case, AppCode loads the project, adds the necessary dependencies, and so on.

You can also add the source to the trusted locations, so the next time you open your project, AppCode will load it automatically.

Startup tasks

When you open a project created on a different machine, it might contain some scripts or tasks that are executed during the opening process. If such tasks are found, AppCode displays a notification suggesting that the code you are about to execute might be untrusted.

You can review what tasks will be executed and modify the settings.

Review the startup tasks

  1. In the Preferences dialog ⌃⌥S, go to Tools | Startup Tasks.

  2. In the Startup Tasks settings page, you can review and modify the startup tasks.

Trusted locations

You can configure what sources AppCode should consider safe and load such projects automatically during the opening process.

Configure trusted locations

  1. In the Preferences dialog ⌃⌥S, go to Build, Execution, Deployment | Trusted Locations.

  2. On the Trusted Locations settings page, configure local directories where the projects you consider trusted reside. Click OK to save the changes.

    Trusted Locations

    The next time you open or clone a project from one of those locations, AppCode will automatically load the project.

Last modified: 17 March 2021