2 Punkte von GN⁺ 2025-03-31 | 1 Kommentare | Auf WhatsApp teilen
  • Die erste stabile Version von swiftly, dem offiziellen Tool zur Vereinfachung von Installation, Verwaltung und Aktualisierung von Swift-Versionen, wurde veröffentlicht
  • Bisher konnte die neueste Swift-Version nur über Xcode genutzt werden, nun ist eine unabhängige Installation unter macOS und verschiedenen Linux-Distributionen möglich
  • swiftly begann als Community-Tool für Swift und wurde inzwischen in die offizielle GitHub-Organisation von Swift integriert und wird offiziell unterstützt
  • Swift kann auch ohne Xcode installiert werden, wodurch sich Versionen für Entwicklungswerkzeuge, Server-Umgebungen und weitere Einsatzzwecke einfach verwalten lassen

Zusammenfassung der wichtigsten Funktionen von swiftly

  • Installation und Wechsel zwischen mehreren Versionen der Swift-Toolchains möglich
    • Befehle wie swiftly install, swiftly use, swiftly list-available werden bereitgestellt
    • Über die Datei .swift-version kann die konsistente Nutzung derselben Version im Team erzwungen werden
  • Auch Snapshot-Versionen und ältere Versionen können installiert werden
    • Beispiel: Versionen wie main-snapshot-2025-03-25 lassen sich ebenfalls einfach installieren
    • Mit der Syntax swiftly run +Versionsname ist eine temporäre Ausführung mit einer bestimmten Version möglich
  • Automatische Update-Funktion enthalten
    • Mit dem Befehl swiftly self-update können die neuesten Funktionen übernommen werden
  • Unterstützung für macOS und verschiedene Linux-Distributionen
    • Unterstützt werden unter anderem Ubuntu, Debian, Fedora, Red Hat Enterprise Linux und Amazon Linux

swiftly ist ein selbstinstallierendes CLI-Tool, das in Swift geschrieben ist

  • swiftly selbst ist ebenfalls in der Programmiersprache Swift implementiert
    • Dateisystemoperationen: Verwendung des Foundation-Moduls
    • HTTP-Anfragen: Verwendung von Async HTTP Client
    • Abfrage von Versionsinformationen: Verwendung von Swift OpenAPI Generator
    • Entpacken: libarchive und C-Interop
  • Es wird als selbstinstallierende Binärdatei ohne Shell-Skripte bereitgestellt → höhere Stabilität plattformübergreifend
  • Bietet eine aufgeräumte CLI-Oberfläche mit Optionen wie --help

Kompatibilität mit Linux-Distributionen und einfache Installation

  • Swift.org kann zwar das Betriebssystem erkennen, Linux-Distributionen jedoch nicht
  • Dafür wird das Swift Static Linux SDK verwendet, um Binärdateien bereitzustellen, die auf einer breiten Palette von Distributionen funktionieren
  • Nutzer können die Installation durchführen, indem sie auf der Website einfach nur einen Befehl kopieren und einfügen

Weitere Pläne und Open-Source-Aktivitäten

  • swiftly soll als Standardmethode zur Installation von Swift außerhalb von Xcode etabliert werden
  • Auch CI/CD-Umgebungen, Proxy-Server und benutzerdefinierte Installationspfade werden unterstützt → damit auch für Enterprise-Umgebungen geeignet
  • Die Entwicklung erfolgt als Open Source, Issues und PRs können auf GitHub eingereicht werden
  • Im Swift-Forum sind Q&A und Diskussionen möglich

> Besonderer Dank gilt Patrick Freed für die Entwicklung von swiftly. Die Swift-Community lässt Swift noch stärker glänzen.

1 Kommentare

 
GN⁺ 2025-03-31
Hacker-News-Kommentare
  • Steve Klabnik sprach kürzlich in einer Folge von Oxide and Friends darüber, dass das frühe Rust-Team erkannt hat, wie wichtig solche Tools sind. Das ist ein positives Signal für die anhaltenden Bemühungen von Swift und Apple, das Potenzial von Swift als allgemeine Programmiersprache außerhalb des Apple-Ökosystems zu stärken
    • Swift funktioniert gut unter Linux, macht Spaß beim Schreiben und bietet eine hervorragende Interoperabilität mit C, C++ und Java
    • Weniger gut gefallen mir: Kompilierzeiten, Binärgröße, der Overhead von Laufzeit-Typprüfungen (die Codable-Performance hat in Anwendungen Probleme verursacht) und die Schwierigkeit beim Umgang mit Async/Await
  • Ich frage mich, was mit Swift passiert ist. Früher hat man viel darüber gehört, heute nicht mehr so sehr. Vielleicht bewege ich mich auch einfach in einer Echokammer
  • Es wäre schön, wenn die Nutzung von Swift außerhalb der Apple-Welt möglich wäre
  • Ich frage mich, ob das so etwas wie UV für Swift ist, welche Vorteile es bietet und ob man Xcode fallen lassen und stattdessen das hier verwenden kann
  • Ich habe Swift seit seiner ersten Veröffentlichung nicht mehr verfolgt, frage mich aber, ob die Dokumentation besser geworden ist. Ich habe Befehle auf Stack Overflow gelesen, die ich in der Dokumentation nicht finden konnte, oder sie standen zwar dort, aber ohne nützliche Informationen
  • Einer der Gründe, warum Zig so beliebt ist, sind die eingebauten Tools. Sie sind von Tag 1 an zusammen mit der Sprache verfügbar
  • Das wird dem Swift-Ökosystem sehr helfen. Die Möglichkeit, Sprachversionen je nach Bedarf hinzuzufügen und zu entfernen, ist äußerst praktisch, und ich freue mich, dass immer mehr Sprachen so etwas bekommen
  • Ich frage mich, ob es dadurch möglich wird, Unit-Tests für Code, der UIKit importieren muss, außerhalb des Simulators auszuführen
  • Mit Windows-Unterstützung würden Leute es vielleicht einmal ausprobieren