Estamos trabajando con Guaraní (versión 3.22.0) y nos surgió una duda al eliminar clases personalizadas.
Al ejecutar el comando de consola para actualizar el mapa de dependencias:
./bin/guarani autoload
Notamos que el proceso modifica automáticamente los siguientes archivos que pertenecen al directorio core del sistema, borrando y agregando algunas clases del core:
¿Esta bien que se modifiquen esos archivos?
Comprendemos que estos archivos funcionan como índices generados dinámicamente para el mapeo de clases.
En el SVN, ¿tendriamos que commitear estas modificaciones generadas en el core junto con nuestra perzonalización (archivos personalizacion/php/guarani_autoload_clases_nuevas.php, personalizacion/php/guarani_pers_autoload.php y personalizacion/php/guarani_clases_consultas_nuevas.php)?
En nuestro caso necesitamos eliminar una clase personalizada. ¿Deberíamos seguir el mismo criterio?
Lo consulto porque, al ejecutar “bin/autoload”, aparecen clases del core de SIU que nosotros no agregamos, pero se listan como si fueran nuevas para versionar en SVN.
En este contexto, ¿cuál sería la forma correcta de eliminar una clase personalizada y quitar su indexación del autoload?
No deberías tocar los autoload a mano, volves a ejecutar los comandos y se actualizan.
vos eliminas la clase (archivo php) y al ejecutar el comando actualiza el autoload.
Controlaste que toda la personalización esta eliminada? puede ser que te haya quedado algo y es por ello que te vuelve aparecer…?
No deberías tocar los autoload a mano, volves a ejecutar los comandos y se actualizan.
No, no actualizamos el archivo a mano, lo actualizamos con el comando “bin\guarani autoload“.
vos eliminas la clase (archivo php) y al ejecutar el comando actualiza el autoload.
Controlaste que toda la personalización esta eliminada? puede ser que te haya quedado algo y es por ello que te vuelve aparecer…?
Sí, seguimos esos pasos: eliminamos la clase personalizada (archivo .php) y ejecutamos el comando bin/guarani autoload para actualizar el autoload sin dicha clase.
Por un lado, esto funcionó correctamente, ya que logramos eliminar la clase personalizada y desvincularla del autoload.
Sin embargo, al ejecutar el comando, se modificaron archivos del core de SIU:
En estos archivos se agregaron y eliminaron clases que nosotros directamente no modificamos
Lo que necesitamos resolver puntualmente es:
¿estos cambios generados automáticamente por el comando deben versionarse (commitearse) en el repositorio, o deberían descartarse?
Estuve consultando con el equipo tecnico para darte mejor respuesta y sí, deberían commitearse, ya que son las clases que el autoload detectó que existen.
A veces agrega clases que otros agregaron pero no ejecutaron “bin/guarani autoload”, pero lo ideal es que se agreguen.