this post was submitted on 18 Aug 2023
91 points (98.9% liked)

Rust

6035 readers
1 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

[email protected]

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 1 year ago
MODERATORS
91
What is going on with serde? (social.treehouse.systems)
submitted 1 year ago by snaggen to c/rust
 

So, serde seems to be downloading and running a binary on the system without informing the user and without any user consent. Does anyone have any background information on why this is, and how this is supposed to be a good idea?

dtolnay seems like a smart guy, so I assume there is a reason for this, but it doesn't feel ok at all.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 1 year ago (1 children)

Maybe I'm missing something, but I'm not seeing where in serde we're downloading a precompiled binary. I see a script we can execute ourselves in the repository and an alternative serde_derive that uses that executable (after we compile it), but not where the actual published package has the executable.

It's possible I'm missing something here though.

[–] BB_C 5 points 1 year ago* (last edited 1 year ago) (1 children)
bsdtar tfv ᐸ(curl -sL https://static.crates.io/crates/serde_derive/serde_derive-1.0.183.crate)

Edit: Ogh, using which is a replacement character because Lemmy escapes the real one. This is annoying.

There, you will see that this file exists:

-rwxr-xr-x  0 0      0      690320 Jul 24  2006 serde_derive-1.0.183/serde_derive-x86_64-unknown-linux-gnu

Yes, that's a pre-built binary in the crate source release. It's that bad.

[–] [email protected] 1 points 1 year ago

Looks like I missed that, I was checking locally but I must have been checking an outdated version of the package. I'd feel better about it if it compiled on the user's machine, which is the impression I was getting.