2 puntos por GN⁺ 2025-03-31 | 1 comentarios | Compartir por WhatsApp
  • Se lanzó la primera versión estable de swiftly, la herramienta oficial de gestión de versiones que simplifica la instalación, administración y actualización de versiones de Swift
  • Antes, la versión más reciente de Swift solo podía usarse a través de Xcode, pero ahora es posible una instalación independiente en macOS y en varias distribuciones de Linux
  • swiftly, que comenzó como una herramienta creada por la comunidad de Swift, ahora se integró a la organización oficial de Swift en GitHub y cuenta con soporte oficial
  • Es posible instalar Swift sin Xcode y gestionar versiones fácilmente para distintos usos, como herramientas de desarrollo y entornos de servidor

Resumen de las funciones principales de swiftly

  • Permite instalar y cambiar entre múltiples versiones del toolchain de Swift
    • Ofrece comandos como swiftly install, swiftly use, swiftly list-available
    • Mediante el archivo .swift-version, se puede forzar el uso de una versión consistente entre miembros del equipo
  • También permite instalar versiones snapshot y versiones antiguas
    • Ejemplo: versiones como main-snapshot-2025-03-25 también pueden instalarse fácilmente
    • Con la sintaxis swiftly run +nombre_de_versión es posible ejecutar temporalmente con una versión específica
  • Incluye función de actualización automática
    • Con el comando swiftly self-update se pueden aplicar las funciones más recientes
  • Compatible con macOS y varias distribuciones de Linux
    • Compatible con Ubuntu, Debian, Fedora, Red Hat Enterprise Linux, Amazon Linux y más

swiftly es una herramienta CLI autoinstalable escrita en Swift

  • swiftly también está implementada en el lenguaje Swift
    • Operaciones del sistema de archivos: uso del módulo Foundation
    • Solicitudes HTTP: uso de Async HTTP Client
    • Consulta de información de versiones: uso de Swift OpenAPI Generator
    • Descompresión: libarchive e integración con C
  • Se ofrece como un binario autoinstalable sin scripts de shell → mejora la estabilidad entre plataformas
  • Proporciona una interfaz CLI limpia, con opciones como --help

Compatibilidad con distribuciones Linux e instalación sencilla

  • Swift.org puede detectar el sistema operativo, pero no puede detectar la distribución de Linux
  • Para resolverlo, se usa el Swift Static Linux SDK para ofrecer binarios que funcionan en una amplia variedad de distribuciones
  • Los usuarios pueden instalarlo simplemente copiando y pegando comandos desde el sitio web

Planes a futuro y actividad open source

  • Se adoptará swiftly como el método estándar para instalar Swift fuera de Xcode
  • También admite configuraciones como entornos de CI/CD, servidores proxy y rutas de instalación personalizadas → por lo que también es adecuado para entornos empresariales
  • Se desarrolla como proyecto open source y en GitHub es posible reportar issues y enviar PR
  • En los foros de Swift se puede participar en preguntas, respuestas y debates

Se agradece especialmente a Patrick Freed, creador de swiftly. La comunidad de Swift está haciendo que Swift brille aún más

1 comentarios

 
GN⁺ 2025-03-31
Opiniones de Hacker News
  • Steve Klabnik habló recientemente en un episodio de Oxide and Friends sobre haber reconocido, junto con el equipo inicial de Rust, la importancia de herramientas como esta. Es una señal positiva de los esfuerzos continuos de Swift y Apple por aumentar sus posibilidades como lenguaje de propósito general fuera del ecosistema de Apple
    • Swift funciona bien en Linux, es divertido escribir en él y tiene una excelente interoperabilidad con C, C++ y Java
    • Lo que menos me gusta: los tiempos de compilación, el tamaño de los binarios, la sobrecarga de las comprobaciones de tipos en tiempo de ejecución (el rendimiento de Codable causó problemas en la aplicación), y las dificultades del manejo de async/await
  • Me pregunto qué pasó con Swift. Antes se escuchaba mucho sobre él, pero ahora ya no tanto. Tal vez solo estoy en una cámara de eco
  • Ojalá fuera posible usar Swift fuera del mundo de Apple
  • Me pregunto si esto es como el UV de Swift, qué ventajas tiene y si se puede dejar de lado Xcode y usar esto en su lugar
  • No lo he visto desde que Swift salió por primera vez, pero me pregunto si la documentación ha mejorado. Leí comandos en Stack Overflow que no podía encontrar en la documentación, o que aunque sí aparecían en la documentación, no tenían información útil
  • Una de las razones por las que a mucha gente le gusta Zig es porque tiene herramientas integradas. Vienen con el lenguaje desde el día 1
  • Esto será de gran ayuda para el ecosistema de Swift. La capacidad de agregar y quitar versiones del lenguaje según se necesite es muy conveniente, y me alegra que más lenguajes estén sumando esto
  • Me pregunto si esto permitirá ejecutar fuera del simulador pruebas unitarias para código que necesita importar UIKit
  • Si hubiera soporte para Windows, la gente podría animarse a probarlo