Skip to content

Commit

Permalink
Update duration docs for oldtime feature (#484)
Browse files Browse the repository at this point in the history
The main crate docs made some claims about the Duration type that became
incorrect with the new oldtime feature (#478).

Per @jhpratt.
  • Loading branch information
benesch authored Sep 26, 2020
1 parent 70432bc commit 1402e8d
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 10 deletions.
17 changes: 12 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,15 +77,22 @@ See the [cargo docs][] for examples of specifying features.

### Duration

Chrono currently uses
the [`time::Duration`](https://docs.rs/time/0.1.40/time/struct.Duration.html) type
from the `time` crate to represent the magnitude of a time span.
Since this has the same name as the newer, standard type for duration,
the reference will refer this type as `OldDuration`.
Chrono currently uses its own [`Duration`] type to represent the magnitude
of a time span. Since this has the same name as the newer, standard type for
duration, the reference will refer this type as `OldDuration`.

Note that this is an "accurate" duration represented as seconds and
nanoseconds and does not represent "nominal" components such as days or
months.

When the `oldtime` feature is enabled, [`Duration`] is an alias for the
[`time::Duration`](https://docs.rs/time/0.1.40/time/struct.Duration.html)
type from v0.1 of the time crate. time v0.1 is deprecated, so new code
should disable the `oldtime` feature and use the `chrono::Duration` type
instead. The `oldtime` feature is enabled by default for backwards
compatibility, but future versions of Chrono are likely to remove the
feature entirely.

Chrono does not yet natively support
the standard [`Duration`](https://doc.rust-lang.org/std/time/struct.Duration.html) type,
but it will be supported in the future.
Expand Down
17 changes: 12 additions & 5 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -64,15 +64,22 @@
//!
//! ### Duration
//!
//! Chrono currently uses
//! the [`time::Duration`](https://docs.rs/time/0.1.40/time/struct.Duration.html) type
//! from the `time` crate to represent the magnitude of a time span.
//! Since this has the same name as the newer, standard type for duration,
//! the reference will refer this type as `OldDuration`.
//! Chrono currently uses its own [`Duration`] type to represent the magnitude
//! of a time span. Since this has the same name as the newer, standard type for
//! duration, the reference will refer this type as `OldDuration`.
//!
//! Note that this is an "accurate" duration represented as seconds and
//! nanoseconds and does not represent "nominal" components such as days or
//! months.
//!
//! When the `oldtime` feature is enabled, [`Duration`] is an alias for the
//! [`time::Duration`](https://docs.rs/time/0.1.40/time/struct.Duration.html)
//! type from v0.1 of the time crate. time v0.1 is deprecated, so new code
//! should disable the `oldtime` feature and use the `chrono::Duration` type
//! instead. The `oldtime` feature is enabled by default for backwards
//! compatibility, but future versions of Chrono are likely to remove the
//! feature entirely.
//!
//! Chrono does not yet natively support
//! the standard [`Duration`](https://doc.rust-lang.org/std/time/struct.Duration.html) type,
//! but it will be supported in the future.
Expand Down

0 comments on commit 1402e8d

Please sign in to comment.