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: Stabilize portions of the io module #23010

Merged
merged 1 commit into from
Mar 7, 2015

Conversation

alexcrichton
Copy link
Member

The new io module has had some time to bake and this commit stabilizes some of
the utilities associated with it. This commit also deprecates a number of
std::old_io::util functions and structures.

These items are now #[stable]

  • Cursor
  • Cursor::{new, into_inner, get_ref, get_mut, position, set_position}
  • Implementations of I/O traits for Cursor<T>
  • Delegating implementations of I/O traits for references and Box pointers
  • Implementations of I/O traits for primitives like slices and Vec<T>
  • ReadExt::bytes
  • Bytes (and impls)
  • ReadExt::chain
  • Chain (and impls)
  • ReadExt::take (and impls)
  • BufReadExt::lines
  • Lines (and impls)
  • io::copy
  • io::{empty, Empty} (and impls)
  • io::{sink, Sink} (and impls)
  • io::{repeat, Repeat} (and impls)

These items remain #[unstable]

  • Core I/O traits. These may want a little bit more time to bake along with the
    commonly used methods like read_to_end.
  • BufReadExt::split - this function may be renamed to not conflict with
    SliceExt::split.
  • Error - there are a number of questions about its representation,
    ErrorKind, and usability.

These items are now #[deprecated] in old_io

  • LimitReader - use take instead
  • NullWriter - use io::sink instead
  • ZeroReader - use io::repeat instead
  • NullReader - use io::empty instead
  • MultiWriter - use broadcast instead
  • ChainedReader - use chain instead
  • TeeReader - use tee instead
  • copy - use io::copy instead

[breaking-change]

@rust-highfive
Copy link
Collaborator

r? @aturon

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

@aturon aturon mentioned this pull request Mar 3, 2015
91 tasks
@alexcrichton alexcrichton force-pushed the deprecate-some-old-io branch 2 times, most recently from 52c199a to 40f4d04 Compare March 4, 2015 00:43
@aturon
Copy link
Member

aturon commented Mar 5, 2015

LGTM, really excited to be reaching this stage!

@alexcrichton alexcrichton force-pushed the deprecate-some-old-io branch from 40f4d04 to 0dfa997 Compare March 5, 2015 01:04
The new `io` module has had some time to bake and this commit stabilizes some of
the utilities associated with it. This commit also deprecates a number of
`std::old_io::util` functions and structures.

These items are now `#[stable]`

* `Cursor`
* `Cursor::{new, into_inner, get_ref, get_mut, position, set_position}`
* Implementations of I/O traits for `Cursor<T>`
* Delegating implementations of I/O traits for references and `Box` pointers
* Implementations of I/O traits for primitives like slices and `Vec<T>`
* `ReadExt::bytes`
* `Bytes` (and impls)
* `ReadExt::chain`
* `Chain` (and impls)
* `ReadExt::take` (and impls)
* `BufReadExt::lines`
* `Lines` (and impls)
* `io::copy`
* `io::{empty, Empty}` (and impls)
* `io::{sink, Sink}` (and impls)
* `io::{repeat, Repeat}` (and impls)

These items remain `#[unstable]`

* Core I/O traits. These may want a little bit more time to bake along with the
  commonly used methods like `read_to_end`.
* `BufReadExt::split` - this function may be renamed to not conflict with
  `SliceExt::split`.
* `Error` - there are a number of questions about its representation,
  `ErrorKind`, and usability.

These items are now `#[deprecated]` in `old_io`

* `LimitReader` - use `take` instead
* `NullWriter` - use `io::sink` instead
* `ZeroReader` - use `io::repeat` instead
* `NullReader` - use `io::empty` instead
* `MultiWriter` - use `broadcast` instead
* `ChainedReader` - use `chain` instead
* `TeeReader` - use `tee` instead
* `copy` - use `io::copy` instead

[breaking-change]
@alexcrichton
Copy link
Member Author

@bors: r=aturon 0dafa997

@bors
Copy link
Contributor

bors commented Mar 5, 2015

🙀 0dafa997 is not a valid commit SHA. Please try again with 0dfa997.

@alexcrichton
Copy link
Member Author

@bors: r=aturon 0dfa997

@bors
Copy link
Contributor

bors commented Mar 5, 2015

⌛ Testing commit 0dfa997 with merge fc05d6a...

@bors
Copy link
Contributor

bors commented Mar 5, 2015

💔 Test failed - auto-linux-64-x-android-t

@alexcrichton
Copy link
Member Author

@bors: retry

1 similar comment
@alexcrichton
Copy link
Member Author

@bors: retry

Manishearth added a commit to Manishearth/rust that referenced this pull request Mar 6, 2015
… r=aturon

 The new `io` module has had some time to bake and this commit stabilizes some of
the utilities associated with it. This commit also deprecates a number of
`std::old_io::util` functions and structures.

These items are now `#[stable]`

* `Cursor`
* `Cursor::{new, into_inner, get_ref, get_mut, position, set_position}`
* Implementations of I/O traits for `Cursor<T>`
* Delegating implementations of I/O traits for references and `Box` pointers
* Implementations of I/O traits for primitives like slices and `Vec<T>`
* `ReadExt::bytes`
* `Bytes` (and impls)
* `ReadExt::chain`
* `Chain` (and impls)
* `ReadExt::take` (and impls)
* `BufReadExt::lines`
* `Lines` (and impls)
* `io::copy`
* `io::{empty, Empty}` (and impls)
* `io::{sink, Sink}` (and impls)
* `io::{repeat, Repeat}` (and impls)

These items remain `#[unstable]`

* Core I/O traits. These may want a little bit more time to bake along with the
  commonly used methods like `read_to_end`.
* `BufReadExt::split` - this function may be renamed to not conflict with
  `SliceExt::split`.
* `Error` - there are a number of questions about its representation,
  `ErrorKind`, and usability.

These items are now `#[deprecated]` in `old_io`

* `LimitReader` - use `take` instead
* `NullWriter` - use `io::sink` instead
* `ZeroReader` - use `io::repeat` instead
* `NullReader` - use `io::empty` instead
* `MultiWriter` - use `broadcast` instead
* `ChainedReader` - use `chain` instead
* `TeeReader` - use `tee` instead
* `copy` - use `io::copy` instead

[breaking-change]
@bors bors merged commit 0dfa997 into rust-lang:master Mar 7, 2015
@alexcrichton alexcrichton deleted the deprecate-some-old-io branch March 7, 2015 06:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants