Не могу использовать Swift Package Manager с моей библиотекой

У меня есть инфраструктура камеры Swift с открытым исходным кодом под названием Lumina, и я хотел бы использовать ее с все три основные системы управления зависимостями iOS. (Cocoapods и Carthage работают нормально.)

Все мои теги следуют семантическим правилам управления версиями, но перед заголовками стоит буква «v», например:

список тегов для Lumina

Для библиотеки файл манифеста Package.swift выглядит так:

import PackageDescription

let package = Package(
    name: "Lumina")

В другом проекте я хотел проверить, что SPM работает и использует последнюю версию моего фреймворка (в настоящее время v0.8.4). Я создал приложение с одним представлением в Xcode 9.0 с нуля и добавил следующий файл Package.swift в корневой каталог:

import PackageDescription

let package = Package(
    name: "SwiftPMLumina",
    targets: [],
    dependencies: [
        .Package(url: "https://github.com/dokun1/Lumina.git", majorVersion: 0, minor: 8)
    ]
)

Когда я это делаю, интерфейс командной строки сообщает: error: unsatisfiable Я также пытался не указывать дополнительную версию и указывать конкретную строку версии (например, "v0.8.4"), но безрезультатно.

Что мне нужно сделать, чтобы правильно собрать эту библиотеку с помощью SwiftPM, и / или какую поддержку я должен добавить в саму библиотеку?


person dokun1    schedule 01.10.2017    source источник


Ответы (1)


Просто добавьте в свой фреймворк теги без начального «v», например «0.8.4».

person Vadim Eisenberg    schedule 02.10.2017
comment
Спасибо! Просто к сведению всех, кто читает, SPM теперь правильно определяет этот пакет, но поскольку моя структура требует UIKit, SPM не сможет правильно построить структуру. - person dokun1; 02.10.2017