FAQ Desarrolladores

Esta página contiene algunas preguntas-respuestas en relación al desarrollo de Dolibarr. Para preguntas-respuestas sobre su uso, consulte la página FAQ Usuarios.

Cómo convertirse en desarrollador oficial

En la galaxia del proyecto Dolibarr, hay varias partes interesadas distribuidas en diferentes niveles o grados. El número de desarrolladores y las contribuciones son importantes y, cualquier proyecto que desee tener cierto nivel de calidad, debe de estar bajo una gestión controlada y de unas modificaciones validadas para su evolución, tanto en las necesidades funcionales como en su código. Por esta razón, el acceso en escritura a los fuentes (Servidor GIT) está limitado y regido por una organización que se describe en las líneas siguientes. Cada desarrollador tiene un grado que depende de su antigüedad y de sus contribuciones. El nivel de autorización de una persona en el proyecto aumenta con las etapas de promoción de grado.

El curso de un desarrollador Dolibarr pasa a través de estas etapas, que hemos clasificado como un título familiar para los adeptos a la ciencia ficción. Estas son las etapas. Es importante comprender que esta organización tiene el único propósito de mejorar la calidad de Dolibarr y que es necesario que se respete estrictamente a fin de lograrlo. Así que no se ofenda si, como desarrollador, no dispone de un acceso GIT en escritura, antes de un cierto plazo.

* Soldado

La primera cosa que una persona dispuesta a ayudar debe realizar es familiarizase con las reglas y normas de desarrollo.

Leyendo toda la Documentación Desarrolladores, demostrará tener voluntad suficiente para convertirse automáticamente en Soldado de la alianza Dolibarr (Su grado será un nivel de Soldado). La mayoría de los desarrolladores interesados en el desarrollo de Dolibarr se clasifican en esta categoría.

El grado siguiente consiste en enviar parches, empezando por los simples, a la Lista de Correo de desarrollo (ver FAQ Desarrolladores para el procedimiento), preferiblemente al foro (Lista de Correo preferida).

Puede encontrar las tareas en espera de parche en el gestor de tareas a realizar: https://github.com/Dolibarr/dolibarr/issues

Las tareas disponibles son las tareas que tienen la propiedad "Task opened to external developers" a "si". Si el valor es "no", olvídela, ya que será tratada por un desarrollador de grado Jedi.

El número de soldado no está limitado. Además, cuantos más tengamos, más fuertes seremos. Los soldados son la principal fuerza de la alianza Dolibarr.

Dada la naturaleza de este grado, no es posible establecer una lista de todos los interesados en el proyecto Dolibarr con este grado (lista en continua evolución y muy larga).

* Z-6PO

Si habla correctamente un idioma que no está presente o está mal traducido en Dolibarr y conoce GIT, use el sistema de push para publicar sus correcciones y ajustes. El equipo seguramente le añadirá a la página oficial de traductores (Category:Z-6PO) después de varios push

