I think we still want to do MD5 computation because bad downloads still
happen and the unzip crashes with an ugly error when using Ant directly.
But other PMC members may have different opinions.  Does powershell have a
way to compute a checksum?

I have not looked into this problem at all.  Do we know if the AIR File
APIs would allow us to unzip and compute MD5s without sucking the whole
file into memory?  

Also, didn’t I see a 64-bit Native Installer beta from Adobe?  Maybe that
will be released soon and we can use that to solve this problem?

-Alex

On 6/21/17, 8:57 AM, "Josh Tynjala" <joshtynj...@gmail.com> wrote:

>For the Feathers SDK Manager, I ripped out the MD5 part because I didn't
>want to maintain a list of hashes.
>
>I guess it's possible that the MD5 computation will still require too much
>memory.
>
>- Josh
>
>On Tue, Jun 20, 2017 at 5:27 PM, Alex Harui <aha...@adobe.com.invalid>
>wrote:
>
>> Sounds ok to me.   Is your installer running an MD5 computation on these
>> huge AIR SDKs?  I'm wondering if that step has enough memory.  If it is
>> working for you then it probably does.
>>
>> Thanks,
>> -Alex
>>
>> On 6/20/17, 3:13 PM, "Josh Tynjala" <joshtynj...@gmail.com> wrote:
>>
>> >In the Feathers SDK Manager, I also had the same issue with Error
>>#1000 on
>> >Windows as we're having with the Flex SDK Installer. I was able to
>>come up
>> >with a solution for this issue.
>> >
>> >To recap, on Windows, the Installer currently allocates more memory
>>than
>> >is
>> >allowed by a 32-bit process. The file size of the AIR SDK has grown
>> >significantly recently, and that brought us over the threshold. The
>> >Installer loads the entire zip file for the AIR SDK into memory to
>>expand
>> >it to the file system with ActionScript. My solution is to have a
>>native
>> >system process expand the zip file instead.
>> >
>> >Windows PowerShell is able to expand zip files. Here is the command
>>that I
>> >came up with that does the trick:
>> >
>> >C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command &
>> >{Param([string]$zipPath,[string]$outPath)$shell = New-Object -ComObject
>> >shell.application;$zip = $shell.NameSpace($zipPath);New-Item -path
>> >$outPath
>> >-type directory
>>-force;$shell.NameSpace($outPath).CopyHere($zip.items(),
>> 4
>> >+ 16);[Environment]::Exit(0);} "src.zip" "destFolder"
>> >
>> >(Replace src.zip and destFolder with the actual paths, obviously)
>> >
>> >PowerShell is installed by default as far back as Windows 7, and I have
>> >tested that this script runs successfully even using that older
>>version of
>> >PowerShell. The Adobe AIR system requirements require Windows 7 or
>>newer,
>> >so while PowerShell may not be available on much older versions of
>> >Windows,
>> >Adobe AIR doesn't officially run there either, so the Installer should
>>be
>> >able to invoke PowerShell safely.
>> >
>> >http://www.adobe.com/products/air/tech-specs.html
>> >
>> >It's worth mentioning that our AntOnAIR library and the Flex SDK
>>Installer
>> >uses /usr/bin/tar to expan tar files on macOS, so invoking system
>> >executables is already something that we've done in this codebase.
>> >
>> >You can see how I call PowerShell with NativeProcess in context in the
>> >Unzip class in my fork of AntOnAIR:
>> >
>> >https://na01.safelinks.protection.outlook.com/?url=
>> https%3A%2F%2Fgithub.co
>> >m%2FBowlerHatLLC%2Ffeathers-sdk-manager%2Fblob%
>> 2F3a5fcd7015f102e66a2ab10f1
>> >bc21a0e67485e71%2Fant_on_air%2Fsrc%2Forg%2Fapache%2Fflex%
>> 2Fant%2Ftags%2FUn
>> >zip.as%23L143&data=02%7C01%7C%7C1cbcac130efc4276cf2708d4b829
>> c171%7Cfa7b1b5
>> >a7b34438794aed2c178decee1%7C0%7C0%7C636335936869442071&
>> sdata=cPU9CRqq%2B4y
>> >EdhQuii4UpRPGV4UXVQzqSGYJfeJHy0U%3D&reserved=0
>> >
>> >I'd be happy to make these changes in the Flex SDK Installer too,
>>unless I
>> >hear any objections.
>> >
>> >- Josh
>>
>>

Reply via email to