-
Notifications
You must be signed in to change notification settings - Fork 335
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tracking issue for rust-url 2.0 #463
Comments
Servo is now using hyper 0.12. |
rustc-serialize should probably be put onto the list, too: #506 |
Hey, for an internal project we wanted to have a url crate with some of the things listed here. I forked this repo and made some changes, mostly removing rustc-serialize and adding serde 1.0, which you can find here. This is not meant to replace this crate, but to as soon as possible rexports all of url 2.0 and get deprecated :) Are you okay with me publishing this fork to crates.io? We'll want to publish some crates depending on this. |
I mean, if publishing a fork is what you need to get other work unblocked I don’t really have a reason to stop you. That said, Just Making The key is we don’t have to do everything in the list. While batching breaking changes is better to avoid the need to do 3.0 too soon, if no one has implemented a particular change after some time maybe it’s wasn’t that important in the first place. |
Definitely.
I can relate to that very much! And since url is a pretty major crate the barrier to just releasing a new major version is pretty high I imagine. I'm gonna publish my fork so our internal stuff can easily depend on it (and I so that I can feel like I did something this week). I'll probably also keep doing weird stuff there just to experiment with some APIs, and release a new version until I either hit 0.99.0 or am actually happy with the code. I hope to have the time to slowly merge to "good" parts back into your 2.0 branch. Actually, anyone is welcome to just take my changes and merge them over! |
For a while now we’ve been discussing some possible breaking changes and I’ve been reluctant, to avoid dealing with moving the ecosystem to a semver-incompatible version. However it’s probably time to do it anyway, in particular to get serde 1.0 support in the
url
crate itself. To avoid doing multiple such migrations, it would be nice batch breaking changes together.This is blocked on
Having a viable migration path for Servo
v2.0
branch of rust-url before publishing rust-url 2.0.0 to crates.io.This would unblock
serde_url
query_encoding_2
to useencoding_rs
crate #446Changes to consider
Not necessarily blockers for 2.0.0.
Update with current spec and tests
… because this might lead to API or behavior changes.
Breaking API changes
()
error types with specific types that implement Error #299Url::join
? Behaviour of Url::join #333percent_encoding::EncodeSet
cannot be boxed #388Behavior changes
Some of those might arguably be considered breaking. Or maybe not.
to_file_path
behavior with%2f
#461to_file_path
for relative paths with drive letters #442Non-breaking changes
… maybe worth looking at while I’m spending time on rust-url:
Unsure if breaking
Potential breaking changes for the
idna
cratePotential breaking changes for the
percent_encoding
crateconst
values of a single type, instead of types implementing a traitThe text was updated successfully, but these errors were encountered: