Tracking Issue for Vec::try_shrink_to*
Open
Nobody has claimed this yet.
C-tracking-issue
T-libs
- Dominant language
- Rust
- Stars
- 119k
- Forks
- 16.1k
- PR merge metrics
- PR metrics pending
Description
Feature gate: #![feature(vec_fallible_shrink)]
This is a tracking issue for implementing fallible shrink methods on Vec so that they may be used in contexts without global OOM handling.
Public API
// alloc::vec
impl Vec {
pub fn try_shrink_to(&mut self, min_capacity: usize) -> Result<(), TryReserveError>;
pub fn try_shrink_to_fit(&mut self) -> Result<(), TryReserveError>;
}
Steps / History
- ACP: rust-lang/libs-team#728
- Implementation: #152366
- Final comment period (FCP)[^1]
- Stabilization PR
Unresolved Questions
- Should this use AllocError or TryReserveError?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the public API in this issue and review the completed implementation in #152366, including the vec_fallible_shrink feature gate. The remaining work is the final comment period and a stabilization PR; resolution means completing that lifecycle with no unresolved questions, including the AllocError versus TryReserveError choice.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100