Charts: Realm-Integration in ein anderes Repository verschieben

Erstellt am 31. Okt. 2016  ·  20Kommentare  ·  Quelle: danielgindi/Charts

Haben Sie darüber nachgedacht, ChartsRealm in ein anderes Repository zu verschieben, das sowohl Charts als auch Realm abhängt?

Im Moment befinden sie sich beide in diesem Repository und im selben Projekt. Das führt dazu, dass einige Abhängigkeitsmanager wie Carthage alle Charts , ChartsRealm und Realm selbst erstellen, auch wenn ihre Integration nicht verwendet wird.

discussion

Hilfreichster Kommentar

+1 zum Entfernen der Realm-Abhängigkeit.

Es ist kein zentraler Bestandteil der Charts-Bibliothek oder auch nur verwandt; es ist schön zu haben. Sie haben bereits die Arbeit zum Aufteilen der Abhängigkeiten geleistet, daher scheint ein separates Repo sinnvoll zu sein. AlamoFire tut dasselbe.

Für mich geht es nicht um Bauzeiten oder ähnliches, sondern nur um die Projektreife. Zu sehen, wie Realm unerwartet in Cartfile.resolved auftauchte, hat in meinem Team ein großes Warnsignal ausgelöst.

Alle 20 Kommentare

Wir haben. Viel. Leider verkompliziert das die Sache...
ChartsRealm benötigt Charts und Realm . ChartsDemo wird aus Gründen der Einfachheit und Zugänglichkeit offensichtlich als Teil des Charts -Repositorys verwaltet.
Da ChartsDemo auch Realm Demos anbietet, hängt es von Charts und ChartsRealm ab.

Das macht also: Charts Repo hängt von ChartsRealm Repo ab, das von Charts Repo abhängt.

Derzeit unterstützen sowohl Pods als auch Carthage keinerlei zyklische Abhängigkeiten. Sie haben nicht einmal den einfachsten Algorithmus implementiert, um solche Redundanzen zu finden und zu lösen, da es in der Praxis kompliziert werden kann.

Aus Gründen der Benutzerfreundlichkeit behalten wir die Dinge so bei, wie sie jetzt sind.
Wenn es mehr Stimmen dafür geben wird, dies zusammen mit seinen Demos zu trennen, können wir dies in Betracht ziehen.

Das lasse ich jetzt offen.

Ich verstehe, danke für die schnelle Antwort!

In der Zwischenzeit denke ich, dass ich einen schnellen Fork erstellen und Realm-Abhängigkeiten darin entfernen werde. Ich hoffe, das löst mein 20-minütiges carthage update 🙈

Stellen Sie sicher, dass Sie Ihren Fork regelmäßig aktualisieren, da wichtige Bugfixes und neue Funktionen hinzukommen....

Wenn Sie finden, dass Karthago zu lange dauert, verwenden Sie Kakaoschoten. Sie können angeben, dass nur Diagramme und kein Diagrammbereich erstellt werden sollen, da diese Unterspezifikationen haben.

Ich habe Karthago vor einiger Zeit ausprobiert, bin aber zu Kakaoschoten zurückgekehrt, weil es schneller und einfacher ist.

Das ist subjektiv. Für mich ist CocoaPods einfacher, aber Karthago ist einfacher . 😉

Ja, ich meinte einfacher ;)

@danielgindi kannst du Realm auf 2.x aktualisieren?

Pull Requests sind immer willkommen 😉

@danielgindi Scheint so, als ob das aktuelle ChartsDemo wirklich ein ChartsRealmDemo ist. Sie könnten diese Demo und Realm in ein separates Projekt verschieben und ein Barebone ChartsDemo ohne Realm-Abhängigkeiten bereitstellen. Fügen Sie einfach eine Notiz hinzu, dass eine umfassendere Demo im ChartsRealm -Projekt verfügbar ist.

Das Verschieben ChartsRealm aus Charts wird unserem Entwicklerteam viel sinnlose Download- und Bauzeit ersparen.

@getaaron , nicht alles, ChartsDemo enthält immer noch mehr Demos ohne Realm. Ich stimme zu, dass wir sie trennen könnten, aber bisher musste ich nur einmal für Realm von Karthago bauen und herunterladen. Es sollte nicht die ganze Zeit gebaut werden?

@danielgindi Ich bin dafür, ChartsRealm in ein anderes Repo zu verschieben.
Es dauert so lange, mit Karthago zu bauen ...

*** Building scheme "RealmSwift" in Realm.xcworkspace
*** Building scheme "Realm" in Realm.xcworkspace
*** Building scheme "PlaygroundFrameworkWrapper" in RealmExamples.xcworkspace
*** Building scheme "ChartsRealm" in Charts.xcodeproj
*** Building scheme "Charts" in Charts.xcodeproj

Das macht mich verrückt, weil ich nur Diagramme verwende ...

