diff --git a/CHANGELOG.md b/CHANGELOG.md index ef91ad9..3deee61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## 2.0.0 - 2025-01-06 +### 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` + and made `DowncastSync` extend this trait. +- Added downcasting support to `Box` to `DowncastSync`. + +### Change +- Updated min supported rust version 1.56 to enforce the `rustdoc::bare_urls` + lint (1.53) and switch to edition 2021 (1.56). + ## 1.2.1 - 2024-04-06 ### Change - Consolidated bounds on the trait to avoid triggering Clippy's @@ -22,6 +34,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## 1.1.0 - 2019-10-07 ### Added - Support for downcasting `Rc` and `Arc`. + ### Changed - Minimum supported Rust version upped to 1.33 to support `Rc` and `Arc` in the receiver position. diff --git a/Cargo.toml b/Cargo.toml index 1737262..9ed78c7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "downcast-rs" edition = "2021" -version = "1.2.1" +version = "2.0.0" rust-version = "1.56" repository = "https://github.com/marcianx/downcast-rs" description = """ diff --git a/README.md b/README.md index 3bcd344..553aad0 100644 --- a/README.md +++ b/README.md @@ -19,21 +19,21 @@ Add the following to your `Cargo.toml`: ```toml [dependencies] -downcast-rs = "1.2.1" +downcast-rs = "2.0.0" ``` This crate is `no_std` compatible. To use it without `std`: ```toml [dependencies] -downcast-rs = { version = "1.2.1", default-features = false } +downcast-rs = { version = "2.0.0", default-features = false } ``` To make a trait downcastable, make it extend either `downcast::Downcast` or `downcast::DowncastSync` and invoke `impl_downcast!` on it as in the examples below. -Since 1.2.0, the minimum supported Rust version is 1.36 due to needing stable access to alloc. +Since 2.0.0, the minimum supported Rust version is 1.56. ## #[macro_use] ## extern crate downcast_rs; diff --git a/src/lib.rs b/src/lib.rs index ef61c17..e173031 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -19,21 +19,21 @@ //! //! ```toml //! [dependencies] -//! downcast-rs = "1.2.1" +//! downcast-rs = "2.0.0" //! ``` //! //! This crate is `no_std` compatible. To use it without `std`: //! //! ```toml //! [dependencies] -//! downcast-rs = { version = "1.2.1", default-features = false } +//! downcast-rs = { version = "2.0.0", default-features = false } //! ``` //! //! To make a trait downcastable, make it extend either `downcast::Downcast` or //! `downcast::DowncastSync` and invoke `impl_downcast!` on it as in the examples //! below. //! -//! Since 1.2.0, the minimum supported Rust version is 1.36 due to needing stable access to alloc. +//! Since 2.0.0, the minimum supported Rust version is 1.56. //! #![cfg_attr(feature = "sync", doc = "```")] #![cfg_attr(not(feature = "sync"), doc = "```ignore")]