¿Podré usar Realm en Linux, con Perfect?

Perfecto – https://www.perfect.org – es un nuevo server web que le permite usar el mismo idioma en el lado del server como lo hace en su dispositivo. Será compatible con la versión de Linux de Swift cuando se lance antes de que finalice este año, presumiblemente porque solo usa la biblioteca estándar de Swift,

Tiene conectores para MongoDB, MySQL, PostgreSQL.

Actualmente, estoy desarrollando una aplicación usando la database Realm en Swift. ¿Podré usar Realm también en el server? ¿Solo usa la biblioteca estándar de Swift?

Realm ofrece hasta el momento dos enlaces para el desarrollo relacionado con el cocoa: Realm Objective-C y Realm Swift. Este último se basa en el primero y un envoltorio poco profundo alnetworkingedor de las API Objective-C adoptando types y protocolos de la biblioteca estándar Swift y exponiendo API más convenientes. El motivo de esa architecture en lugar de un enlace Swift puro es que Swift no permite la interfaz de código C ++, pero el motor de almacenamiento subyacente de Realm se basa en eso. Esto significa que, incluso con Realm Swift, tiene Foundation como dependencia transitiva en la que confiamos, p RLMObject Ej., RLMObject con Key-Value Coding, interoperamos con KVO, usamos los types de valores de Foundation ( NSNumber , NSArray , …).

Asumiendo que no habrá un envío de distribución de Foundation compatible con Linux con la versión de Linux de Swift, usar Realm en Linux requeriría una unión Swift "pura" de Realm, que aún no es posible, un enlace Objective-C alternativo , lo que evita la Fundación, o una implementación alternativa madura de la Fundación, donde GNUstep podría ser un candidato, pero esto no ha sido probado por nuestro lado.

Actualización n. ° 1

Swift fue de origen abierto junto con un talón de implementación de Swift de las API de Foundation como un complemento sobre las API de SO, de modo que puede usarse de manera portátil en Linux y otras plataforms donde Apple's Foundation no está disponible. Este trozo se llenó desde entonces con implementaciones reales por queueboradores del proyecto y forma parte de la versión Swift 3, por lo que se puede usar para proyectos Swift puros .

Sin embargo, esto no resuelve el problema general aquí de que Realm Swift no es Swift puro y se basa en Realm Objective-C. Por lo tanto, depende de la disponibilidad del time de ejecución y Foundation Objective-C.

Actualización n. ° 2

Recientemente anunciamos la plataforma mobile Realm , que puede ejecutar en el local o en la nube pública. Entonces, esto hace que sea posible usar Realm en Linux. Pero el acceso al lado del server es hasta ahora exclusivamente compatible con Enterprise Edition con el enlace Node.js.