i have just stumbled upon something absolutely mad.
so i want to embed a sha256 hash of a file into my #rust crate at compile time, rather than either loading and hashing the file at runtime (slow, missing files are only reported at runtime) or embedding the whole file (kilobytes of wastage). i found a crate that claims to do that and added it without reading much further.
i was mildly floored to see two hundred and twenty eight dependencies added to my project.
it turns out, this crate allows you to, at build time, submit these hashes to something called nostr, which i think is a fediverse-type thing but On the Blockchain™. this means that, if you use the fuckass "NIP 34" macros, every single time you run cargo build, the file's hashes are published... somewhere. to some sort of blockchain, i think. i didn't investigate much.
of course, someone has opened an issue about this frankly ludicrous behaviour.
now, i sent this to a couple of friends to laugh at the absurdity of it, and when doing so, i read the issue a little more closely. i'd like to correct a mistake i made in my earlier description. the crate does not, in fact, upload the hash every time you run cargo build.
it uploads the hash and the file contents every time you run cargo build. seemingly, they're uploaded to every instance listed in this CSV file, which also contains the instance's GPS coordinates (?????).