URL parser for Rust
docs.rs/url/

Simon Sapin 46f2390ca1 Use the rustup.sh script from rust-lang.org. %!s(int64=12) %!d(string=hai) anos
src 143d902a9c Fix inverted logic in Url::to_file_path() for Windows paths. %!s(int64=12) %!d(string=hai) anos
.gitignore 6318279688 Use the new and shiny 'cargo doc' %!s(int64=12) %!d(string=hai) anos
.travis.yml 46f2390ca1 Use the rustup.sh script from rust-lang.org. %!s(int64=12) %!d(string=hai) anos
Cargo.toml 092c4e6503 Rename the crate to "url". %!s(int64=12) %!d(string=hai) anos
LICENSE-APACHE 0339bc2d9a Start with an empty crate. %!s(int64=13) %!d(string=hai) anos
LICENSE-MIT 0339bc2d9a Start with an empty crate. %!s(int64=13) %!d(string=hai) anos
README.md c651832cbb Remove done TODO item (Write documentation) in README. %!s(int64=12) %!d(string=hai) anos
github.png 6318279688 Use the new and shiny 'cargo doc' %!s(int64=12) %!d(string=hai) anos
make_encode_sets.py e18f7e460c Make implementation details of percent-encoding encode sets private. %!s(int64=12) %!d(string=hai) anos

README.md

rust-url

Build Status

Rust implementation of the URL Standard.

This is a replacement for Rust’s “old” (as of July 2014) url crate. See Rust bug #10707.

This buils with Cargo, pulling in rust-encoding as a depedency.

Documentation

To do

Not necessarily in the given order:

  • Deprecate and later remove rustc’s old liburl
  • Add data: URL parsing.
  • Add IDNA support. Non-ASCII domains are a parse error for now. Punycode is done, Nameprep is the other big part.
  • Add lots of tests. Contribute them to web-platform-tests.
  • Consider switching the spec from a state machine to functional style, like this code.