bytecodealliance / javy

JS to WebAssembly toolchain
Apache License 2.0
2.22k stars 108 forks source link

Published Windows executables should end in exe and use a zip format #437

Open jeffcharles opened 1 year ago

jeffcharles commented 1 year ago

Operating system: Windows Processor architecture: N/A Rust version: N/A Javy version: v1.1.2

Problem

At the moment, the build assets workflow creates a Windows executable but drops the required exe extension and uses gzip instead of zip for compressing the executable. The exe extension is required on Windows for all executable binaries and Windows does not have a built in way to decompress gzip files but does have a built in way to decompress zip files.

Error Message and Context

Technically someone could install gzip and manually rename the executable file to add the exe extension, but we should just produce executables in the correct format.

jeffcharles commented 1 year ago

It's worth noting that the javy-cli NPM package currently assumes there will be a .gz file available for Windows on the release and uses gunzip to decompress the response body from downloading that file. It's also worth noting that the presence of an .exe extension in the URL for the Windows asset will also break the NPM package's download logic.