PackageTrack
Sign in Get early access

ecow

Compact, clone-on-write vector and string.

0.3.0 5.6M downloads/mo #4288 most downloaded on crates.io typst/ecow

What this package is like to depend on

Last release 2 months ago

26 May 2026

Release timing varies

gaps range from 2 weeks to 10 months

Most releases are documented

notes for 9 of 11 stable releases

1 version withdrawn

withdrawn after publishing

3 years old

12 releases · first in 2023

2 releases in the last 12 months

see the full history below

Release timeline

12 releases · Mar 2023 to May 2026
2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 12
  1. 0.3.0 26 May 2026
    Release notes
    • Added EcoString::{insert, insert_str, remove} methods
    • Added EcoVec::{drain, splice} methods
    • Added ToEcoString trait for conveniently converting something that implements Display to an EcoString
    • Added AsRef<[u8]>, AsRef<OsStr>, and AsRef<Path> impls for EcoString (thanks to @tingerrr)
    • Added FromIterator<&str> and Extend<&str> impls for EcoString (thanks to @pedrodesu)
    • Optimized EcoVec::reserve in the case it is non-unique (thanks to @ndren)
    • Added #[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.

    Open source →
  2. 0.2.7 25 May 2026 withdrawn
    Release notes

    This release has been yanked, use v0.3.0 instead. See #63 for more information.

    Open source →
  3. 0.2.6 04 Aug 2025
    Release notes
    • 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 @bergkvist).
    Open source →
  4. 0.2.5 24 Apr 2025
    Release notes
    • EcoString now implements std::str::FromStr (thanks to @timvisee)
    Open source →
  5. 0.2.4 07 Apr 2025
    Release notes
    • Added EcoString::truncate (thanks to @ronnodas)
    • Added MSRV (Rust 1.73)
    Open source →
  6. 0.2.3 30 Oct 2024
    Release notes
    • Added From<&EcoString> for EcoString (thanks to @idlercloud)
    • Added TryFrom<EcoVec<T>> for [T; N] (thanks to @kaikalii)
    • EcoString capacity now grows by 2x instead of +1 when spilling (16 -> 32 instead of 16 -> 17). When already spilled it already did 2x growth before.
    Open source →
  7. 0.2.2 23 Mar 2024
    Release notes
    • Added EcoVec::extend_from_trusted (thanks to @kaikalii)
    Open source →
  8. 0.2.1 06 Mar 2024
    Release notes
    • Added From<&String> for EcoString (thanks to @IanManske)
    • Improved internal pointer handling
    Open source →
  9. 0.2.0 09 Oct 2023
    Release notes
    • Added EcoString::make_mut for getting an &mut str
    • Added EcoString::{replace, replacen, to_ascii_lowercase, to_ascii_uppercase} which perform the respective operation and return an EcoString instead of a String. (Breaking change)
    • Added missing #[inline] annotation (thanks to @Kmeakin)
    • Fixed typos and marked one internal function unsafe (thanks to @hwjsnc)
    Open source →
  10. 0.1.2 19 Aug 2023
    Release notes
    • Marked EcoVec::{new, is_empty, len} as const fn (thanks to @Kmeakin)
    • Improved performance of EcoVec::from_elem and eco_vec! macro (thanks to @Kmeakin)
    • Switched to smarter internal representation of an empty EcoVec which simplifies the code and removes a potential branch in EcoVec::as_slice for types with huge alignment (thanks to @Kmeakin)
    • Added std feature (enabled by default) and impl std::io::Write for EcoVec<u8> guarded by it (thanks to @imbrem)
    Open source →
  11. 0.1.1 16 Apr 2023

    Nothing published for this version

  12. 0.1.0 01 Mar 2023

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive