¿Por qué TeX Live "requiere" actualizaciones anuales?

¿Por qué TeX Live "requiere" actualizaciones anuales?

Cada año, TeX Live ofrece una nueva versión. Lo que recuerdo es que poco después del lanzamiento de una nueva versión, la versión anterior tlmgrdeja de buscar actualizaciones para los paquetes. Ellos proveeninstrucciones de actualizacióncon el descargo de responsabilidad

Este procedimiento no es a prueba de balas, ni especialmente recomendado.

No existe una ruta de actualización para Windows. Mirando a lahistorial de lanzamiento, no me queda claro qué cambia realmente entre versiones, por lo que se requiere/recomienda una nueva instalación completa. Siempre pensé que TeX Live proporcionaba archivos binarios útiles (por ejemplo, pdflatex, bibery makeindex) y una manera conveniente de actualizarCTANpaquetes. ¿Qué me estoy perdiendo? ¿Por qué TeX Live necesita una nueva instalación cada año?

Respuesta1

Ok, aquí hay una respuesta como desarrollador principal de tlmgr y toda la infraestructura de TeX Live. Tienes que decidir dos cosas:

  • el período de congelación antes del lanzamiento de una nueva versión
  • capacidad de actualización de una versión a la siguiente

Respecto al primero, período de congelación: Normalmente durante el año hacemosnorealice actualizaciones a los archivos binarios reales, pero solo a los scripts y el paquete. Eso significa que, en la preparación de una nueva versión, es necesario volver a compilar todos los binarios, lo cual es una tarea enorme que implica mucho tiempo e iteraciones. Se corrigen errores y se adapta el código para que funcione en todas las plataformas (¡y hay muchas!). Durante este tiempo hacemosnoDesea realizar actualizaciones parciales de algunos binarios, porque a veces es necesario ir acompañado de actualizaciones de archivos de biblioteca.

Otro punto es que durante el período de congelación a veces se incluyen nuevas características críticas en la infraestructura de texlive y tlmgr, que serían demasiado peligrosas para ser lanzadas al mundo en el curso normal.

Y, por último, también se trata de llegar a un estado que pueda imprimirse en un DVD.

Ahora, para la capacidad de actualización entre versiones: la razón en los primeros años fueron cambios en los componentes internos que nopermitiractualizaciones (como formato de codificación interna de opciones, etc.). Esta fue en los primeros años (digamos, 2008-2010) la razón más común. Una actualización normal simplemente no eratrivialmenteposible. Por supuesto, se podría escribir un script de actualización y crear un instalador de NSIS para Windows, pero no tenemos tiempo para eso. Somos voluntarios y tenemos que concentrarnos en las cosas importantes.

En los últimos años (digamos desde 2010) siempre hubo un procedimiento de actualización, aunque normalmente no lo probamos mucho; esa es la razón por la que no lo recomendamos. El espacio en disco es hoy en día bastante abundante, por lo que tener dos instalaciones en paralelo no es tan complicado. Pero aun así, siempre existía la manera de mejorar.

Desafortunadamente, en Windows esto no es tan trivial, ya que el desinstalador y el registro, etc., están vinculados a los años de lanzamiento, es simplemente una molestia en Windows, pero ese es un caso especial.

Finalmente, una razón más: en muchos casos durante el último año, una actualización o una nueva instalación no habría cambiado mucho en la cantidad de datos descargados, como suele sucedertodolos paquetes se actualizaron de una forma u otra (debido a cambios internos), lo que significaba que una actualización habría implicado descargar todos los paquetes, al igual que la instalación.

Espero que todo esto aclare un poco más nuestra intención, y si hay algo que no está claro, o si alguien tiene mejores ideas sobre cómo abordarlo, ¡estamos abiertos a sugerencias!

Respuesta2

No puedo hablar por TeX Live en particular, pero he estado involucrado con distribuciones de Linux desde sus inicios, y creo que mis observaciones allí también son relevantes para TeX Live (ambas son colecciones de piezas dispares que deben seleccionarse, integrarse y convencidos de trabajar bien juntos, cada pieza evoluciona a su propio ritmo).

Si bien en un mundo perfecto dicha colección de software se mantendría para siempre, esto no es práctico. Aparecen nuevos paquetes, se revisan los paquetes antiguos, algunos paquetes son reemplazados por nuevas formas de realizar el trabajo. Mantener, digamos, TL-2011 significaría seguir funcionando "a la antigua usanza", incluso si upstream ha abandonado el paquete (o lo ha cambiado tanto que ya no es un reemplazo directo). Eso significa un sinfín de backporting y corrección de errores antiguos. Los voluntarios para esto sólo se encuentran entre masoquistas incondicionales.

El mantenimiento de TeX Live requiere personas con conocimientos en un área bastante esotérica, y esas están enmuypequeño suministro. O mantienen 2011 para siempre (y no 2012, 2013,...) o se concentran en construir y enviar la última versión. Además, trabajar en shiny&new siempre es más divertido, por lo que hay más potencial para atraer nuevos reclutas allí.

Quizás sean suficientes para mantener dos versiones razonablemente actualizadas, pero supongo que no (ya que han decidido que no tienen la mano de obra necesaria, por lo que es obligatoria una actualización anual).

Respuesta3

Además de la excelente respuesta de @vonbrand, una razón importante para actualizar y "congelar" tex live anualmente es proporcionar una instantánea estable en medios físicos, en gran medida para beneficio de los miembros de los distintos grupos de usuarios, pero también para los usuarios de tex que no No tengo cómodo acceso a Internet.

este DVD (ya no cabe en un CD) también viene empaquetado físicamente con algunos libros relacionados con (la)tex, particularmente en Alemania; este embalaje (comercial) es la razón por la que cualquier cosa con una licencia restrictiva (no libre) debe excluirse de la colección.

Respuesta4

Para agregar más información a las respuestas de @vonbrand y @barbara beeton:

Otra razón es cambiar las cosas infraestructurales. Hace algún tiempo tlmgrse presentó la herramienta de gestión con una interfaz gráfica para (principalmente) usuarios de Windows. También se cambió el formato del paquete (creo que fue de TL2008 a TL2009) de LZO a XZ, lo cual no era posible si no se solicitaba una nueva instalación ya que se cambió toda la infraestructura.

Sin embargo, a menudo es posible actualizar, por ejemplo, de TL2011 a TL2012 sin ninguna nueva instalación completa. Pero ten cuidado: esto esnoapoyado por los desarrolladores y esno¡recomendado! Funciona en algunos casos y en otros no.

Tengo la esperanza de que haya algún tipo de esquema de lanzamiento continuo (como por ejemplo en Arch Linux o Gentoo), ya que este fue un tema varias veces en la lista de correo de TeX Live.

información relacionada