##// END OF EJS Templates
rust-hg-core: move from `ouroboros` to `self_cell`...
rust-hg-core: move from `ouroboros` to `self_cell` `ouroboros` has a fundamental soundness problem that, while not applicable today, could become applicable given new compiler optimizations.¹ `self_cell` is a crate that accomplishes a lot of the same things that `ouroboros` did while remaining sound (that is, unless a new soundness issue is discovered) by not assuming as much about the memory layout of the program. `self_cell` has been scrutinized heavily in the past few months by very competent people, some from the compiler team and has shown no weaknesses for a while, with a 1.0 stable release coming out a couple months ago. Our internal API is exactly the same, this is just an implementation detail. To reiterate, no actual soundness issue was found with our use of `ouroboros`, but there might be evolutions of `rustc` (or even a future separate compiler) that could generate unsound code. [1] https://github.com/joshua-maros/ouroboros/issues/88
Raphaël Gomès -
r51575:2cc5de26 default
Show More
Name Size Modified Last Commit Author
/ rust / hg-core / src
config
copy_tracing
dirstate
dirstate_tree
operations
revlog
utils
ancestors.rs Loading ...
checkexec.rs Loading ...
copy_tracing.rs Loading ...
dagops.rs Loading ...
dirstate.rs Loading ...
dirstate_tree.rs Loading ...
discovery.rs Loading ...
errors.rs Loading ...
exit_codes.rs Loading ...
filepatterns.rs Loading ...
lib.rs Loading ...
lock.rs Loading ...
logging.rs Loading ...
matchers.rs Loading ...
narrow.rs Loading ...
repo.rs Loading ...
requirements.rs Loading ...
revset.rs Loading ...
sparse.rs Loading ...
testing.rs Loading ...
utils.rs Loading ...
vfs.rs Loading ...