close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 11 years ago

Closed 11 years ago

#1767 closed defect (fixed)

Error en TolPackage: FormatRecord_Autodoc

Reported by: Jorge Owned by: Pedro Gea
Priority: normal Milestone: TOL Packages
Component: TolPackage Version: 3.1
Severity: normal Keywords:
Cc: aberzosa

Description

Si el directorio Client donde están instalados los paquetes contiene un directorio con un "nombre inválido" se produce un error al pedir información para un ese nombre de paquete. Por ejemplo se ha dado el caso en el que se tenía un directorio con nombre "ArimaTools.6.6_kk" y se genera el siguiente error:

[TolPackage::Server] Catalog 3.36 s.

ERROR: [1] No se ha encontrado elemento con nombre name

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

Warning: [1] La función :: ha fallado en : 
record::name

ERROR: [2] _.autodoc.name no se pudo crear.

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

ERROR: [3] Argumentos erróneos para Set SetOfAnything (Anything var1 [, Anything var2, ...])

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

ERROR: [4] autodoc no se pudo crear.

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

ERROR: [5] No se ha encontrado elemento con nombre identifier

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

Warning: [2] La función :: ha fallado en : 
record::identifier

ERROR: [6] autodoc no es un objeto valido para el tipo Set.

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

Warning: [3] La función PutName ha fallado en : 
PutName(record::identifier, autodoc)

ERROR: [7] Fallo en la función "FormatRecord_Autodoc"

[Call stack]
  [2] Set TolCore::TolPackage::@Catalog::FormatRecord_Autodoc (Set record)
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

Warning: [4] La función :: ha fallado en : 
@Catalog ::FormatRecord_Autodoc(record)

ERROR: [8] Fallo en la función "GetPackageInfo"

[Call stack]
  [1] Set TolCore::TolPackage::Client::GetPackageInfo (Text name.version)

Warning: [5] La función :: ha fallado en : 
TolPackage::Client::GetPackageInfo("ArimaTools.6.6_kk")

ERROR: [9] Argumentos erróneos para Set SetOfAnything (Anything var1 [, Anything var2, ...])

ERROR: [10] tmp no se pudo crear.

ERROR: [11] tmp no es un objeto valido para el tipo Set.

ERROR: [12] Argumentos erróneos para Set SetOfAnything (Anything var1 [, Anything var2, ...])

ERROR: [13] __tmp_Anything_5__ no se pudo crear.}}}

Change History (4)

comment:1 Changed 11 years ago by Pedro Gea

El problema procede de la alteración manual de un archivo de configuración del programa (directorio %APPDATA%). No deben editarse esos archivos y carpetas si no se sabe lo que se hace. Cualquier software o aplicación que tengas instalado fallará si tocas esos archivos de manera indiscriminada.

comment:2 Changed 11 years ago by Pedro Gea

Concretamente es el código de la GUI del gestor de paquetes el que produce el error al preguntar por todas las carpetas ubicadas en: %APPDATA%\tol\TolPackage.2\Client.
Véase el código de: tolp/trunk/tolbase/lib/toltk/tolpkg.tcl líneas 146 a 161: ::TolPkg::GetLocalPackages y ::TolPkg::GetLocalPackageInfo

En dicho directorio no debe haber otra cosa que carpetas con el nombre de un paquete y en su interior: un archivo info.oza, un archivo OZA con el mismo nombre del paquete y el resto de archivos adicionales (no-TOL) del paquete si los hubiera.

Algo como:

- TolPackage.3
    - Client
      - MyPackage.1.2
        * info.oza
        * ThePackage.1.2.oza
      + MyPackage.1.3
      ...

No deben incluirse o incorporarse otros archivos o carpetas auxiliares, o copias de las carpetas existentes, etc.

comment:3 Changed 11 years ago by Pedro Gea

(In [6193]) Refs #1767
Se evita la parte del error debida a la llamada a TolPackage::@Catalog::FormatRecord_Autodoc

comment:4 Changed 11 years ago by Pedro Gea

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.