pedrocr / rawloader

rust library to extract the raw data and some metadata from digital camera images
GNU Lesser General Public License v2.1
304 stars 53 forks source link

various adjustments for migrating to Rust 2021 #42

Closed marcograss closed 1 year ago

marcograss commented 2 years ago
pedrocr commented 2 years ago

Thanks for the interest and the work!

Migrating to rust 2021 and fixing clippy warnings both sound great but please don't reformat all the code.

pedrocr commented 2 years ago

I also got a travis notification for another branch where you were fuzzing rawloader although that's not in a PR. Please note that rawloader is meant to be used with panic = unwind. If you're finding fuzzing issues with parsers that are panics that the library catches and handles gracefully that was meant to be that way. I've gone down the path of trying to add error catching for all eventualities in parsing and it's maddening. Since the rust compiler already does that automatically for all possible cases, I'd love it if I could just use it to turn panics into errors at compile time but unfortunately right now that's only possible dynamically.

The library has been pretty extensively fuzzed so new error cases should be hard to find but it's perfectly possible there are still cases left where there's either an infinite loop or a memory growing unbounded kind of situation. I need to get some better hardware to be able to run the fuzzing continuously.