Si no esta bazaar instalado despliega excepción en pantalla principal

Bug #947072 reported by Gustavo Mazeikis
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Geined
Fix Released
Medium
Unassigned

Bug Description

En el metodo principal() del archivo geined.py se asume que el sistema bazaar está instalado. En consecuencia se intenta desplegar el último número de revisión del código, con el comando " bzr revno".
Pero si bazaar no está instalado se despliega en la pantalla principal la siguiente excepción, junto con toda la traza de invocaciones que la provocan:

<type 'exceptions.OSError'>: [Errno 2] No such file or directory
      args = (2, 'No such file or directory')
      child_traceback = 'Traceback (most recent call last):\n File "/usr/...st)\nOSError: [Errno 2] No such file or directory\n'
      errno = 2
      filename = None
      message = ''
      strerror = 'No such file or directory'

Una forma de evitar este despliegue es capturando la excepción disparada por la ausencia de bazaar y desplegando un texto adecuado que informe al usuario la ausencia del último número de revisión del código.
A modo de ejemplo se propone el siguiente código para el método prinicipal()

   try:
     p = subprocess.Popen(["bzr", "revno"], shell=False, stdout=subprocess.PIPE)
     v = p.communicate()
     version = str(v[0])
    except Exception, e:
     version = "Desconocida"

Changed in geined:
milestone: none → bellavista
Changed in geined:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
Marcelo Escobal (marcelo-escobal) wrote :

Modificado. En lugar de "Exception", usé OSError que es un poco más específica.
De lo contrario pylint da un "Warning".

Changed in geined:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.