Concepto en desarrollo de software.
En el desarrollo de software , cuando el software se ha bifurcado o utiliza una cadena de bibliotecas / dependencias , upstream se refiere a un problema que ocurre en el software relacionado con la cadena. Es la dirección que va hacia los autores originales o mantenedores del software . Generalmente se usa en el contexto de una versión, un error o un parche .
El desarrollo ascendente permite que otras distribuciones se beneficien de él cuando adopten la versión futura o fusionen parches ascendentes recientes (o todos). [1] Del mismo modo, los autores originales (que se mantienen en sentido ascendente) pueden beneficiarse de las contribuciones que se originan en distribuciones personalizadas, si sus usuarios envían parches en sentido ascendente.
El término también se refiere a errores; Se dice que la responsabilidad de un error recae en el sentido ascendente cuando no es causado por la portabilidad de la distribución , modificaciones no ascendentes o esfuerzos de integración.
Ejemplos
- Se ofrece un parche enviado previamente a los autores o mantenedores originales del software. Si se acepta, los autores o mantenedores incluirán el parche en su software, ya sea inmediatamente o en una versión futura . Si se rechaza, la persona que envió el parche tendrá que mantener su propia distribución del software del autor.
- Versión de distribución de código fuente o repositorio ascendente , que puede ser una versión etiquetada para la cual el código fuente se ha empaquetado específicamente, una confirmación específica o maestra (jerga para la última confirmación). Donde las distribuciones personalizadas (como las bifurcaciones) pueden haber perdido correcciones de errores y mejoras (maduración del proyecto vinculado a los autores originales, en sentido ascendente) como resultado de no fusionar (todos) los parches en sentido ascendente. En tales casos, la distribución personalizada puede incluso haberse adaptado para satisfacer las necesidades y requisitos específicos de quienes la utilizan o la mantienen. Esto también se ve a menudo con las dependencias (paquetes de proveedores), donde el usuario simplemente se conforma con una versión base una vez y tiende a quedarse con ella, acumulando con el tiempo tantas modificaciones (arbitrarias) o usos no estándar en su entorno que fusionan las últimas. Los parches ascendentes en su distribución personalizada no serán posibles sin un importante trabajo adicional para la compatibilidad de parches y funciones, y sin evitar parches duplicados de errores que resolvieron por sí mismos (y a su manera), mientras que los ascendentes también tienen un parche para ello. Muchos usuarios de distribuciones personalizadas aún seleccionarían y fusionarían parches críticos ascendentes (como los relacionados con vulnerabilidades de seguridad).
Ver también
Referencias
- ^ "Permanecer cerca de los proyectos upstream :: Fedora Docs". Proyecto Fedora . Consultado el 18 de enero de 2022 .