Browse Source

dependencies

Nicolas Cannasse 19 years ago
parent
commit
1570c62af0
1 changed files with 11 additions and 1 deletions
  1. 11 1
      std/tools/haxelib/Datas.hx

+ 11 - 1
std/tools/haxelib/Datas.hx

@@ -32,6 +32,7 @@ typedef XmlInfos = {
 	var desc : String;
 	var version : String;
 	var versionComments : String;
+	var dependencies : List<{ project : String, version : String }>;
 }
 
 class Datas {
@@ -62,7 +63,11 @@ class Datas {
 	}
 
 	public static function safe( name : String ) {
-		return name.split(".").join("-");
+		return name.split(".").join(",");
+	}
+
+	public static function unsafe( name : String ) {
+		return name.split(",").join(".");
 	}
 
 	public static function fileName( lib : String, ver : String ) {
@@ -87,6 +92,7 @@ class Datas {
 				RNode("user",[sname]),
 				RNode("description",[],RData()),
 				RNode("version",[sname],RData()),
+				RMulti(	RNode("depends",[sname,Att("version",FReg(alphanum),"")]) ),
 			])
 		);
 		var doc = Xml.parse(xmldata);
@@ -99,6 +105,9 @@ class Datas {
 		var user = p.node.user.att.name;
 		if( user.length < 3 )
 			throw "User name must contain at least 3 characters";
+		var deps = new List();
+		for( d in p.nodes.depends )
+			deps.add({ project : d.att.name, version : d.att.version });
 		return {
 			project : project,
 			owner : user,
@@ -106,6 +115,7 @@ class Datas {
 			desc : p.node.description.data,
 			version : p.node.version.att.name,
 			versionComments : p.node.version.data,
+			dependencies : deps,
 		}
 	}