Si no conoce el sistema GIT, envíe sus correcciones sobre la última versión por e-mail a la lista de correo dolibarr-dev (Inscripción desde la página https://savannah.nongnu.org/mail/?group=dolibarr). Sin embargo, es preferible la primera solución basada en los push de GIT.

* Almirante

Sólamente después de un tiempo variable (que puede ser muy largo) en la categoría de Cazador, y si la calidad de los parches envíados son satisfactorios, un Yoda le ofrecerá acceso directo a GIT. Se habrá convertido en un Almirante de la alianza Dolibarr.

Este título no se pide, se obtiene por decisión o proposición de un Jedi ó Yoda que ha estimado que ha enviado suficientes parches como para ser un Almirante serio. El acceso a GIT de un Almirante debe de ser utilizado para confirmar traducciones, correcciones de bugs declarados (BUG Tracker https://github.com/Dolibarr/dolibarr/issues) o en el foro (tanto correcciones personales como parches enviados por un Cazador). Toda confirmación GIT debe incluir obligatoriamente en la descripción (el campo log de la confirmación), el número de bug de corregido o el título del mensaje del foro que indica el problema. Sólo una traducción escapa a esta limitación (no hay restricciones para las traducciones). El incumplimiento de esta limitación, puede dar lugar a la degradación a la categoría de Soldado.

la obtención del grado de Almirante es rara porque está limitada. La calidad de Dolibarr solamente puede ser mantenida con un número de Almirantes controlado, ello no implica el tener un número de desarrolladores (Cazadores) importante (gracias al sistema de parches)

Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página Category:Admiral

* Jedi

Después de un tiempo variable (probablemente el más largo de todos) como Almirante, y si la calidad de los parches enviados es satisfactoria, un Yoda le dirá que está autorizado para realizar confirmaciones de funcionalidades sin restricciones, a condición de la aprobación de un maestro Yoda al que explicará la funcionalidad a confirmar. Puede haber una restricción temporal definida por un Yoda debido a una próxima release cercana. Usted se convertirá en un Jedi.

Ese título no se pide, se obtiene de otro Jedi o de un Yoda.

Este privilegio, sin embargo, es excepcional. La calidad de Dolibarr solamente puede ser mantenida con un número de Jedis controlado, ello no implica el tener un número de desarrolladores (Cazadores) importante (gracias al sistema de parches)

Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página Category:Jedi

* Yoda

En un número de 1 a 5, los Yoda gestionan globalmente el desarrollo del proyecto. Este rango se obtiene por sucesión, a raíz de la salida de un Yoda que se retire por nominación directa o votación de los Yoda existentes

Una lista de los colaboradores de Dolibarr con este grado se encuentra disponible en la página Category:Yoda

* ¿ Y Darth Vader ?

Existe. Siempre habrán parásitos que contaminen el foro o lista de correo con mensajes o críticas no constructivas, que frenan el desarrollo de Dolibarr en lugar de ofrecer una crítica constructiva para ayudar a avanzar. Algunos son con bastante mala intención y mal tono. Son los que llamamos Darth Vader Afortunadamente, estadísticamente sólo hay constancia de la aparición y muerte de uno o dos Darth Vader por año...

El equipo actual

Ver la página Proyecto Dolibarr para obtener una lista actualizada de las personas que trabajan en cada categoría.

Iniciar el desarrollo

Consulte totalmente la Documentación Desarrolladores para asimilar todas las normas y principios exigidos a los desarrolladores. También puede consular los siguientes FAQ.

Recuperar/actualizar una versión de desarrollo

Ve la pagina Recuperar, actualizar GIT fuentes del proyecto.

Cómo crear un nuevo Tema

Para ello consulte la página Temas

Cómo desarrollar mi propio módulo

Para desarrollar su propio módulo de numeración, consulte Crear un módulo de numeración.

Para desarrollar su propio modelo de documento, PDF o otro, consulte Crear un modelo de documento PDF o Crear un modelo de documento ODT.

Para desarrollar un módulo funcional completo (pantallas, tablas), consulte Desarrollo de un módulo.

Cómo añadir o completar una traducción

Para ello consulte la página Documentación traductores

Cambiar mi sistema de numeración de las facturas en curso

Si el nuevo sistema de numeración no entra en conflicto con el antiguo, será suficiente con ir al menú Configuración - Módulos - Configuración facturas y escojer un nuevo modelo de la lista. Si el nuevo sistema entra en conflicto, será necesario renumerar las referencias existentes. Esto se puede realizar mediante una consulta SQL. Por ejemplo, para pasar de Jupiter (FYYYYMM99) a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:

update llx_facture set facnumber=concat('FA',substr(facnumber,4,4),'-',substr(facnumber,8))
where facnumber like 'F%' and facnumber not like 'FA%';

Por ejemplo, para pasar de un modelo FAYYMM999 a Terre (FAYYMM-999), puede ejecutar la siguiente consulta:

update llx_facture set facnumber=concat('FA',substr(facnumber,3,4),'-',substr(CONCAT('0000',substr(facnumber,7)),-4))
where facnumber like 'FA%' and facnumber not like '%-%';

Enviar un parche, mejora o participar en el desarrollo

Si busca como comenzar o ayudar en los desarrollos de Dolibarr, lea el capítulo FAQ Desarrolladores - Convertirse en desarrollador oficial. Si su parche ya está listo y desea distribuirlo, este capítulo es el indicado.

Con acceso GIT

A día de hoy, los accesos en escritura a GIT están restringidas (el número de confirmaciones és bastante dinámico). Si usted posee en la actualidad de un acceso en escritura GIT, utilícelo con la condición de que sus confirmaciones corresponden a su grado de desarrollador Dolibarr (Ver FAQ Desarrolladores - Convertirse en desarrollador oficial para los diferentes grados). Si no dispone de acceso a GIT (usted está en el grado de miembro o cazador de la alianza Dolibarr), deberá seguir el procedimento que sigue a continuación..

Sin acceso GIT

Sin acceso GIT en escritura, será necesario generar y enviar un parche a la Lista de Correo (Mailing List dolibarr-dev https://savannah.nongnu.org/mail/?group=dolibarr). A continuación le explicamos como generar un parche:

En todos los SO:      

He aquí el método Pro de como trabajar para poder generar un fichero patch:

- Tener un directorio con la versión de referencia Dolibarr (resultante de la actualización desde GIT o bien el resultante de la descompresión de un snapshot tgz de Dolibarr). Llamaremos a este directorio viejo_rep. Puede recuperar el snapshot de la versión de desarrollo en curso en web ofical de Dolibarr.

- Tener otro directorio que contiene Dolibarr pero en la que realiza o ha realizado sus modificaciones. Llamará a este directorio nuevo_rep.

para generar el fichero patch, deberá ejecutar el comando diff (estándard de Linux, en windows cygwin) de la siguiente manera:

diff -BNaur --exclude=CVS --exclude="*.patch" --exclude=".#*" --exclude="*~" --exclude="*.rej"
     --exclude="*.orig" --exclude="*.bak" --exclude=conf.php --exclude=documents  
     viejo_rep nuevo_rep  > mypatch.patch

En el directorio build/patch se encuentra disponible un script ksh que realiza este comando. Envíe su parche a la Lista de Correo. la integración de su parche no está garantizada, pero si el parche ha sido realizado siguiendo rigurosamente este procedimiento, tiene muchas posibilidades de que sea testeado (de otro modo las posibilidades estarán cercanas a 0).

Bajo Windows:  

Si trabaja bajo Windows, un método menos Pro pero que dá el mismo resultado es el siguiente: Instale la excelente utilidad open source de comparación Winmerge, que puede realizar parches en formato diff -Naur. Para ello, compare con Winmerge el fichero de referencia y el modificado y escoja en el menú "Herramientas - Crear correción" (Générer des retouches en la versión francesa). Indicar un nombre de fichero como "resultat.patch", Marcar la casilla "Añadir" y escojer la opción de estilo "Unificado" (Style : unifié en la versión francesa). Haga clic en "Aceptar". Repetir el proceso para cada fichero modificado. Finalmente, obtendremos un bonito fichero que contiene todas las modificaciones en el formato correcto.

Testear/Aplicar un patch Para aplicar un archivo patch en una versión no modificada, con el fin de integrar las modificaciones contenidas en el archivo patch, puede usar la herramienta patch. Imaginemos que tiene un directorio de fuentes de una versión no modificada de Dolibarr en un servidor. Para aplicar el patch, colóquelo en el direcotrio raíz de Dolibarr y lance el comando

patch -u -p0 -d . < monfichier.patch

Información: -p0 permite utilizar la ruta completa tal como se indica dentro en el parche para encontrar los archivos a modificar (-pn retirando los n primeros niveles del árbol de directorios) -d permite precisar la ruta relativa de la carpeta htdocs a parchear. < permite indicar la ruta hacia el fichero fuente a utilizar (el patch en modo unificado) -u permite precisar que el parche está en modo unificado

Enviar un patch por mail

Una vez el archivo del parche se ha creado y testeado correctamente, debe enviar el archivo a la lista de correo dolibarr-dev (Mire aquí para ello https://savannah.nongnu.org/mail/?group=dolibarr).

Esta lista de correo es leída por la mayoría de los desarrolladores de Dolibarr, sin embargo no podemos decir si el parche será procesado ni si se incluirá. Depende de la calidad del parche y las prioridades del momento.

Cómo empaquetar/liberar un módulo

Para ello consulte la página Crear un paquete para liberar e instalar su módulo

El proceso es igualmente válido para generar un fichero para www.dolistore.com.

¿ Cómo estar informado de lo que sucede en Dolibarr ?

Ver la página FAQ Cómo puedo estar informado de lo que sucede en Dolibarr ?

Migrar mi base de datos de MySQL a PostgreSQL

Vea la página FAQ_Migrar_mi_base_de_datos_MySQL_hacia_PostgreSQL