Nun, Karthago möchte wirklich keine Unterspezifikationen hinzufügen. Wenn Sie also nicht ständig alles herunterladen möchten, verwenden Sie Kakaoschoten oder beschweren Sie sich bei den Betreuern von Karthago. Separate Repos machen unser Leben viel schwerer für wenig Gewinn. Wir könnten die Demos in 2 Ziele aufteilen, aber das behebt wirklich nicht einige der hier erwähnten Probleme.

+1 zum Entfernen der Realm-Abhängigkeit.

Es ist kein zentraler Bestandteil der Charts-Bibliothek oder auch nur verwandt; es ist schön zu haben. Sie haben bereits die Arbeit zum Aufteilen der Abhängigkeiten geleistet, daher scheint ein separates Repo sinnvoll zu sein. AlamoFire tut dasselbe.

Für mich geht es nicht um Bauzeiten oder ähnliches, sondern nur um die Projektreife. Zu sehen, wie Realm unerwartet in Cartfile.resolved auftauchte, hat in meinem Team ein großes Warnsignal ausgelöst.

Ich stimme @donnellyk zu.

@donnellyk Bis wir an eine Lösung denken, die die wichtigsten Bedenken beantwortet, können wir das nicht tun. Und glauben Sie mir, wir wollen!

@danielgindi Fair genug. Welche Bedenken sind das? Vielleicht können wir helfen? 🙂

Zuerst dachten wir darüber nach, das Realm-Zeug im Projekt zu belassen - für eine einfachere Wartbarkeit.
Das Problem, das sich daraus ergibt, sind zyklische Abhängigkeiten, die nicht sowohl von CocoaPods als auch von Carthage unterstützt werden.

Jetzt bleibt uns der Wunsch, die Demo mit der Präsentation von Realm-bezogenen Dingen beizubehalten, sowohl für die Benutzer, damit sie zugänglich sind, als auch für uns beim Testen während der Entwicklung.
Denken Sie darüber nach: Es gibt einen Fehler in Charts , der ChartsRealm betrifft, oder eine Hilfsfunktion, die wir zugunsten von ChartsRealm hinzufügen. Der Entwicklungsprozess wäre entweder:

  1. Führen Sie Dinge auf dem Charts-Klon aus, kopieren Sie sie in den Pods-Ordner im ChartsRealm-Klon, sehen Sie, dass es erstellt wird, führen Sie dann die Demo aus und testen Sie sie visuell, und führen Sie dann möglicherweise einige Komponententests durch.
  2. Machen Sie dasselbe mit dem Pods-Ordner in ChartsRealm und kopieren Sie ihn dann in den Charts-Klon.

Das ursprüngliche Hauptanliegen galt eher den Benutzern: Es gibt eine sehr hohe Nachfrage nach ChartsRealm. Die aktuelle Situation macht ChartsRealm sehr sichtbar und zugänglich.
Aber jetzt, da wir viele Ablehnungen von Vanilla-Charts-Benutzern erhalten, die sich nicht bewusst sind, dass Realm nur eine optionale Abhängigkeit ist (oder dass es abgerufen werden muss, damit die Demo funktioniert) - denke ich, dass unsere Bedenken auf den Kopf gestellt wurden.

Über die Entwicklung des Flows - Vielleicht sollten wir einfach in den sauren Apfel beißen und uns daran gewöhnen. Auf der ChartsRealm-Seite ist sowieso nicht viel los (außer der Implementierung des neuen ObjC-Support-Zeugs auf Realm, das vor ein paar Tagen nach meiner PR veröffentlicht wurde).

Ich war in letzter Zeit allgemein sehr beschäftigt mit vielen Dingen - also möchte ich mich hinsetzen und einige Probleme schließen, PRs zusammenführen usw., und dann vielleicht versuchen, das ChartsRealm-Repo zu trennen und zu sehen, wie es läuft.

@danielgindi erwischt dich endlich hier. Ja, wir müssen viele Dinge reparieren, bevor wir an Realm denken.. 😂

Ja, es waren einige arbeitsreiche Tage :-) Sind es immer noch...
Aber ich kümmere mich um einige Probleme und PRs und bewege mich auf die nächste kleinere Version zu,
und zu diesem Zeitpunkt werden wir wahrscheinlich Reichskram trennen.

Okay, ich bin damit fertig, das Repo aufzuteilen und das Realm-Zeug nach https://github.com/danielgindi/ChartsRealm zu verschieben.
Travis ist immer noch kaputt, @petester42 könntest du einen Blick darauf werfen?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

cilasgimenez picture cilasgimenez  ·  4Kommentare

brytnvmg picture brytnvmg  ·  4Kommentare

valeIT picture valeIT  ·  3Kommentare

heumn picture heumn  ·  3Kommentare

Bharati555 picture Bharati555  ·  4Kommentare