PackageTrack
Sign in Get early access

downcast-rs

Trait object downcasting support using only safe Rust. It supports type parameters, associated types, and type constraints.

2.0.2 151M downloads/mo #612 most downloaded on crates.io marcianx/downcast-rs

What this package is like to depend on

Last release 11 months ago

01 Sep 2025

Ships unpredictably

gaps range from 9 days to 3.8 years

Nearly every release is documented

notes for 14 of 15 stable releases

Nothing withdrawn

no release was ever pulled

11 years old

15 releases · first in 2015

1 release in the last 12 months

see the full history below

Release timeline

15 releases · Dec 2015 to Sep 2025
2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 15
  1. 2.0.2 01 Sep 2025
    Release notes

    Changed

    • Updated README.md to omit lines hidden in crate documentation.
    • (Minor) Cargo.toml: Corrected license format and added categories.
    Open source →
  2. 2.0.1 07 Jan 2025
    Release notes

    Refine the trait and method documentation.

    Open source →
    Release notes

    Change

    Open source →
  3. 2.0.0 07 Jan 2025
    Release notes

    Update version to 2.0.0 and update CHANGELOG.md.

    Open source →
    Release notes

    Added

    • Gated the sync/Arc downcasting functionality behind a new sync feature that is enabled by default.
    • Added a new DowncastSend trait to support downcasting to Box<Any + Send> and made DowncastSync extend this trait.
    • Added downcasting support to Box<Any + Send + Sync> to DowncastSync.

    Change

    • Updated minimum supported rust version 1.56 to enforce the rustdoc::bare_urls lint (1.53) and switch to edition 2021 (1.56).
    Open source →
  4. 1.2.1 07 Apr 2024
    Release notes

    Bump version to 1.2.1 and update changelog.

    Open source →
    Release notes

    Change

    • Consolidated bounds on the trait to avoid triggering Clippy's multiple_bound_locations lint.
    Open source →
  5. 1.2.0 30 Jun 2020
    Release notes

    Reduce the number of keywords by one to be able to publish.

    Open source →
    Release notes

    Added

    • no_std support.
    • CI with GitHub actions.

    Changed

    • Updated minimum supported rust version 1.36 for stable access to alloc.
    Open source →
  6. 1.1.1 28 Oct 2019
    Release notes

    Use dyn Trait syntax everywhere since it is supported by this libra…

    Open source →
    Release notes

    Changed

    • Used dyn Trait syntax everywhere since it is supported by downcast-rs's min-supported rust version (1.33).
    Open source →
  7. 1.1.0 08 Oct 2019
    Release notes

    Added

    • Support for downcasting Rc<Trait> and Arc<Trait>.

    Changed

    • Minimum supported Rust version upped to 1.33 to support Rc and Arc in the receiver position.
    Open source →
  8. 1.0.4 09 Apr 2019
    Release notes

    Update CHANGELOG and bump version to 1.0.4.

    Open source →
    Release notes

    Changed

    • Added local_inner_macros to impl_downcast to allow invoking via namespace.
    Open source →
  9. 1.0.3 22 May 2018
    Release notes

    Add a CHANGELONG and bump version to 1.0.3.

    Open source →
    Release notes

    Fixed

    • Use global path for Result, Option, Box in macro expansion to avoid name conflicts with locally-defined symbols.
    Open source →
  10. 1.0.2 12 May 2018
    Release notes

    Minor release for minor feature addition.

    Open source →
    Release notes

    Added

    • Support for downcasting Box<Trait> to Box<Concrete>.
    Open source →
  11. 1.0.1 09 Mar 2018
    Release notes

    Bump up the patch version to publish the minor fix.

    Open source →
    Release notes

    Fixed

    • Don't use types as traits in macros.
    Open source →
  12. 1.0.0 05 Feb 2017
    Release notes

    Changed

    • Cleaned up README and published 1.0.
    Open source →
  13. 0.1.2 22 Nov 2016
    Release notes

    Added

    • Support for associated types as well.
    Open source →
  14. 0.1.1 09 Apr 2016
    Release notes

    Added

    • Downcast functionality to downcast borrowed mutable and immutable trait objects to concrete types. Supports concrete type parameters and type variables with optional constraints.
    Open source →
  15. 0.1.0 16 Dec 2015

    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