Get far on package manager

This commit is contained in:
2025-04-29 04:57:05 -05:00
parent df6c65288b
commit 53c027ef63
22 changed files with 360 additions and 189 deletions

View File

@@ -50,14 +50,16 @@ func Tesses.CrossLang.PackageManager()
ParseFileName,
GetPackageServers = ()=>{
var packageConfigFile = configRoot / "package_servers.json";
if(FS.Local.RegularFileExists(packageConfigFile))
{
return Json.Decode(FileReadString(FS.Local, packageConfigFile));
return Json.Decode(FS.ReadAllText(FS.Local, packageConfigFile));
}
return ["https://cpkg.tesseslanguage.com/"];
},
GetPackage = (this,name, version) =>
{
var v = Version.Parse(version);
var useCache = v.Stage != "dev";
var pkgFile = packageCache / name / v.ToString();
@@ -71,6 +73,7 @@ func Tesses.CrossLang.PackageManager()
{
//https://cpkg.tesseslanguage.com/api/v1/download?name=MyPackage&version=1.0.0.0-prod
var uri = $"{item.TrimEnd('/')}/api/v1/download?name={Net.Http.UrlEncode(name)}&version={Net.Http.UrlEncode(version)}";
Console.WriteLine($"Downloading: {name} {version} from {item}");
var req = Net.Http.MakeRequest(uri);
if(req.StatusCode == 200)
{

View File

@@ -11,15 +11,6 @@ func Tesses.CrossLang.BuildTool(pm)
return {
DirectoriesCompiled = [],
FileReadString = (fs,path) =>{
var f = fs.OpenFile(path,"rb");
var ms = FS.MemoryStream(true);
f.CopyTo(ms);
var text = ms.GetBytes().ToString();
f.Close();
ms.Close();
return text;
},
GetPackageDependencies = (this,name,version,dir)=>{
var dep = pm.GetPackage(name,version);
if(TypeOf(dep) == "Null") throw $"Package {name} with version {version} does not exist";
@@ -68,7 +59,7 @@ func Tesses.CrossLang.BuildTool(pm)
var crossConf = dir / "cross.json";
if(FS.Local.FileExists(crossConf))
{
var configData = Json.Decode(this.FileReadString(FS.Local,crossConf));
var configData = Json.Decode(FS.ReadAllText(FS.Local,crossConf));
var info = {type = "console"};
var name = "out";
var version = "1.0.0.0-prod";
@@ -221,7 +212,7 @@ func Tesses.CrossLang.BuildTool(pm)
{
var src = {
FileName = file.ToString(),
Source = this.FileReadString(FS.Local, file)
Source = FS.ReadAllText(FS.Local, file)
};
sources.Add(src);
}