BugMedic

Xcode Cloud cannot resolve Swift package dependencies

Check Package.resolved, repository access, and version requirements in CI.

By BugMedic editorial teamLast source review: 2026-09-27macOS CI

Compare the successful local resolution with CI. Commit the appropriate Package.resolved file, ensure CI can reach every package repository, and inspect the first failing package and authentication error.

Try these fixes in order

01

Locate the first failing package

Open the Xcode Cloud build log or xcodebuild output and identify the package URL, requested version, and underlying network or authentication message. A missing revision differs from a private-repository access failure.

02

Check the resolved file

Apple documents that Xcode stores exact versions in Package.resolved. Find the file for the project or workspace and confirm the CI checkout includes the version reviewed by the team.

03

Confirm repository access

Check whether the CI environment has approved access to private package repositories and any required SSH configuration. Do not place tokens in the package URL, build log, or repository.

04

Reproduce the CI resolution

Use the same Xcode version and scheme locally if possible. Resolve intentionally, review Package.resolved changes, commit them, and rerun CI. If the package requires an unavailable revision, select a published compatible version.

Interpret what you see

Local build succeeds but Xcode Cloud cannot resolve

What it suggests: The workflow may not see the committed Package.resolved file.

Next check: Verify its project/workspace path, Git tracking, and branch used by the workflow.

The lockfile is present and a private fetch fails

What it suggests: The runner lacks permission to that source repository.

Next check: Grant supported SCM provider access to the private package; do not embed credentials in code.

Resolution picks a different version in CI

What it suggests: The lockfile or manifest requirements differ across commits or toolchains.

Next check: Compare the exact file and Xcode version from the CI commit, then review any lockfile changes.

Why this happens

  • CI cannot access Package.resolved or a private package source.
  • A pinned revision or package requirement is unavailable to the CI environment.

Still not working?

Avoid resetting all package caches before reading the first error. If only one Xcode version fails, compare its Swift tools and platform requirements.

Official sources

These steps are based on the linked documentation and general diagnostics. BugMedic has not independently tested every product and system configuration. Review commands before running them.

Related Xcode guides