As some of you may know, Rust is approaching its 1.0 release in a couple of weeks. One of the major goals for Rust is using a rust library in Gecko. The specific one I'm working at the moment is adding rust-url as a safer alternative to nsStandardURL.
This project is still in its infancy, but we're making good progress. A WIP patch is posted in bug 1151899, while infrastructure support for the rust compiler is tracked in bug 1135640. One of the main problems in this endeavor is compatibility. It would be best if this change wouldn't introduce any changes in the way we parse and encode/decode URLs, however rust-url does differ a bit from Gecko's own parser. While we can account for the differences we know of, there may be a lot of other cases we are not aware of. I propose using our volunteer base in trying to find more of these differences by reporting them on Nightly. My patch currently uses printf to note when a parsing difference occurs, or when any of the getters (GetHost, GetPath, etc) returns a string that's different from our native implementation. Printf might not be the best way of logging these differences though. NSPR logging might work, or even writing to a log file in the current directory. These differences are quite privacy sensitive, so an automatic reporting tool probably wouldn't work. Has anyone done something like this before? Would fuzzing be a good way of finding more cases? I'm waiting for any comments and suggestions you may have. Thanks! _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform