Replies: 5 comments
-
This one is hard because Rust does not have any facilities to enforce it, or even just track it (like an language level effect system). First, we would have to parse the code somehow, in a reliable way. Then we have to forbid:
and then ultimately there's a problem that if a crate Even worse, a crate So, while there is some valuable heuristic here, it's definitely not a golden bullet or really reliable. It's might make the job of malicious code a bit harder. I am hoping that in a decade or two PL research will bring us a Rust-like language but with an addition of side effect control, which would allow language level isolation and security. |
Beta Was this translation helpful? Give feedback.
-
So, we need to have two levels of auto-review:
I deliberately do not consider the ability to inject IO ( |
Beta Was this translation helpful? Give feedback.
-
Why? I'm kind of out of time to debate and explain all the details right now, but I don't believe this is feasible. However if you really think it is, I would encourage you to give it a try, and it will be easier to talk once there is some code to review and try. |
Beta Was this translation helpful? Give feedback.
-
I explained in the parentheses.
I don't have free time to write this free software. |
Beta Was this translation helpful? Give feedback.
-
On top of everything dpc said soundness bugs exist in the language, making it trivial to execute arbitrary bytecode by abusing them |
Beta Was this translation helpful? Give feedback.
-
I propose to autoreview as "clean" these packages that:
This automation will make your unmanageable task to review the entire crates.io manageable.
This automatic mode of review should be optional, there should nevertheless be fully manual mode of review.
Beta Was this translation helpful? Give feedback.
All reactions