Skip to content
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

std: Destabilize io::BufStream #25009

Merged
merged 1 commit into from May 5, 2015

Conversation

alexcrichton
Copy link
Member

As pointed out in #17136 the semantics of a BufStream aren't always what one
expects, and it looks like other languages like C# implement a
buffered stream with only one underlying buffer. For now this commit
destabilizes the primitive in the std::io module to give us some more time in
figuring out what to do with it.

[breaking-change]

As pointed out in rust-lang#17136 the semantics of a `BufStream` aren't always what one
expects, and it looks like other [languages like C#][c-sharp] implement a
buffered stream with only one underlying buffer. For now this commit
destabilizes the primitive in the `std::io` module to give us some more time in
figuring out what to do with it.

[c-sharp]: https://msdn.microsoft.com/en-us/library/system.io.bufferedstream%28v=vs.110%29.aspx

[breaking-change]
@rust-highfive
Copy link
Collaborator

r? @pcwalton

(rust_highfive has picked a reviewer for you, use r? to override)

@alexcrichton
Copy link
Member Author

r? @aturon

@rust-highfive rust-highfive assigned aturon and unassigned pcwalton Apr 30, 2015
@alexcrichton alexcrichton added the beta-nominated Nominated for backporting to the compiler in the beta channel. label Apr 30, 2015
@alexcrichton
Copy link
Member Author

cc @sfackler

@alexcrichton
Copy link
Member Author

I will also publish a crate for bufstream on crates.io if the demand is great enough, but it looks like there are only ~10 crates using it today, so I haven't taken this step quite just yet.

@sfackler
Copy link
Member

I mean, rust-postgres is going to need a buffered stream or it'll slow down by one or two orders of magnitude.

@alexcrichton
Copy link
Member Author

@sfackler yeah this is definitely not suggesting the primitive is not useful, we're just unclear that having two buffers is the right semantics for this to have.

@aturon
Copy link
Member

aturon commented May 5, 2015

@bors: r+ p=10 (breaking change)

@bors
Copy link
Contributor

bors commented May 5, 2015

📌 Commit db477ee has been approved by aturon

@bors
Copy link
Contributor

bors commented May 5, 2015

⌛ Testing commit db477ee with merge eae692e...

bors added a commit that referenced this pull request May 5, 2015
As pointed out in #17136 the semantics of a `BufStream` aren't always what one
expects, and it looks like other [languages like C#][c-sharp] implement a
buffered stream with only one underlying buffer. For now this commit
destabilizes the primitive in the `std::io` module to give us some more time in
figuring out what to do with it.

[c-sharp]: https://msdn.microsoft.com/en-us/library/system.io.bufferedstream%28v=vs.110%29.aspx

[breaking-change]
@bors
Copy link
Contributor

bors commented May 5, 2015

💔 Test failed - auto-linux-32-opt

@sfackler
Copy link
Member

sfackler commented May 5, 2015

@bors retry

@bors
Copy link
Contributor

bors commented May 5, 2015

@bors bors merged commit db477ee into rust-lang:master May 5, 2015
@alexcrichton alexcrichton deleted the less-buffered-stream branch May 7, 2015 21:10
@alexcrichton alexcrichton added the beta-accepted Accepted for backporting to the compiler in the beta channel. label May 7, 2015
@brson brson removed the beta-nominated Nominated for backporting to the compiler in the beta channel. label May 8, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
beta-accepted Accepted for backporting to the compiler in the beta channel.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants