La comunidad de OpenERP

Herramientas colaborativas y descarga del código fuente de OpenERP

Para llevar a buen fin los proyectos colaborativos donde participamos todas las empresas que formamos la comunidad de OpenERP, contamos con las siguientes herramientas:

Lista de correo de colaboradores de OpenERP localización española

http://groups.google.es/group/openerp-spain–> La lista de correo del grupo de localización española

FOROS

Oficial de OpenERP: http://www.openerp.com/forum/index.php

Foro en castellano de OpenERPsite.com: http://www.openerpsite.com/foro-openerp/

El Launchpad

Y esto ¿qué es?. Es un sitio Web donde los colaboradores de OpenERP de todo el mundo, comparten y publican sus proyectos. Cualquier módulo en desarrollo está en el launchpad, las traducciones, los errores, las sugerencias de mejora o de desarrollo de nuevos módulos están en el launchpad.

Estructura del Launchpad

Como ya hemos dicho antes,  launchpad es una página Web donde colaboradores de todo el mundo suben sus desarrollos y nuevos módulos. Para que esto esté un poco organizado, requiere cierto control y cierta estructura, por lo que el proyecto OpenERP en launchpad tiene un “idioma” propio que intentaremos explicar aquí.

  • STABLE: Se etiqueta así todo lo que haga referencia a la versión estable “oficial” publicada.
  • TRUNK: Se etiqueta de esta forma, la rama actual en desarrollo. Es decir, lo que vendrá en la próxima versión.
  • QUALITY: Es el equipo de OpenERP SA y algunos partners oficiales que “tocan” el nucleo de la aplicación.
  • COMMITERS: Son ramas que están siendo desarrolladas tanto por OpenERP SA como por partners oficiales, o miembros de la comunidad que tienen permisos para trabajar en estas ramas por meritocracia.
  • COMUNITY: Son los módulos desarrollados por cualquier persona o empresa que quiera publicarlo.
  • ADDONS: Módulos oficiales de una versión
  • EXTRA-ADDONS; Módulos extra o adicionales no incluidos en la versión “oficial” estable.

Cualquier módulo publicado en ramas commiters o comunity es susceptible de ser incorporado en nuevas versiones “estables” posteriores, siempre y cuando sean certificados y aprobados por el equipo quality de OpenERP.

Para accceder al launchpad:

www.launchpad.net

Buscar el proyecto OpenObject: En la página principal del proycto openobject están todos los subproyectos relacionados. Si pinchais encima entrareis en la página del subproyecto. Por ejemplo, este donde están todos los módulos de openerp: OpenObject Addons

Ir a la pestaña Code.

Aquí vemos los módulos que se han subido en sus distintas ramas, indicando el nombre del módulo, el estado en el que se encuentra, quien lo está desarrollando y la fecha en que se subió. Por ejemplo este:

lp:~openerp-commiter/openerp/account_india –> es un desarrollo de un equipo commiter y hace referencia al módulo de finanzas (account) de la india. Así, podemos hacernos una idea de lo que estamos viendo.

ADDONS y Extra-Addons

Cada versión estable publicada contiene una serie de módulos “oficiales”. Por ejemplo, en la versión 5.0 son 114 módulos. Estos serían los addons. Pero además, tenemos los módulos de extra-addons que no se incluye como parte de la versión estable. Esto puede ser por no ser lo suficientemente generales para ser útiles a todo tipo de empresas, porque no cumplen unos standares de calidad, porque tienen algún error que hay que reparar (aunque no es lo habitual) o porque ya se ha incluido otro módulo que cubre la misma o parecida funcionalidad.

Esto sucede por ejemplo, en aquellos módulos que hacen referencia únicamente a un sector de negocio, o cubren un requerimiento muy concreto. En la versión actual 5.0 en mayo de 2010 existen más de 350 módulos publicados en extra-addons y unos 150 publicados en ramas community. Hay muchísimos que pueden ser sumamente interesante para ampliar la funcionalidad básica de OpenERP por lo que se recomienda echar un vistazo al contenido de la rama. En este enlace podemos ver 4 ramas principales del desarrollo de openERP. Habitualmente estas 4 ramas principales serán las que estén en primer lugar.

lp:openobject-addons Series: trunk –> trunk addons: Módulos oficiales de la nueva versión 6.0 (no estable)

lp:openobject-addons/5.0 Series: 5.0 –> Módulos oficiales de la versión estable 5.0

lp:openobject-addons/extra-5.0 Series: extra-5.0 –> extra 5.0 : Módulos extra de la versión estable 5.0

p:openobject-addons/extra-trunk Series: extra-trunk –> Módulos extra de la nueva versión

NOTA IMPORTANTE: En la nueva trunk versión de desarrollo (futura 6.0). los ficheros  __terp__.py (TERP viene de TinyERP, antiguo nombre de OpenERP)  han sido renombrados a __openerp__.py

Si estás usando un servidor 5.0, tendrás que usar asegúrate que ese módulo que estás copiando a la carpeta addons contiene un fichero __terp__.py, o renombrar el __openerp__.py a __terp__.py . En principio, los archivos __terp__.py son compatibles también con la 6.0 pero conviene renombrarlos según su nueva nomenclatura.

Proyecto de localización de España

Todos nuestros proyectos de localización están accesibles y disponibles para su descarga en:

- https://launchpad.net/openerp-spain

Las traducciones de todos los idiomas también tienen rama propia y están en esta otra rama del launchpad.

- https://translations.launchpad.net/openobject

Las traducciones de OpenERP al Español de las versiones actuales (4.2 y 5.0) han sido realizadas principalmente por nuestro colaborador Jordi Esteve de Zikzakmedia, que ha dado un impulso fuerte para mejorar la calidad de la traducción y su coherencia. A partir de este punto es importante que más gente se implique en traducir los nuevos términos que vayan apareciendo y corregir algunos de los ya traducidos.

Como bajarse módulos y últimas versiones desde launchpad

Lo primero que teneis que hacer es instalaros bazaar. Lo podeis descargar aquí:

www.bazaar-vcs.org

Posteriormente, ejecutais bazaar y en la línea de comandos, poneis el código que aparece en cada rama del launchpad, en el apartado: Get this branch:

bzr branch lp:~openerp-commiter/openobject-addons/trunk-extra-addons

Esto os descargará un ZIP con todos los módulos que contiene la rama. Posteriormente los instalais de la forma habitual, es decir.

  • Descomprimir el ZIP
  • Copiar a server/addons la carpeta que contiene el módulo que se quiera instalar
  • En el Cliente de Open, bien sea vía Web, bien GTK ir a Administración/módulos
  • Actualizar lista de módulos –> Indicará cuantos nuevos hemos incorporado a nuestra implantación.
  • Doble click en lista de módulos
  • Se abre una pantalla con todos los módulos instalados y los que no.
  • Seleccionar los que queremos instalar y programar actualizaciones.

————————————————————————————————–

Adjunto manual de Angel Moya mucho más detallado, para trabajar con launchpad:

Hola, he empezado con lo del manual, tengo la primera parte para explicar un poco como bajar el código y subirlo luego, lo he publicado tambien en mi blog, a ver que os parece y si me podeis corregir si algo no se ve claro.

Launchpad y Bazaar para colaborar con OpenERP

By Angel Moya

La semana pasada estuve en Bilbao en las jordanas estatales de OpenERP y me quede impresionado con el funcionamiento de la comunidad. Como hace tiempo que estoy dándole vueltas a la documentación y pensando en traducirla he decidido que lo primero con lo que voy a empezar a colaborar es con la traducción de la documentación. Las herramientas necesarias para colaborar con OpenERP son Launchpad y Bazaar, vamos a ver que son y como se utilizan si queremos descargar código (en este caso será el código de la documentación), modificarlo y volverlo a subir para que este disponible para la comunidad.

Según la wikipedia “Launchpad es una aplicación web y un sitio web que apoya el desarrollo de software, en particular el de software libre. Está desarrollada y mantenida por Canonical Ltd..”, puedes ver el articulo completo aqui. Launchpad da soporte para compartir código y controlar versiones, reportar errores (Bugs), sugerir modificaciones y nuevas funcionalidades (blueprints), crear traducciones y para dar respuestas a preguntas de la comunidad. La herramienta que permite compartir el código y controlar versiones es Bazaar, luego veremos como funciona.

Para poder colaborar en cualquier proyecto alojado en Launchpad tendremos que registrarnos en la web de Launchpad. Una vez tengas tu cuenta en launchpad puedes unirte al grupo openerp-community. No es necesario unirse a ningún grupo para descargarte el código, pero si para subir modificaciones.

Bazaar es la herramienta que permite descargar el código y controlar las versiones a la hora de subirlo. Puedes ver mas en Bazaar en cinco minutos. Para instalar bazaar en ubuntu 9.10 hacer lo siguiente:

echo 'deb-src http://ppa.launchpad.net/bzr/ubuntu karmic main' | sudo tee -a /etc/apt/sources.list
echo 'deb http://ppa.launchpad.net/bzr/ubuntu karmic main' | sudo tee -a /etc/apt/sources.list
apt-get update
apt-get install bzr

para instalarlo en otra versión de ubuntu simplemente cambia el nombre de la versión al añadir los repositorios, y para otro sistema operativo puedes ver la guía aquí.

