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.
- Timestamp:
-
Jun 22, 2010, 6:47:38 AM (15 years ago)
- Author:
-
Víctor de Buen Remiro
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v12
|
v13
|
|
56 | 56 | {{{StdLib::TolPackage::Server}}} |
57 | 57 | |
58 | | == Creación de paquetes == |
| 58 | == Creación y uso de paquetes == |
59 | 59 | |
60 | 60 | Un paquete se crea como un NameBlock pero con una serie de restricciones de |
… |
… |
|
78 | 78 | * Set _.autodoc.dependencies = [["paquete1","paquete2", ...]]; |
79 | 79 | |
80 | | === Nomenclatura === |
| 80 | === Nomenclatura y versionado === |
81 | 81 | |
82 | 82 | * Los nombres de los paquetes deben seguir el estilo CamelCase |
… |
… |
|
87 | 87 | como la concatenación del nombre del paquete seguido de un punto, el número |
88 | 88 | _.autodoc.version.high, otro punto y el número _.autodoc.version.low |
89 | | * El nombre del NameBlock sin embargo es el mismo siempre por lo que se invocará |
| 89 | * El nombre del NameBlock sin embargo es el mismo siempre, por lo que se invocará |
90 | 90 | sin usar los números de versión. |
91 | 91 | * No es posible por tanto cargar dos versiones distintas de un mismo paquete en |
92 | 92 | la misma sesión TOL. |
93 | 93 | * Sí es posible cargar diferentes versiones de un mismo NameBlock en una misma |
94 | | máquina en sesiones de TOL distintas, coincidentes o no en el tiempo. |
| 94 | máquina en sesiones de TOL distintas, coincidentes o no en el tiempo. |
95 | 95 | |
96 | 96 | === Código declarativo === |
… |
… |
|
141 | 141 | * Uso de {{{MakeGlobal}}} (De hecho no debería usarse nunca) |
142 | 142 | * Como excepción a lo anterior sí está permitido el uso de {{{ PutStructure }}} ya |
143 | | que se usa a menudo como mecanismo de documentación interna del código fuente. |
| 143 | que se emplea a menudo como mecanismo de documentación interna del código fuente. |
144 | 144 | * Si un paquete necesita ejecutar alguna acción antes de ser utilizado deberá |
145 | 145 | tener un método [[BR]] {{{ Real StartActions(Real void) { ... }; }}} [[BR]] el |
… |
… |
|
151 | 151 | sentencias #Require antes de la declaración del primer miembro. |
152 | 152 | * Si no se especifican números de versión el #Require cargará la versión más |
153 | | actual que corresponderá siempre al archivo con el nombre del paquete nada |
154 | | más. En este caso los paquetes que requiera directa o indirectamente serán |
155 | | también las últimas versiones y no hace falta hacer nada previamente. |
156 | | * Si se necesita una versión concreta distinta de la última entonces se debe |
157 | | cargar previamente cada uno de los paquetes requeridos directa o |
158 | | indirectamente. Se puede hacer manualmente o bien mediante el método |
159 | | [[BR]] {{{StdLib::TolPackage::Client::ForceExactRequirements(Text package)}}} [[BR]], |
160 | | al que hay que llamar antes del #Require de cualquiera de sus dependencias. |
| 153 | actual compatible con la versión de TOL que se esté ejecutando. En el |
| 154 | caso de la última versión de TOL, corresponderá al archivo con el nombre del |
| 155 | paquete nada más. En este caso, los paquetes que requiera directa o |
| 156 | indirectamente serán también las últimas versiones compatibles con TOL. |
| 157 | * Si se solicita una versión concreta, entonces se debe cargar previamente cada |
| 158 | uno de los paquetes requeridos directa o indirectamente. El propio |
| 159 | {{{#Require}}} se encargará de buscar las versiones adecuadas en el |
| 160 | repositorio local, de instalarlas si no las encuentra, y de dar un mensaje |
| 161 | de error si no lo consigue para que se haga manualmente. |
161 | 162 | * Téngase en cuenta que no es posible cargar versiones concretas de paquetes que |
162 | 163 | tengan requerimientos de diferentes versiones de un mismo paquete. |
… |
… |
|
210 | 211 | originales, la documentación, los tests y todo aquello que se usó en la |
211 | 212 | construcción. |
212 | | * Debe haber un comité o alguien responsable de probar todos los paquetes de |
| 213 | * Debería haber un comité o alguien responsable de probar todos los paquetes de |
213 | 214 | un repositorio antes de publicar las actualizaciones de los paquetes para |
214 | 215 | asegurar la compatibilidad conjunta de todos ellos. |
| 216 | |