-
Notifications
You must be signed in to change notification settings - Fork 49
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
Disable default-features for http-types #63
base: main
Are you sure you want to change the base?
Disable default-features for http-types #63
Conversation
That isn't true, we re-export some things (e.g. I suspect we could change this without anyone noticing but we should probably be careful. |
Good catch, thank you. It looks like the main issue there would be things like (In theory, someone could rely on |
265076d
to
8e2bd38
Compare
@Fishrock123 Does this seem more reasonable? I think we can make this change without a semver-major bump. |
Not sure what's causing the test failure. It looks like it happens on latest main, without this change; perhaps something changed elsewhere in the ecosystem that broke the http-client build. EDIT: Ah, it's http-rs/tide#787 . |
@joshtriplett Could you rebase? |
http-client doesn't need the cookie feature. http-client also doesn't *directly* use the fs feature, but it re-exports http_types::Body and people might be relying on Body::from_file, so depend on the fs feature for compatibility.
8e2bd38
to
250ce32
Compare
@Fishrock123 Done. |
@joshtriplett If we release this, is cargo smart enough to not upgrade someone to this version if they are pinning to a previous http-types for some reason? |
@Fishrock123 Cargo doesn't allow multiple compatible versions of the same crate in one dependency tree. If you're pinning an older http-types, you can't end up with a newer http-client that needs a newer http-types. (I don't know to what degree cargo's version resolution will decide to use an older http-client and to what degree it'll throw up its hands and say "nope, incompatible".) |
Checking back on this: would it be possible to merge this to allow dropping cookie crates from projects that don't need them? |
Bumping a major here likely means bumping a major in surf, which I'd like to avoid until I have to for http-types 3.0 if possible. |
Is there a major milestone waiting to get to http-types 3.0? Similarly I'm trying to get rid of dependencies keeping things as light as possible and the latest http-types helps a bit changing the rand dependency that I wont be needing |
@Fishrock123 As far as I can tell, now that this change no longer omits the |
http-client doesn't use any of the default features.