2017-05-27 7 views
1

Frage: Gibt es eine Möglichkeit, ein "Entwicklungspaket" mit SPM zu erstellen, ähnlich einem Entwicklungs-Pod in Kakao-Pods, das Änderungen am eigentlichen Quellprojekt eines Abhängigkeitspakets (lokaler Pfad) ermöglicht)Swift Package Manager für Entwicklung

Kontext: Ich bin an einem Projekt arbeiten, die in drei separate Projekte aufgeteilt werden muss. Eines dieser Projekte wird von den anderen beiden geteilt (in diesem Fall ein Datenmodell, das von einem Server und einem Client gemeinsam genutzt wird). Für den Kunden, wie er uikit verwendet, habe ich ein Development-Cocoa-Pod-Setup, mit dem ich im Client-Arbeitsbereich arbeiten, Änderungen am Datenmodell-Projekt vornehmen und dann sofort kompilieren und ausführen kann. Meine Änderungen am Datenmodell werden dann im Datenmodellprojekt gespeichert.

Allerdings, für den Server, wie es vollständig mit SPM gebaut wird, wenn ich Änderungen an dem Datenmodell Projekt vornehmen möchte (die ich auf den Client reflektiert haben möchte), muss ich sie derzeit in den Daten vornehmen Modellprojekt, dann mit einer neuen Nebenversionsnummer versehen, das Serverprojekt bereinigen und neu erstellen. Ich würde das gerne so aufstellen wie mit Kakaoschoten.

Wenn ich das nicht kann, gibt es zumindest eine Möglichkeit, SPM zu sagen, nur eine meiner Abhängigkeiten auf eine neue Versionsnummer zu aktualisieren (oder auf die maximale Version wie in der Package.swift angegeben. Dh Nebenversion von .4, also wenn ich von .401 zu .402 reagiere, würde es updaten)? Ich hätte gedacht, dass ich das in den Package.pins machen könnte, aber das scheint nicht zu funktionieren. Nicht sicher, warum es sich nicht um eine versteckte Datei handelt, wenn die Bearbeitung keine tatsächlichen Änderungen bewirkt.

+0

SPM 4 zielen Sie Abhängigkeiten mit 'git branches' anstelle von nur Tags – eonist

Antwort

2

Das Konzept Sie „Entwicklungspaket“ nennen ist Editable Package in Swift Package Manager:

Für die Pakete, die im editierbaren Zustand sind, schnell zu bauen immer die genauen Quellen in diesem Verzeichnis werden Erstellen Sie unabhängig vom Status, Repository-Status, Tags oder dem durch die Abhängigkeitsauflösung gewünschten Tag. Mit anderen Worten, dies wird nur gegen die vorhandenen Quellen aufbauen.

Verwandte Themen