Changeset 5e2fd51 in tol


Ignore:
Timestamp:
Jun 15, 2010, 2:43:08 PM (16 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
bcb9e10
Parents:
4e8c2a9
Message:

Refs #916
Todos los campos vienen explícitamente especificados en el fichero de estado del repositorio.
Será la parte del servidor la que se ocupe de que esa información esté correctamente expresada.

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@2242 be4846ae-f051-483a-831f-b64e7d08527f

Location:
tol/stdlib/general/TolPackage
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • tol/stdlib/general/TolPackage/repository.tol

    r4e8c2a9 r5e2fd51  
    1414  Real version.high,
    1515  Real version.low,
    16   Text desc,
     16  Text description,
    1717  Set  keys,
    1818  Set  authors,
    … …  
    141141        Real version.high = Eval(fields[2]),
    142142        Real version.low = Eval(fields[3]),
    143         Real name.version = If(IsUnknown(version.high),name,
    144           name+"."<<version.high+"."<<version.low),
    145         Text desc = fields[4],
    146         Set keys =  Eval(fields[5]),
    147         Set authors =  Eval(fields[6]),
    148         Text minTolVersion = fields[7],
    149         Text releaseDate = fields[8],
    150         Set dependencies = Eval(fields[9])
     143        Real name.version = Eval(fields[4]),
     144        Text description = fields[5],
     145        Set keys =  Eval(fields[6]),
     146        Set authors =  Eval(fields[7]),
     147        Text minTolVersion = fields[8],
     148        Text releaseDate = fields[9],
     149        Set dependencies = Eval(fields[10])
    151150      ) ]] };
    152151      Set PutName(aux[1]->name.version,aux[1]);
    … …  
    159158    Real SetIndexByName(_.status);
    160159    Set Append(_.allPackages,_.status, True);
     160    Set _.allPackages := Sort(_.allPackages,Real(@PackageInfo a, @PackageInfo b)
     161    {
     162      Compare(b->name.version, a->name.version)
     163    });
    161164    Real numErr1 = Copy(NError);
    162165    _.connected := And(numErr1==numErr0,Card(_.status))
  • tol/stdlib/general/TolPackage/server.tol

    r4e8c2a9 r5e2fd51  
    44// PURPOSE: TolPackage server side tools
    55//////////////////////////////////////////////////////////////////////////////
     6
     7/*
     8Reglas de construcción de paquetes y repositorios:
     9
     10 * No puede haber paquetes con el mismo nombre de NameBlock ni el mismo ni en
     11distinto repositorio.
     12 * No está permitido el requerimiento cíclico directo ni indirecto entre
     13paquetes, es decir, si A requiere a B directa o indirectamente B no puede
     14requerir a A ni directa ni indirectamente.
     15
     16*/
    617
    718//////////////////////////////////////////////////////////////////////////////
    … …  
    1829//////////////////////////////////////////////////////////////////////////////
    1930{
    20   Text AppendFile(file, info);
     31  Text info =
     32  "repository;"+
     33  "name;"+
     34  "name.version;"+
     35  "version.high;"+
     36  "version.low;"+
     37  "description;"+
     38  "keys;"+
     39  "authors;"+
     40  "minTolVersion;"+
     41  "releaseDate;"+
     42  "dependencies;\n";
     43  Text WriteFile(file, info);
    2144  True
    2245};
    2346
    2447//////////////////////////////////////////////////////////////////////////////
    25 Real AddPackageInfo.Version(Text file, NameBlock pkg, Real specificVersion)
     48  Set GetNameVersion(Text packageName, Real specificVersion)
    2649//////////////////////////////////////////////////////////////////////////////
    2750{
    28   Set dependencies = pkg::_.autodoc.dependencies = Copy(Empty);
     51  NameBlock p = Eval(packageName);
     52  Text name.version = If(!specificVersion,packageName,
     53    packageName+"."<<p::_.autodoc.version.high+"."<<p::_.autodoc.version.low)
     54};
     55
     56//////////////////////////////////////////////////////////////////////////////
     57  Set GetDeepDependencies(Text packageName, Real specificVersion)
     58//////////////////////////////////////////////////////////////////////////////
     59{
     60  NameBlock p = Eval(packageName);
     61  Text name.version = GetNameVersion(p);
     62  If(!Card(p::_.autodoc.dependencies), Copy(Empty),
     63  {
     64    Unique(SetConcat(EvalSet(p::_.autodoc.dependencies,GetDeepDependencies))<<
     65           name.version)
     66  })
     67};
     68
     69//////////////////////////////////////////////////////////////////////////////
     70Real AddPackageInfo.Version(
     71  Text statusFile,
     72  NameBlock pkg,
     73  Real specificVersion)
     74//////////////////////////////////////////////////////////////////////////////
     75{
    2976  Text name = Name(pkg);
    30   Text name.version = If(!specificVersion,name,
    31     name+"."<<_.autodoc.version.high+"."<<_.autodoc.version.low);
     77  Text name.version = GetNameVersion(pkg);
     78  Set dependencies = GetDeepDependencies(name);
    3279  Text info =
    3380    pkg:: _.autodoc.url + ";"
    … …  
    4289  <<Now + ";"
    4390  <<dependencies+ "\n";
    44   Text AppendFile(file, info);
     91  Text AppendFile(statusFile, info);
    4592  True
    4693};
    4794
    4895//////////////////////////////////////////////////////////////////////////////
    49 Real AddPackageInfo(Text file, NameBlock pkg)
     96Real AddPackageInfo(Text statusFile, NameBlock pkg)
    5097//////////////////////////////////////////////////////////////////////////////
    5198{
    52   Real AddPackageInfo.Version(file,pkg,True);
    53   Real AddPackageInfo.Version(file,pkg,False)
     99  Real AddPackageInfo.Version(statusFile,pkg,True);
     100  Real AddPackageInfo.Version(statusFile,pkg,False)
    54101};
    55102
Note: See TracChangeset for help on using the changeset viewer.