Skip to content

Tracking issue for str::replacen #36436

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Closed
knight42 opened this issue Sep 13, 2016 · 9 comments
Closed

Tracking issue for str::replacen #36436

knight42 opened this issue Sep 13, 2016 · 9 comments
Labels
B-unstable Blocker: Implemented in the nightly compiler and unstable. final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.

Comments

@knight42
Copy link
Contributor

Implemented in #36347

cc @alexcrichton

@alexcrichton alexcrichton added T-libs-api Relevant to the library API team, which will review and decide on the PR/issue. B-unstable Blocker: Implemented in the nightly compiler and unstable. labels Sep 13, 2016
@alexcrichton
Copy link
Member

@rfcbot fcp merge

Still looks like a good API to me!

@rfcbot
Copy link
Collaborator

rfcbot commented Dec 29, 2016

Team member @alexcrichton has proposed to merge this. The next step is review by the rest of the tagged teams:

No concerns currently listed.

Once these reviewers reach consensus, this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@brson
Copy link
Contributor

brson commented Dec 29, 2016

What's special abut the first N of a thing during replacement that it needs its own function? I don't see much discussion on the linked PR that created this, and I don't recall anything about it.

@knight42
Copy link
Contributor Author

knight42 commented Dec 30, 2016

@brson
I often come across a case that I only need to replace the first match in a line during text processing. Since str::replace will always replace all the matches, I guess adding a parameter to control the count of occurrences that it replaces would be more convenient.

@aturon
Copy link
Member

aturon commented Jan 6, 2017

Note that this method follows the convention set out by methods like splitn.

I suspect replacen with a count of 1 will be a common usage.

@knight42
Copy link
Contributor Author

@brson Does this sound good to you? Or are there any improvement that I can make?

@brson
Copy link
Contributor

brson commented Jan 20, 2017

@knight42 it's good. Thanks.

@aturon
Copy link
Member

aturon commented Jan 21, 2017

Manually moving to final comment period with disposition to stabilize.

@aturon aturon added the final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. label Jan 21, 2017
@rfcbot
Copy link
Collaborator

rfcbot commented Jan 23, 2017

🔔 This is now entering its final comment period, as per the review above. 🔔

psst @alexcrichton, I wasn't able to add the final-comment-period label, please do so.

alexcrichton added a commit to alexcrichton/rust that referenced this issue Jan 26, 2017
This commit applies the stabilization/deprecations of the 1.16.0 release, as
tracked by the rust-lang/rust issue tracker and the final-comment-period tag.

The following APIs were stabilized:

* `VecDeque::truncate`
* `VecDeque::resize`
* `String::insert_str`
* `Duration::checked_{add,sub,div,mul}`
* `str::replacen`
* `SocketAddr::is_ipv{4,6}`
* `IpAddr::is_ipv{4,6}`
* `str::repeat`
* `Vec::dedup_by`
* `Vec::dedup_by_key`
* `Result::unwrap_or_default`
* `<*const T>::wrapping_offset`
* `<*mut T>::wrapping_offset`
* `CommandExt::creation_flags` (on Windows)
* `File::set_permissions`
* `String::split_off`

The following APIs were deprecated

* `EnumSet` - replaced with other ecosystem abstractions, long since unstable

Closes rust-lang#27788
Closes rust-lang#35553
Closes rust-lang#35774
Closes rust-lang#36436
Closes rust-lang#36949
Closes rust-lang#37079
Closes rust-lang#37087
Closes rust-lang#37516
Closes rust-lang#37827
Closes rust-lang#37916
Closes rust-lang#37966
Closes rust-lang#38080
alexcrichton added a commit to alexcrichton/rust that referenced this issue Jan 28, 2017
std: Stabilize APIs for the 1.16.0 release

This commit applies the stabilization/deprecations of the 1.16.0 release, as
tracked by the rust-lang/rust issue tracker and the final-comment-period tag.

The following APIs were stabilized:

* `VecDeque::truncate`
* `VecDeque::resize`
* `String::insert_str`
* `Duration::checked_{add,sub,div,mul}`
* `str::replacen`
* `SocketAddr::is_ipv{4,6}`
* `IpAddr::is_ipv{4,6}`
* `str::repeat`
* `Vec::dedup_by`
* `Vec::dedup_by_key`
* `Result::unwrap_or_default`
* `<*const T>::wrapping_offset`
* `<*mut T>::wrapping_offset`
* `CommandExt::creation_flags` (on Windows)
* `File::set_permissions`
* `String::split_off`

The following APIs were deprecated

* `EnumSet` - replaced with other ecosystem abstractions, long since unstable

Closes rust-lang#27788
Closes rust-lang#35553
Closes rust-lang#35774
Closes rust-lang#36436
Closes rust-lang#36949
Closes rust-lang#37079
Closes rust-lang#37087
Closes rust-lang#37516
Closes rust-lang#37827
Closes rust-lang#37916
Closes rust-lang#37966
Closes rust-lang#38080
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
B-unstable Blocker: Implemented in the nightly compiler and unstable. final-comment-period In the final comment period and will be merged soon unless new substantive objections are raised. T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

5 participants