improve maitake timer wheel #1331
ci.yml
on: pull_request
changed_paths
9s
cargo check (host)
3m 34s
rustfmt
14s
clippy
2m 54s
cargo test (host)
4m 42s
build boot image (x86_64)
3m 15s
cargo test (cross x64)
4m 40s
docs
2m 11s
Loom tests (cordyceps)
1m 39s
Miri tests (codyceps)
1m 56s
Tests (maitake, no-default-features)
1m 42s
Loom tests (maitake)
1m 32s
Loom tests (mycelium-util)
59s
Annotations
12 errors and 45 warnings
Loom tests (maitake)
Process completed with exit code 100.
|
Tests (maitake, no-default-features)
Process completed with exit code 101.
|
docs:
maitake/src/time/clock.rs#L94
error: missing documentation for an associated function
--> maitake/src/time/clock.rs:94:5
|
94 | pub const fn new(now: fn() -> Ticks, tick_duration: Duration) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `-D missing-docs` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(missing_docs)]`
|
docs:
maitake/src/time/clock.rs#L104
error: missing documentation for a method
--> maitake/src/time/clock.rs:104:5
|
104 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L109
error: missing documentation for a method
--> maitake/src/time/clock.rs:109:5
|
109 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L115
error: missing documentation for a method
--> maitake/src/time/clock.rs:115:5
|
115 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/timer.rs#L307
error: missing documentation for a method
--> maitake/src/time/timer.rs:307:5
|
307 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L56
error: public documentation for `Clock` links to private item `Ticks`
--> maitake/src/time/clock.rs:56:20
|
56 | /// timestamp in [`Ticks`], and a [`Duration`] that defines the amount of time
| ^^^^^ this item is private
|
= note: this link will resolve properly if you pass `--document-private-items`
= note: `-D rustdoc::private-intra-doc-links` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(rustdoc::private_intra_doc_links)]`
|
docs:
maitake/src/time/timer.rs#L65
error: unresolved link to `Timer::advance`
--> maitake/src/time/timer.rs:65:58
|
65 | /// must be driven by a *time source*, which calls the [`Timer::advance`] method
| ^^^^^^^^^^^^^^ the struct `Timer` has no field or associated item named `advance`
|
= note: `-D rustdoc::broken-intra-doc-links` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(rustdoc::broken_intra_doc_links)]`
|
docs:
maitake/src/time/timer.rs#L66
error: unresolved link to `Timer::force_advance`
--> maitake/src/time/timer.rs:66:47
|
66 | /// and/or the [`Timer::pend_duration`] and [`Timer::force_advance`] methods.
| ^^^^^^^^^^^^^^^^^^^^ the struct `Timer` has no field or associated item named `force_advance`
|
docs:
maitake/src/time/timer.rs#L86
error: unresolved link to `Timer::advance`
--> maitake/src/time/timer.rs:86:7
|
86 | /// [`Timer::advance`] methods.
| ^^^^^^^^^^^^^^ the struct `Timer` has no field or associated item named `advance`
|
docs:
maitake/src/time/timer.rs#L88
error: unresolved link to `Timer::advance`
--> maitake/src/time/timer.rs:88:7
|
88 | /// [`Timer::advance`] will attempt to optimistically acquire a spinlock, and
| ^^^^^^^^^^^^^^ the struct `Timer` has no field or associated item named `advance`
|
Loom tests (mycelium-util)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Loom tests (maitake)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Loom tests (cordyceps)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Miri tests (codyceps)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
docs
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
docs:
maitake/src/time/clock.rs#L199
warning: unused variable: `earlier`
--> maitake/src/time/clock.rs:199:42
|
199 | pub fn checked_duration_since(&self, earlier: Instant) -> Option<Duration> {
| ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_earlier`
|
= note: `#[warn(unused_variables)]` on by default
|
docs:
maitake/src/time/clock.rs#L215
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:215:31
|
215 | pub fn checked_add(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
docs:
maitake/src/time/clock.rs#L224
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:224:31
|
224 | pub fn checked_sub(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
docs:
maitake/src/time/clock.rs#L94
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:94:5
|
94 | pub const fn new(now: fn() -> Ticks, tick_duration: Duration) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: the lint level is defined here
--> maitake/src/time.rs:45:9
|
45 | #![warn(missing_docs, missing_debug_implementations)]
| ^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L104
warning: missing documentation for a method
--> maitake/src/time/clock.rs:104:5
|
104 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L109
warning: missing documentation for a method
--> maitake/src/time/clock.rs:109:5
|
109 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L115
warning: missing documentation for a method
--> maitake/src/time/clock.rs:115:5
|
115 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/timer.rs#L307
warning: missing documentation for a method
--> maitake/src/time/timer.rs:307:5
|
307 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
clippy:
maitake/src/time/clock.rs#L199
warning: unused variable: `earlier`
--> maitake/src/time/clock.rs:199:42
|
199 | pub fn checked_duration_since(&self, earlier: Instant) -> Option<Duration> {
| ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_earlier`
|
= note: `#[warn(unused_variables)]` on by default
|
clippy:
maitake/src/time/clock.rs#L215
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:215:31
|
215 | pub fn checked_add(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
clippy:
maitake/src/time/clock.rs#L224
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:224:31
|
224 | pub fn checked_sub(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
clippy:
maitake/src/time/clock.rs#L132
warning: this function has an empty `#[must_use]` attribute, but returns a type already marked as `#[must_use]`
--> maitake/src/time/clock.rs:132:1
|
132 | / pub(in crate::time) fn dur_to_ticks(
133 | | tick_duration: Duration,
134 | | dur: Duration,
135 | | ) -> Result<Ticks, TimerError> {
| |______________________________^
|
= help: either add some descriptive text or remove the attribute
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_must_use
= note: `#[warn(clippy::double_must_use)]` on by default
|
clippy:
maitake/src/time/clock.rs#L94
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:94:5
|
94 | pub const fn new(now: fn() -> Ticks, tick_duration: Duration) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: the lint level is defined here
--> maitake/src/time.rs:45:9
|
45 | #![warn(missing_docs, missing_debug_implementations)]
| ^^^^^^^^^^^^
|
clippy:
maitake/src/time/clock.rs#L104
warning: missing documentation for a method
--> maitake/src/time/clock.rs:104:5
|
104 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy:
maitake/src/time/clock.rs#L109
warning: missing documentation for a method
--> maitake/src/time/clock.rs:109:5
|
109 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy:
maitake/src/time/clock.rs#L115
warning: missing documentation for a method
--> maitake/src/time/clock.rs:115:5
|
115 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy:
maitake/src/time/timer.rs#L307
warning: missing documentation for a method
--> maitake/src/time/timer.rs:307:5
|
307 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy:
src/rt.rs#L10
warning: unused import: `time`
--> src/rt.rs:10:5
|
10 | time,
| ^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
cargo check (host):
maitake/src/time/clock.rs#L199
warning: unused variable: `earlier`
--> maitake/src/time/clock.rs:199:42
|
199 | pub fn checked_duration_since(&self, earlier: Instant) -> Option<Duration> {
| ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_earlier`
|
= note: `#[warn(unused_variables)]` on by default
|
cargo check (host):
maitake/src/time/clock.rs#L215
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:215:31
|
215 | pub fn checked_add(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
cargo check (host):
maitake/src/time/clock.rs#L224
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:224:31
|
224 | pub fn checked_sub(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
cargo check (host):
maitake/src/time/clock.rs#L94
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:94:5
|
94 | pub const fn new(now: fn() -> Ticks, tick_duration: Duration) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: the lint level is defined here
--> maitake/src/time.rs:45:9
|
45 | #![warn(missing_docs, missing_debug_implementations)]
| ^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L104
warning: missing documentation for a method
--> maitake/src/time/clock.rs:104:5
|
104 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L109
warning: missing documentation for a method
--> maitake/src/time/clock.rs:109:5
|
109 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L115
warning: missing documentation for a method
--> maitake/src/time/clock.rs:115:5
|
115 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/timer.rs#L307
warning: missing documentation for a method
--> maitake/src/time/timer.rs:307:5
|
307 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
src/rt.rs#L10
warning: unused import: `time`
--> src/rt.rs:10:5
|
10 | time,
| ^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
cargo check (host):
src/lib.rs#L169
warning: unreachable statement
--> src/lib.rs:169:5
|
168 | loop {}
| ------- any code following this expression is unreachable
169 | rt::spawn(keyboard_demo());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
|
= note: `#[warn(unreachable_code)]` on by default
|
cargo check (host):
trace/src/embedded_graphics.rs#L132
warning: unused variable: `actual_point`
--> trace/src/embedded_graphics.rs:132:17
|
132 | Err(actual_point) => unsafe {
| ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actual_point`
|
= note: `#[warn(unused_variables)]` on by default
|
cargo check (host):
maitake/src/time/clock.rs#L199
warning: unused variable: `earlier`
--> maitake/src/time/clock.rs:199:42
|
199 | pub fn checked_duration_since(&self, earlier: Instant) -> Option<Duration> {
| ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_earlier`
|
= note: `#[warn(unused_variables)]` on by default
|
cargo check (host):
maitake/src/time/clock.rs#L215
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:215:31
|
215 | pub fn checked_add(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
cargo check (host):
maitake/src/time/clock.rs#L224
warning: unused variable: `duration`
--> maitake/src/time/clock.rs:224:31
|
224 | pub fn checked_sub(&self, duration: Duration) -> Option<Instant> {
| ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
|
cargo check (host):
maitake/src/time/clock.rs#L94
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:94:5
|
94 | pub const fn new(now: fn() -> Ticks, tick_duration: Duration) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: the lint level is defined here
--> maitake/src/time.rs:45:9
|
45 | #![warn(missing_docs, missing_debug_implementations)]
| ^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L104
warning: missing documentation for a method
--> maitake/src/time/clock.rs:104:5
|
104 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L109
warning: missing documentation for a method
--> maitake/src/time/clock.rs:109:5
|
109 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L115
warning: missing documentation for a method
--> maitake/src/time/clock.rs:115:5
|
115 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/timer.rs#L307
warning: missing documentation for a method
--> maitake/src/time/timer.rs:307:5
|
307 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
src/rt.rs#L10
warning: unused import: `time`
--> src/rt.rs:10:5
|
10 | time,
| ^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
cargo test (host)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: extractions/setup-just@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|