Una nueva versión de .NET se lanza en noviembre de cada año, alternando el soporte a largo plazo (LTS) y las versiones de soporte de término estándar (STS). La calidad de todos los lanzamientos es la misma. La única diferencia es la duración del soporte. Las versiones de LTS son compatibles durante 3 años, mientras que las versiones de STS son compatibles con 18 meses.
Con el lanzamiento de Godot 4.0, movimos nuestros paquetes C# de Mono de apuntar a .NET 6. Esta versión de .NET se lanzó el 8 de noviembre de 2021 y terminamos con soporte el 12 de noviembre de 2024.
Con el soporte remaining de .NET 6, los paquetes de Godot C# en 4.4 se dirigirán a la versión precise del LTS, .NET 8. Gracias a Redworkde y Paul Joannon por su gran trabajo en GH-92131.
.NET Launch Cadence de la Política de soporte oficial de .NET.
¿Qué significa esto para los usuarios?
Comenzando con Godot 4.4, su proyecto deberá apuntar a .NET 8 o más nuevo, de lo contrario será incompatible con el nuevo GodotSharp
paquetes. Todavía podrá usar otras bibliotecas que se dirigen a versiones .NET mayores.
Los proyectos existentes se actualizarán automáticamente a Goal net8.0
cuando se abren con Godot 4.4. Si su proyecto ya se dirige a .NET 8 o más nuevo, nada cambiará. Esto se implementó en GH-100195.
¿Qué tardó tanto?
La versión de .NET que se dirige una biblioteca se convierte en la versión mínima requerida para los consumidores de esa biblioteca. Es decir, si el GodotSharp
objetivos de paquete net7.0
tu proyecto de juego necesita apuntar net7.0
o más nuevo. No queríamos obligar a nuestros usuarios a actualizar a una versión no LTS.
Cuando .NET 8 se lanzó en noviembre de 2023, habría sido un buen momento para aumentar la versión objetivo en los paquetes Godot C#, ya que .NET 8 es un lanzamiento de LTS. Desafortunadamente, hubo algunos cambios de ruptura en .NET 71 Eso nos impidió actualizar, y hacer los cambios requeridos nos llevó más tiempo de lo que esperábamos.
Sin embargo, los usuarios siempre pueden usar la última versión de .NET en sus proyectos. Hasta ahora, .NET 6 ha sido la versión mínima requerida, pero las versiones más nuevas siempre han sido compatibles desde el primer día (incluso los pre-relajados2). En 4.4, el nuevo mínimo ahora es .NET 8, pero como siempre, sus proyectos pueden apuntar a la versión reciente de STS .NET 9 y cualquier versión más nueva que se lance en el futuro.
Las bibliotecas tienden a permanecer en versiones más antiguas de .NET para admitir tantos consumidores como sea posible. Pero actualizar a la última versión de .NET trae beneficios que queremos aprovechar.
¿Qué pasa con los lanzamientos de Godot mayores?
Alentamos a los usuarios a actualizar a la última versión de Godot. Trabajamos duro para evitar la compatibilidad de la ruptura, para asegurarnos de que pueda actualizar de manera segura a nuevas versiones de Godot cuando se liberen. Por favor, asegúrese de probar los prelabastecen y avísenos si encuentra algunos errores para que podamos solucionarlos antes de la versión estable.
Las versiones anteriores de Godot seguirán apuntando a .NET 6; No cambiaremos la versión de destino en actualizaciones de parches, ya que ese sería un gran cambio de ruptura. Si aún necesita apuntar a .NET 6, puede permanecer en una versión anterior de Godot, pero le recomendamos encarecidamente que se actualice para beneficiarse de todas las correcciones y mejoras incluidas en la última versión de Godot y el tiempo de ejecución .NET.
¿Qué pasa con los lanzamientos futuros de .NET?
Godot siempre admite la última versión de .NET. La versión dirigida por los paquetes C# de Godot es solo la versión mínima a la que su proyecto puede orientar, pero siempre es libre de apuntar a una versión más nueva de .NET. Para apuntar a la última versión de .NET 9 en su proyecto, solo necesita instalar la última versión del SDK .NET y cambiar el TargetFramework
propiedad en su .csproj
:
net9.0
true
Siempre debe usar la última versión del .NET SDK incluso cuando se dirige a una versión de .NET anterior en sus proyectos.
Seguiremos actualizando nuestros paquetes C# a la última versión de LTS a medida que sean lanzados. El próximo lanzamiento de LTS será .NET 10, que se debe en noviembre de 2025.
- .Web 7 introdujo el nuevo
scoped
palabra clave. Esta característica rompe la compatibilidad en algunos escenarios de bajo nivel que afectaron a Godot. ↩ - Si bien Godot generalmente respalda los prelebosices, pueden requerir que los usuarios los habiliten estableciendo el
DOTNET_ROLL_FORWARD_TO_PRERELEASE
entorno variable a1
. Tenga en cuenta que los prelabastamientos siguen siendo un trabajo en progreso, por lo que puede haber errores.
Raúl Santos
También publicado aquí
Foto de Erda Estremera en Unsplash