Live data from Hacker News

Show HN: WAPM – Package Manager for WebAssembly

wapm.io

11–20 of 82 posts

Re: Show HN: WAPM – Package Manager for WebAssembly

#11

anyway, sounds really cool and hoping it gets inspired by things like bundler/homebrew more than npm/yarn. btw it has "telemetry" enabled by default. edit: thanks for the link, didn't find the source previously

The CLI is open-source: https://github.com/wasmerio/wapm-cli We are also planning to open-source the registry as well :)

[deleted]

Re: Show HN: WAPM – Package Manager for WebAssembly

#12

I like Wasmer, but I very much dislike the idea of another major package repository being owned and operated by a commercial entity. They seem like good people doing valuable work now, but that doesn't tell us very much about who the company will be in five or ten years. I've grown uncomfortable with NPM being operated by NPM Inc instead of The Node.js Foundation, but it's a hard thing to change once it's established…

I completely understand your concerns, especially given the issues that NPM had lately. We are an open-source focused company and our success is tightly tied to the success of our open-source solutions.

Here are some of the things that we are doing in order to resolve (or minimize) the concerns:

* Completely open API to retrieve the registry data (it's a work in progress, but our GraphQL API is open to everyone to use: https://registry.wapm.io/graphql )

* De-centralized hosting of the packages (news to come soon!)

Re: Show HN: WAPM – Package Manager for WebAssembly

#13
post #9

Why a new package manager? Why not port an existing well-designed generic package manager such as Nix? Making a new package manager is very expensive in terms of developer times - developers have to learn yet another new thing to use your platform. Can you justify this? Edit: For example, as matthewbauer commented below, Nix can support WebAssembly as a compilation target: https://github.com/NixOS/nixpkgs/pull/56555

Which general purpose package manager works correctly on Windows (not WSL, actual Windows) and Linux? Cross-platform is more important than not creating another package manager.

I think a far more interesting question is, does the package repository support falling back to e.g. curl. That would allow those who don't want another package manager to still use the registry.

Re: Show HN: WAPM – Package Manager for WebAssembly

#14
post #9

Why a new package manager? Why not port an existing well-designed generic package manager such as Nix? Making a new package manager is very expensive in terms of developer times - developers have to learn yet another new thing to use your platform. Can you justify this? Edit: For example, as matthewbauer commented below, Nix can support WebAssembly as a compilation target: https://github.com/NixOS/nixpkgs/pull/56555

Which general purpose package manager works correctly on Windows (not WSL, actual Windows) and Linux? Cross-platform is more important than not creating another package manager. I think a far more interesting question is, does the package repository support falling back to e.g. curl. That would allow those who don't want another package manager to still use the registry.

They say the registry info is available via API, so perhaps a simple bash script that calls curl would suffice

Re: Show HN: WAPM – Package Manager for WebAssembly

#15
post #9

Why a new package manager? Why not port an existing well-designed generic package manager such as Nix? Making a new package manager is very expensive in terms of developer times - developers have to learn yet another new thing to use your platform. Can you justify this? Edit: For example, as matthewbauer commented below, Nix can support WebAssembly as a compilation target: https://github.com/NixOS/nixpkgs/pull/56555

Which general purpose package manager works correctly on Windows (not WSL, actual Windows) and Linux? Cross-platform is more important than not creating another package manager. I think a far more interesting question is, does the package repository support falling back to e.g. curl. That would allow those who don't want another package manager to still use the registry.

conda

Re: Show HN: WAPM – Package Manager for WebAssembly

#16
post #9

Why a new package manager? Why not port an existing well-designed generic package manager such as Nix? Making a new package manager is very expensive in terms of developer times - developers have to learn yet another new thing to use your platform. Can you justify this? Edit: For example, as matthewbauer commented below, Nix can support WebAssembly as a compilation target: https://github.com/NixOS/nixpkgs/pull/56555

Which general purpose package manager works correctly on Windows (not WSL, actual Windows) and Linux? Cross-platform is more important than not creating another package manager. I think a far more interesting question is, does the package repository support falling back to e.g. curl. That would allow those who don't want another package manager to still use the registry.

AppFS [0] is cross-platform and general purpose. It should work on Windows via cxfuse [1], but I have not tested it. The data structure is simple and could also be handled by an offline fetching system.

[0] http://appfs.rkeene.org/ [1] https://github.com/crossmeta/cxfuse

Re: Show HN: WAPM – Package Manager for WebAssembly

#17
The documentation such as it is, doesn't even tell me what this is supposed to do (or at least not after a superficial look). Is it for using web assembly binaries on a command line? Or in the browser? Integration with webpack or the like?

There is a link on how to install from source, pointing to github, but the link is dead and the organization has no repositories...

At the moment, there is not enough momentum behind individual web assembly packages, as in "many people wanting to include the same wasm binaries". If at some point there are runtimes for like C#, Java, Python etc which people agree on, they might try and use a CDN approach, such that users visiting multiple websites don't need to download everything at every site.

Re: Show HN: WAPM – Package Manager for WebAssembly

#18

Earlier quoted context omitted.

We are working on supporting signed packages to assure they can't be tampered with. At the same time WebAssembly provides some nice sandboxing capabilities and we are working to add permissions on top of syscalls, so packages will not do what they are not suppose to do. Reproducible builds are definitely something great, but they are quite tricky. However we are very open to hear more thoughts on how to do it!

Signed packages are useful, but still don't solve the problem. One fairly simple thing you can do to improve this would be to include build scripts as part of the package, and allow people to run those build scripts through wapm. The exact versions of any involved tools will need to be recorded too, but since there arent too many ways to generate wasm blobs yet, this shouldnt be too out there. Eventually it would be…

Yeah, instructions onto how to build the package would be highly valuable. Environments where binaries are very backwards compatible (which itself is a good thing!) lend themselves to discarding abilities about how to build something. You could quickly land in a situation where you need to recompile some particular binary for some reason but figuring out how to compile it is really hard. Like how Microsoft fixed a vulnerability in an Office program by changing the binary instead of the source code.

IMO any open source centric repository should have developers upload the source code instead of binaries so that the repository can compile it themselves to give binaries or source code to users. At the start they could use docker where the docker file is part of the uploaded artifacts, and later they could use WASI based toolchains directly, e.g. clang compiled to wasm or rustc compiled to wasm.

This "developers upload binary artifacts, source code is an afterthought" idea of npm rubs me wrongly.

Re: Show HN: WAPM – Package Manager for WebAssembly

#19
post #9

Why a new package manager? Why not port an existing well-designed generic package manager such as Nix? Making a new package manager is very expensive in terms of developer times - developers have to learn yet another new thing to use your platform. Can you justify this? Edit: For example, as matthewbauer commented below, Nix can support WebAssembly as a compilation target: https://github.com/NixOS/nixpkgs/pull/56555

Which general purpose package manager works correctly on Windows (not WSL, actual Windows) and Linux? Cross-platform is more important than not creating another package manager. I think a far more interesting question is, does the package repository support falling back to e.g. curl. That would allow those who don't want another package manager to still use the registry.

NuGet

Re: Show HN: WAPM – Package Manager for WebAssembly

#20

I like Wasmer, but I very much dislike the idea of another major package repository being owned and operated by a commercial entity. They seem like good people doing valuable work now, but that doesn't tell us very much about who the company will be in five or ten years. I've grown uncomfortable with NPM being operated by NPM Inc instead of The Node.js Foundation, but it's a hard thing to change once it's established…

Yes, at least they could host it on IPFS or dat.
Post reply on HN