NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #3944 most downloaded on crates.io
Compact, clone-on-write vector, string, and byte buffer.
Last release 1 months ago
02 Sep 2026
Release timing varies
gaps range from 2 weeks to 10 months
Most releases are documented
notes for 10 of 12 stable releases
1 version withdrawn
withdrawn after publishing
4 years old
13 releases · first in 2023
One column per quarter.
Added new EcoBytes type, similar to EcoString but without enforcement of UTF-8 (thanks to @flyingmutant and @imbrem )
EcoBytes type, similar to EcoString but without enforcement of UTF-8 (thanks to @flyingmutant and @imbrem)EcoString::{capacity, reserve}no_std (thanks to @pedrodesu)Added EcoString::{insert, insert_str, remove} methods
EcoString::{insert, insert_str, remove} methodsEcoVec::{drain, splice} methodsToEcoString trait for conveniently converting something that implements Display to an EcoStringAsRef<[u8]>, AsRef<OsStr>, and AsRef<Path> impls for EcoString (thanks to @tingerrr)FromIterator<&str> and Extend<&str> impls for EcoString (thanks to @pedrodesu)EcoVec::reserve in the case it is non-unique (thanks to @ndren)#[clippy::format_args] to eco_format macro so that eco_format! calls are linted by clippy (thanks to @isuffix)This is a re-release of v0.2.7 which has been yanked. See #63 for more information.
This release has been yanked, use v0.3.0 instead. See #63 for more information.
This release has been yanked, use v0.3.0 instead. See #63 for more information.
The conversion From<Vec<T>> for EcoVec<T> was optimized. It still has to allocate new storage, but copies all items in a single batch now (thanks to @
From<Vec<T>> for EcoVec<T> was optimized. It still has to allocate new storage, but copies all items in a single batch now (thanks to @bergkvist).EcoString now implements std::FromStr (thanks to @timvisee )
EcoString now implements std::str::FromStr (thanks to @timvisee)Added EcoString::truncate (thanks to @ronnodas )
EcoString::truncate (thanks to @ronnodas)Added From<&EcoString> for EcoString (thanks to @idlercloud )
From<&EcoString> for EcoString (thanks to @idlercloud)TryFrom<EcoVec<T>> for [T; N] (thanks to @kaikalii)Added EcoVec::extend_from_trusted (thanks to @kaikalii )
EcoVec::extend_from_trusted (thanks to @kaikalii)Added From<&String> for EcoString (thanks to @IanManske )
From<&String> for EcoString (thanks to @IanManske)…and return an EcoString instead of a String . (Breaking change)
EcoString::make_mut for getting an &mut strEcoString::{replace, replacen, to_ascii_lowercase, to_ascii_uppercase} which perform the respective operation and return an EcoString instead of a String. (Breaking change)#[inline] annotation (thanks to @Kmeakin)Marked EcoVec::{new, is_empty, len} as const fn (thanks to @Kmeakin )
EcoVec::{new, is_empty, len} as const fn (thanks to @Kmeakin)EcoVec::from_elem and eco_vec! macro (thanks to @Kmeakin)EcoVec which simplifies the code and removes a potential branch in EcoVec::as_slice for types with huge alignment (thanks to @Kmeakin)std feature (enabled by default) and impl std::io::Write for EcoVec<u8> guarded by it (thanks to @imbrem)Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →