mapbox / mapbox/mapbox-maps-ios

Frameworks, Libraries and Embedded Content Issue

Open
#2,352 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

auto-triaged bug :beetle: needs info
Dominant language
Swift
Stars
601
Forks
196
PR merge metrics
No merged PRs in 30d

Description

## Environment

- Xcode version: Version 16.4 (16F6)
- iOS version: Any (reproducible without running on device)
- Devices affected: All
- Maps SDK Version: 14.11.0

## Observed behavior and steps to reproduce

When integrating the mapbox-maps-ios package via Swift Package Manager in Xcode 16.4:
Add the package using the URL: https://github.com/mapbox/mapbox-maps-ios, version 11.14.0.
Once added, only the top-level MapboxMaps product appears in Frameworks, Libraries, and Embedded Content.

The expected additional products such as MapboxCoreMaps, MapboxCommon, and Turf do not appear under:
- the "Choose frameworks and libraries to add" dialog, or
- the "Package Dependencies" section when expanded in Xcode.

This results in unresolved symbol errors when trying to use these dependent products, since they are not linked or embedded by default.

## Expected behavior

ll relevant package products defined by the mapbox-maps-ios package (e.g. MapboxCoreMaps, MapboxCommon, Turf) should appear and be available for selection in Xcode's Frameworks, Libraries, and Embedded Content interface when the package is added.
These should also appear under the package's expand arrow in the Package Dependencies tab of the project settings, enabling proper linking and embedding without manual intervention.

## Notes / preliminary analysis

It appears Xcode is not resolving transitive dependencies correctly for this package. This might be due to how the Package.swift is structured (e.g., if some dependencies are exposed only as internal or private), or due to how .xcframeworks are referenced within the package structure.
Attempted workarounds such as removing and re-adding the package, cleaning derived data, and manually adding .xcframeworks have not resolved the issue.

## Additional links and references

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 package integration in Xcode 16.4 using Swift Package Manager and version 11.14.0. Inspect Package.swift and how the .xcframeworks are referenced, then verify whether MapboxCoreMaps, MapboxCommon, and Turf appear in Frameworks, Libraries, and Embedded Content. Done means the dependent products are visible and can be linked and embedded without manual intervention.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
build-system, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 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.