La idea es la siguiente, el código compartido en bazaar se organiza en ramas o branches, por ejemplo el proyecto openerp-server tiene una rama llamada trunk para el código en desarrollo, y una rama 5.0 para la versión estable. Así que si queremos descargarnos la versión estable de openerp-server podemos hacer:
bzr brach lp:openobject-server/5.0
y para descargarnos el código de la documentación:

bzr branch lp:openobject-doc

con esto se nos crea un directorio llamado openobject-doc que contendrá el código de la documentación. En el próximo post explicare la estructura del código de la documentación y como se crean las traducciones.

Bazaar es una herramienta distribuida de control de versiones así que lo que hemos hecho realmente al descargar el código es crear una rama en nuestro repositorio local, si modificamos el código antes de subirlo tendremos que sincronizar nuestra rama con la original, obtendremos los cambios realizados desde que descargamos el código o desde la última revisión que hicimos y lo sincronizaremos con nuestra rama local.

Para poder publicar nuestro código con Bazaar primero tendremos que identificarnos, por un lado nos identificaremos con nuestro usuario de Launchpad:
bzr launchpad-login nombre_usuario_launchpad
la primera vez que lo ejecutemos se creara el fichero /home/angelmoya/.bazaar/authentication.conf con la información de nuestro usuario.

Por otro lado tenemos que identificar nuestro equipo con la clave ssh key, para conseguir nuestra clave ssh key en ubuntu lo haremos así:

#Instala OpenSSH
sudo apt-get install openssh-client
#Genera la clave
ssh-keygen -t rsa
# - Presiona intro para aceptar el nombre por defecto
# - Introduce la contraseña

Con esto se genera en el directorio /home/usuario/.ssh/ una pareja de claves, id_rsa la clave privada y id_rsa.pub la clave publica. La clave privada se quedara en tu equipo y la publica hay que subirla a tu perfil de launchpad. Logeate en Launchpad.net con tu usuario y accede a tu página para editar la información de SSH keys.

Copia en esa ventana la información que hay dentro del fichero /home/usuario/.ssh/id_rsa.pub y clicka el botón Import Public Key para terminar.

Con esto ya tienes tu equipo preparado para subir modificaciones del código. Si te has descargado el código del proyecto openobject-doc y has realizado alguna modificación, ve al directorio de openobject-doc y haz lo siguiente:

Sincronizamos nuestros cambios con los que se han realizado en openobject-doc desde la ultima sincronización
bzr merge
Hacemos un commit para indicar los cambios que hemos realizado
bzr ci -m "[TAG] Mensaje explicando cambios hechos"
Por último subimos los cambios
bzr push
Para mas información puedes consultar aquí.

Por último, cuando realices el commit, según se indica la documentación de Open ERP aquí sobre como subir tus modificaciones, en el mensaje hay que indicar que tipo de modificación has realizado, esto se indica con el [TAG] las diferentes opciones son:

  • [IMP]: Mejoras
  • [FIX]: Corrección de errores
  • [REF]: Refactorizar, modificar el código sin cambiar la funcionalidad
  • [ADD]: Añadir fuentes
  • [REM]: Eliminar fuentes

Con esto ya hemos visto como trabajar con Launchpad y Bazaar, en el siguiente post veremos como trabajar en la traducción.

P.D.

Incluir también este link importante que nos pasa Nhomar con las guidelines para contribuir al proyecto: http://doc.openerp.com/contribute/15_guidelines/contribution_guidelines.html

  1. #1 by joborall on 9 noviembre 2011 - 23:14

    Traceback (most recent call last):
    File “/home/atikasoft/proyectoN/version6/openobject-server/openerp/osv/osv.py”, line 119, in wrapper
    return f(self, dbname, *args, **kwargs)
    File “/home/atikasoft/proyectoN/version6/openobject-server/openerp/osv/osv.py”, line 173, in execute
    res = self.execute_cr(cr, uid, obj, method, *args, **kw)
    File “/home/atikasoft/proyectoN/version6/openobject-server/openerp/osv/osv.py”, line 164, in execute_cr
    return getattr(object, method)(cr, uid, *args, **kw)
    File “/home/atikasoft/proyectoN/version6/covipro_addons/annual_planning/code/administration/project_cvp.py”, line 224, in btnRegistrar
    self.write(cr, uid, ids, {‘state’:'validate’}, context=context)
    File “/home/atikasoft/proyectoN/version6/openobject-server/openerp/osv/orm.py”, line 3691, in write
    self.check_access_rule(cr, user, ids, ‘write’, context=context)
    File “/home/atikasoft/proyectoN/version6/openobject-server/openerp/osv/orm.py”, line 3460, in check_access_rule
    raise orm.except_orm(_(‘AccessError’), ‘%s access is ‘
    NameError: global name ‘orm’ is not defined

(No será publicado)


buy prednisone cheap propecia