in addition to url templates, this also includes special handling for crates.io: crates.io index config.json dl: "https://crates.io/api/v1/crates" request to "https://crates.io/api/v1/crates/{crate}/{vers}/download" will return a 302 redirect to "https://static.crates.io/crates/{crate}/{crate}-{vers}.crate". rather than follow the 302, this detects if the dl value is crates.io (`is_crates_io` method) and performs the redirect preemptively. in discussion with crates.io team on discord, @carol10cents indicated this would avoid need to throttle requests as they would go right to cdn instead of hitting crates.io webserver.
the response type is NOT json, this was just wrong
--filter-crates: limit downloads to crates with names matching supplied regex --dry-run: don't actually download --overwrite-existing: re-download even if .crate file already exists in output dir
just why