En un proyecto reciente, tuve que modificar una biblioteca de código abierto para abordar una deficiencia funcional. Seguí la mejor práctica SVN de crear un repositorio de "fuente de proveedor" e hice mis cambios allí. También envié el parche a la lista de correo de ese proyecto. Desafortunadamente, el proyecto solo tiene un par de mantenedores y son muy lentos para enviar actualizaciones.¿La mejor práctica para gestionar cambios en bibliotecas de código abierto de terceros?
En algún momento, espero que la biblioteca se actualice, y espero que mi proyecto quiera utilizar la biblioteca actualizada. Pero ahora tengo un problema potencial ...
No sé si mi parche se habrá aplicado a esta versión futura de la biblioteca de terceros. Tampoco sé si mi parche aún será compatible con la implementación interna de los componentes actualizados. Y con toda probabilidad, alguien más mantendrá mi proyecto en ese punto.
¿Debo nombrar la biblioteca de una manera especial, por lo que está claro que hicimos modificaciones especiales (por ejemplo, commons-lang-2.x-for-my-project.jar)? ¿Debería documentar el parche y hacer referencia a la ubicación SVN y un enlace al elemento de la lista de correo en un archivo README? Ninguna opción que se me ocurra parece ser infalible en un escenario de actualización.
¿Cuál es la mejor práctica para esto?
Había leído este capítulo una vez y aunque estaba haciendo las cosas bien. Sin embargo, hay algunos matices muy importantes en esta discusión que modifiqué.Gracias por hacerme leer ese capítulo otra vez, ahora tiene mucho más sentido. –
@Jeff - gracias por los comentarios. Me alegra que haya ayudado. –