Estaba hablando con un colega sobre un comportamiento inesperado/no deseado de algún paquete que utilizamos. Aunque hay una solución fácil (o al menos una solución) de nuestro lado sin ningún efecto secundario aparente, él sugirió fuertemente extender el código relevante parcheándolo y publicando el parche corriente arriba, con suerte para ser aceptado en algún momento en el futuro. De hecho, mantenemos parches contra versiones específicas de varios paquetes que se aplican automáticamente en cada compilación nueva. El argumento principal es que esto es lo correcto, en lugar de una solución "fea" o un parche de mono frágil. Por otro lado, estoy a favor de la practicidad sobre la pureza y mi regla general es que "sin parche"> "parche de mono"> "parche duro", al menos para cualquier cosa que no sea una corrección de errores (crítica).parche (mono) parche o no (mono), esa es la pregunta
Así que me pregunto si hay un consenso sobre cuándo es mejor parche (duro), parche mono o simplemente tratar de trabajar con un paquete de terceros que no hace exactamente lo que a uno le gustaría. ¿Tiene que ver principalmente con la razón del parche (por ejemplo, corregir un error, modificar el comportamiento, agregar la característica que falta), el paquete dado (tamaño, complejidad, madurez, capacidad de respuesta del desarrollador), otra cosa o no hay reglas generales y una debería decidir caso por caso?
Otro de los beneficios de enviar el parche de aguas arriba es que se obtiene del Código examinó * por el pueblo quien hizo el software *. Eso no es insignificante. – Daenyth
Enviar el parche es genial, pero ¿cuáles son las probabilidades de que su parche sea aceptado? Los proyectos de Apache comenzaron como un conjunto de parches no oficiales para NCSA httpd porque simplemente no les gustaba aceptar parches por alguna razón. – Gabe