-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
refactor(hyper): Split hyper into multiple crates #372
Conversation
url = "*" | ||
|
||
[dependencies.hypernet] | ||
path = "hypernet" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm fairly confident this will prevent uploading to crates.io. We will have to upload and depend on hypernet and hyperprotocol as normal dependencies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is probably true.
If we split hyper consequently there will be no "hyper" crate only "hyperclient" and "hyperserver". I have no idea what the current crate will be useful for.
I will move server and client later out of main hyper crate. They both depend on src/http.rs and src/uri.rs. I do not know where this code should be placed. I think it would be the best thing if we could get rid of This depends on rust-lang/rust#23110 being fixed. Or is there a workaround for now? |
@pyfisch I actually think it would be better if we just built our own custom url type that's specialized for HTTP use cases. The absolute rust-url Url type is significantly less useful in many cases then a relative URL with a virtual root. |
Rust broke hyper again. The whole downcast stuff is broken. @reem Yes we should use relative URLs. |
Everything works now. Path dependencies are rewritten to normal dependencies in cargo: http://users.rust-lang.org/t/multi-crate-cargo-repositories-best-practices/692/2?u=pyfisch So it stays simple to both distribute and develop hyper. |
What do you mean they are rewritten as normal dependencies? |
@seanmonstar a crates.io build will use |
Move various parts of hyper into separate crates: * hypernet * hyperprotocol Adds script.sh as a convinient way to test all crates. There should be no breaking changes for hyper users.
Closing because stale, feel free to try again. |
Move various parts of hyper into separate crates:
There should be no breaking changes for hyper users.