Манифест пакета Swift для нескольких библиотечных продуктов - PullRequest
0 голосов
/ 07 апреля 2020

Я пытаюсь выставить модуль Mocks рядом с моим модулем Helpers. Может ли один пакет Swift выставить такие же родственные модули?

Вот как выглядит мой манифест пакета:

// swift-tools-version:5.2

import PackageDescription

let package = Package(
    name: "Helpers",
    products: [
        .library(
            name: "Helpers",
            targets: ["Helpers"]),
        .library(
            name: "Mocks",
            targets: ["Mocks"]),
    ],
    dependencies: [
        .package(name: "Parent", url: "foo/bar/Parent.git", .upToNextMinor(from: "0.1.0")),
    ],
    targets: [
        .target(
            name: "Helpers",
            dependencies: ["Parent"]),
        .target(
            name: "Mocks",
            dependencies: ["Parent", "Helpers"]),
        .testTarget(
            name: "HelpersTests",
            dependencies: ["Helpers", "Mocks"]),
    ]
)

Этот манифест позволяет мне импортировать и использовать как Helpers, так и Mocks изнутри HelpersTests. Но проект, который объявляет этот пакет как зависимость (используя пользовательский интерфейс Xcode 11), может видеть только модуль Helpers для его импорта. Mocks выдает ошибку, что "такого модуля нет". Это намеренное поведение? Я что-то не так делаю или нет возможности выставить обе библиотеки из одного пакета?

...