On one hand, it's an appealing way to manage dealing with different OS/Arch for a binary. On the other hand, this is not something I'd want to use in production, as it's very implicit. I'd rather explicitly call specific versions of installed binaries over implicitly call files installed in $DOTSLASH_CACHE (particularly if the binary is fetched on-demand).
This looks like it could be a useful tool in certain situations, such as shared/consistent dev environments. But generating the dotslash file (with hashes, urls, etc...) seems quite manual, which will limit adoption. In this way, it's not too different from traditional environmental module files, but it does automate a good chunk. If the main use-case is development, I'm not sure if this is better than devcontainers.
It seems like a useful tool, but I'm not sure where I'd actually use it. Maybe I'm missing the main use cases?
It's a tool for fetching things and making sure what you fetch is what it's supposed to be.
For facebook in particular I'd guess it's basically just a bootstrapping step for buck2 and other basic tools like that.
Containers are obviously tempting but I think they're basically a way of shoving complexity under the bed whereas the approach that dotslash nudges you towards is slightly hormetic in that it helps you manage the complexity while also acting a slight tax on it's growth.
To be able to reproduce all the procedures reliably, constantly, and without an internet connection. At least it's a requirement for my job and some other industries. Also because it's good to be serious about your job, and because reproducible builds is a nice thing to do.
This _does_ seem to "install" things to a DOTSLASH_CACHE dir though.[1] It seems similar to tools like nvm of pyenv but in this case can handle more than just a single target language. Pretty neat.
Not hating the player nor the game. Point was that it's hard to adopt something that one can't be confident will be maintained and supported a year from now.
On one hand, it's an appealing way to manage dealing with different OS/Arch for a binary. On the other hand, this is not something I'd want to use in production, as it's very implicit. I'd rather explicitly call specific versions of installed binaries over implicitly call files installed in $DOTSLASH_CACHE (particularly if the binary is fetched on-demand).
This looks like it could be a useful tool in certain situations, such as shared/consistent dev environments. But generating the dotslash file (with hashes, urls, etc...) seems quite manual, which will limit adoption. In this way, it's not too different from traditional environmental module files, but it does automate a good chunk. If the main use-case is development, I'm not sure if this is better than devcontainers.
It seems like a useful tool, but I'm not sure where I'd actually use it. Maybe I'm missing the main use cases?
reply