Once I saw that error under linux. It comes from zippper.pp unit(fpc). Please download the latest version, it will display a more meaningful message.
It is caused by wrong type of file attributes in the zipper. I always test code with compiler checks and debug flags set, thus an overflow interrupted it.
I reported the issue with a patch:
http://bugs.freepascal.org/view.php?id=30800The same change can be made to your copy.
However I recommend that you create a patch of your new zipper events against the latest FPC trunk which now has many changes related to Unicode and other parts, too.
When it is applied, we can copy the latest version from FPC trunk without worries.
The same goes with your http client fork.
[Edit] Now that the zipper works, I got a valid ZIP file and also a JSON file.
If the idea is to download an extra JSON file from the remote URL then it solves the version number problem.
My understanding is that now only the central server has a JSON file.
With aggpas I got:
{
"PackageData0" : {
"Name" : "aggpas",
"Category" : 2,
"RepositoryFileName" : "aggpas.zip",
"RepositoryFileSize" : 2943239,
"RepositoryFileHash" : "aa2d6ca1dd9b54f6d1c607cc260aa588",
"RepositoryDate" : 4.2669000000000000E+004,
"PackageBaseDir" : "aggpas\\\/"
},
"PackageFiles0" : [
{
"Name" : "aggpaslcl.lpk",
"Description" : "AggPas canvas for LCL",
"Author" : "Mattias Gaertner, Milan Marusinec",
"License" : "Permission to copy, use, modify, sell and distribute this software is granted provided this copyright notice appears in all copies.\nThis software is provided \"as is\" without express or implied warranty, and with no claim as to its suitability for any purpose.",
"RelativeFilePath" : "lazarus\\\/",
"VersionAsString" : "1.0.0.0",
"LazCompatibility" : "1.6, Trunk",
"FPCCompatibility" : "2.6.4, 3.0.0",
"SupportedWidgetSet" : "win32\/64, gtk2, carbon",
"PackageType" : 2,
"DependenciesAsString" : "LCL, FCL(1.0.0.0)",
"HomePageLink" : "",
"DownloadLink" : ""
}
]
}