Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-10-12 | Make Uri::decode_element more functional | Richard Walters | |
2020-10-11 | Fix normalize test and corner case bug with path_as_string | Richard Walters | |
2020-10-10 | Remove explicit test vector array length declarations | Richard Walters | |
This method was proposed by @Serayen. | |||
2020-10-09 | Use named_tuple! to simplify test vector declarations | Richard Walters | |
2020-10-09 | Use thiserror to implement Error/Display/From traits for us | Richard Walters | |
2020-10-09 | Minor whitespace/comment cleanup | Richard Walters | |
2020-10-09 | Make Rust errors a bit more expressive | Richard Walters | |
2020-10-09 | Rust implementation refactoring | Richard Walters | |
* Use more expressive errors, especially in address parsing. * Use match in some cases where we were using if/else. * Split IPv6 address parsing tests up between good/base cases. | |||
2020-10-09 | Implement std::error::Error for custom error types | Richard Walters | |
2020-10-09 | Remove unnecessary check in IPv6 parsing | Richard Walters | |
It's not possible to have encountered a double-colon when in the COLON_BUT_NO_GROUPS_YET state. | |||
2020-10-09 | Slight improvement to name of a state in IPv6 address parsing | Richard Walters | |
AFTER_COLON_EXPECT_GROUP_OR_IPV4 -> AFTER_DOUBLE_COLON | |||
2020-10-09 | Fix bug in parsing IPv6 addresses | Richard Walters | |
Fix bug where an IPv6 address ending in a double-colon was not considered valid (it was being considered as truncated). | |||
2020-10-09 | Fix bug in IPv6 address parsing | Richard Walters | |
Fix bug where IPv6 address ending in a group with only digits followed by a double-colon would not get parsed correctly | |||
2020-10-09 | Dismiss some todos | Richard Walters | |
2020-10-07 | (Rust) Uri::is_path_absolute: match against whole path, not first segment | Richard Walters | |
2020-10-07 | (Rust) combine match with if/else in Uri::validate_ipv4_address | Richard Walters | |
2020-10-07 | (Rust) dismiss some todos | Richard Walters | |
2020-10-07 | (Rust) Add Uri::path_as_string convenience function | Richard Walters | |
2020-10-07 | (Rust) Make setting scheme fallible by checking for invalid characters | Richard Walters | |
2020-10-07 | Finish initial port of library to Rust | Richard Walters | |
2020-10-07 | Fix misspelling | Richard Walters | |
2020-10-06 | Work in progress porting to Rust | Richard Walters | |
2020-10-06 | Work in progress porting implementation to Rust | Richard Walters | |
2020-10-05 | Add tests for parsing hosts ending in dot | Richard Walters | |
2020-09-27 | No need to use try_from() when setting parts of a URI | Richard Walters | |
2020-09-27 | Finish porting unit tests to Rust | Richard Walters | |
2020-09-27 | Work in progress porting test cases to Rust, implemented by uriparse | Richard Walters | |
2019-12-02 | Support first > last for range constructor of CharacterSet | Richard Walters | |
2019-11-09 | StringExtensions moved from SystemAbstractions to its own library | Richard Walters | |
2019-05-10 | Remove useless increments | Richard Walters | |
Thank you to @ya-ming for pointing this out! | |||
2019-03-28 | Percent-encode '+' in the query portion | Richard Walters | |
2019-01-06 | Uri: remove old TODO comment no longer applicable | Richard Walters | |
2018-10-24 | Uri: fix bugs in copying and comparing URIs with query/fragment parts | Richard Walters | |
Copying query or fragment needs to copy the "hasQuery" and "hasFragment" flags. Comparing URIs should make use of "hasQuery" and "hasFragment" to properly compare URIs that might not have query and/or fragment parts. | |||
2018-10-24 | Uri: fix bug in percent-encoding of character codes 0x80-0xff | Richard Walters | |
Can't treat characters using "char" type because it's signed. | |||
2018-09-05 | Fix compiler warnings found by compiling on Mac | Richard Walters | |
2018-08-24 | remove redundant 'struct' from pimpl pattern | Richard Walters | |
2018-08-09 | use SystemAbstractions::ToInteger to convert strings to integers | Richard Walters | |
2018-08-09 | Refactoring: make application of rule of zero/five consistent | Richard Walters | |
2018-08-05 | Use SystemAbstractions::ToLower instead of doing it ourselves | Richard Walters | |
2018-07-23 | Add copy constructor and assignment operator | Richard Walters | |
2018-07-04 | Fix bug in IPv6Address validation | Richard Walters | |
A trailing group which is definitely not an IPv4Address needs to be counted. Detect this as the state being IN_GROUP_NOT_IPV4 after the end of the string. | |||
2018-07-04 | Refactoring | Richard Walters | |
Assign names to states in the IPv6Address validation routine | |||
2018-07-04 | Fix bugs in IPv6 address parsing | Richard Walters | |
* Multiple colons should not be accepted in state 4. * After parsing a digit group and encountering a colon, we need allow either another colon or the beginning of either another group or an IPv4 address. Add state 5 to handle this. | |||
2018-07-04 | Normalize IPv6 addresses when generating URI strings | Richard Walters | |
2018-07-04 | Percent-encode if necessary any elements when generating strings | Richard Walters | |
2018-07-04 | Fix requirements | Richard Walters | |
Query and fragment may be empty but present in a URI. Handle this in the same way that port is handled: include a flag for each of query and fragment, to allow an empty but present query/fragment. | |||
2018-07-04 | Add capability of setting other elements | Richard Walters | |
* userinfo * port (hasPort) * path * fragment Also include these element when generating string from URI. | |||
2018-07-04 | Add GenerateString (incomplete) | Richard Walters | |
Add methods to set scheme, host, and query elements. Add ability to generate URI strings out of scheme, host, and query elements. This does not yet support userinfo, port, or fragment elements. | |||
2018-07-04 | Fix bug in truncated host elements | Richard Walters | |
For example, "[::1", where the square bracket at the end is missing. Handle truncated host element by checking the state we end up in after the entire string is parsed. Some states represent interal elements of a host name or address, and so if we're still in those states and run out of input characters, the input string was cut off early. | |||
2018-07-04 | Fix bug in parsing out IPv6 and IPvFuture addresses | Richard Walters | |
Don't include the square brackets in the parsed out host string; they are only there for delimiting them inside of an overall URI string. |