🔄 Compatibilidad de versiones y ciclo de soporte
Esta página documenta la matriz de compatibilidad, reglas de compatibilidad futura y gestión de dependencias de Agrarian Reform.
📌 Aviso sobre el código del repositorio: La documentación refleja el estado actual del código fuente en el repositorio, que puede incluir cambios aún no publicados en CurseForge o Modrinth.
📊 Matriz de compatibilidad de versiones de Minecraft
| Versión de Minecraft | Compilación | Estado | Java | Fabric Loader | Restricción de dependencia |
|---|---|---|---|---|---|
| Minecraft 26.3 | 2.2.18+26.3 | Línea principal activa (Snapshot 6+) | Java 25 | >=0.16.9 | "minecraft": ">=26.3-" |
| Minecraft 26.2 | 2.2.18+26.2 | Línea principal activa (Estable) | Java 25 | >=0.16.9 | "minecraft": ">=26.2-" |
| Minecraft 26.1.2 | 1.2.7+R-26.1.2 | Archivado / Deprecado | Java 25 | >=0.15.0 | "minecraft": ">=26.1.2" |
🛡️ 1 Jar 1 Version y límites abiertos
Agrarian Reform sigue estrictamente la política de 1 Jar 1 Version y el mandato de compatibilidad hacia adelante:
- Compilaciones dedicadas: Cada archivo JAR se compila, prueba y archiva específicamente para una versión objetivo de Minecraft (
agrarian-reform-2.2.18+26.2.jaryagrarian-reform-2.2.18+26.3.jar). - Límite inferior abierto: En
fabric.mod.json, la dependencia de Minecraft se especifica con un límite abierto:jsony para 26.3:"minecraft": ">=26.2-"jsonEsto evita bloqueos innecesarios de Fabric Loader en versiones de parche posteriores."minecraft": ">=26.3-" - Comodines en dependencias: Las dependencias como
dasik-libraryusan comodines ("*") para evitar bloqueos falsos al actualizar librerías.
🔄 Arquitectura moderna y Codecs de SavedData
- Lanzamientos anuales (Annual Drops): Minecraft adoptó el sistema
Year.Drop.Patch. Las versiones 26.2 y 26.3 representan los drops activos modernos. - Era no ofuscada: Las bases de código 26.x funcionan con mappings oficiales de Mojang. Términos heredados de Yarn están obsoletos.
- Modernización de SavedData: Los datos persistentes del mundo usan
SavedDataTypecon Codecs explícitos en lugar de métodos antiguos de NBT:
java
public static final SavedDataType<ContinuumData> TYPE = new SavedDataType<>(
Identifier.fromNamespaceAndPath("agrarian_reform", "continuum"),
ContinuumData::create,
Codec.unboundedMap(Codec.STRING, Codec.LONG).xmap(
map -> {
ContinuumData data = new ContinuumData();
map.forEach((k, v) -> data.timestamps.put(Long.parseLong(k), v));
return data;
},
data -> {
Map<String, Long> map = new HashMap<>();
data.timestamps.forEach((k, v) -> map.put(k.toString(), v));
return map;
}
),
DataFixTypes.SAVED_DATA_MAP_DATA
);Véase también: Guía de Minecraft 26.2 y 26.3 y API e integración de addons.
