improve maitake timer wheel #1333
Triggered via pull request
February 2, 2024 17:01
Status
Failure
Total duration
6h 0m 39s
Artifacts
–
ci.yml
on: pull_request
changed_paths
7s
cargo check (host)
3m 39s
rustfmt
13s
clippy
2m 55s
cargo test (host)
16m 40s
build boot image (x86_64)
3m 17s
cargo test (cross x64)
8m 28s
docs
2m 6s
Loom tests (cordyceps)
1m 38s
Miri tests (codyceps)
1m 59s
Tests (maitake, no-default-features)
1m 41s
Loom tests (maitake)
6h 0m
Loom tests (mycelium-util)
51s
Annotations
13 errors and 47 warnings
Tests (maitake, no-default-features)
Process completed with exit code 101.
|
docs:
maitake/src/time/clock.rs#L96
error: missing documentation for an associated function
--> maitake/src/time/clock.rs:96:5
|
96 | pub const fn new(tick_duration: Duration, now: fn() -> Ticks) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `-D missing-docs` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(missing_docs)]`
|
docs:
maitake/src/time/clock.rs#L105
error: missing documentation for a method
--> maitake/src/time/clock.rs:105:5
|
105 | pub const fn named(self, name: &'static str) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L118
error: missing documentation for a method
--> maitake/src/time/clock.rs:118:5
|
118 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L123
error: missing documentation for a method
--> maitake/src/time/clock.rs:123:5
|
123 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L130
error: missing documentation for a method
--> maitake/src/time/clock.rs:130:5
|
130 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L135
error: missing documentation for a method
--> maitake/src/time/clock.rs:135:5
|
135 | pub fn name(&self) -> Option<&'static str> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
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#L59
error: public documentation for `Clock` links to private item `Ticks`
--> maitake/src/time/clock.rs:59:20
|
59 | /// 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`
|
cargo test (host)
Process completed with exit code 100.
|
Loom tests (maitake)
The operation was canceled.
|
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 (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/timer.rs#L313
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
docs:
maitake/src/time/timer.rs#L314
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
docs:
maitake/src/time/timer/wheel.rs#L62
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
docs:
maitake/src/time/timer/wheel.rs#L98
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
docs:
maitake/src/time/clock.rs#L96
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:96:5
|
96 | pub const fn new(tick_duration: Duration, now: fn() -> Ticks) -> 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#L105
warning: missing documentation for a method
--> maitake/src/time/clock.rs:105:5
|
105 | pub const fn named(self, name: &'static str) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L118
warning: missing documentation for a method
--> maitake/src/time/clock.rs:118:5
|
118 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L123
warning: missing documentation for a method
--> maitake/src/time/clock.rs:123:5
|
123 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L130
warning: missing documentation for a method
--> maitake/src/time/clock.rs:130:5
|
130 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
docs:
maitake/src/time/clock.rs#L135
warning: missing documentation for a method
--> maitake/src/time/clock.rs:135:5
|
135 | pub fn name(&self) -> Option<&'static str> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
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/timer.rs#L313
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
clippy:
maitake/src/time/timer.rs#L314
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
clippy:
maitake/src/time/timer/wheel.rs#L62
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
clippy:
maitake/src/time/timer/wheel.rs#L98
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
clippy:
maitake/src/time/clock.rs#L151
warning: this function has an empty `#[must_use]` attribute, but returns a type already marked as `#[must_use]`
--> maitake/src/time/clock.rs:151:1
|
151 | / pub(in crate::time) fn dur_to_ticks(
152 | | tick_duration: Duration,
153 | | dur: Duration,
154 | | ) -> 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/timer.rs#L313
warning: parameter is only used in recursion
--> maitake/src/time/timer.rs:313:19
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^
|
note: parameter used here
--> maitake/src/time/timer.rs:314:9
|
314 | self.clock()
| ^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#only_used_in_recursion
= note: `#[warn(clippy::only_used_in_recursion)]` on by default
|
clippy:
maitake/src/time/clock.rs#L96
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:96:5
|
96 | pub const fn new(tick_duration: Duration, now: fn() -> Ticks) -> 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#L105
warning: missing documentation for a method
--> maitake/src/time/clock.rs:105:5
|
105 | pub const fn named(self, name: &'static str) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy:
maitake/src/time/clock.rs#L118
warning: missing documentation for a method
--> maitake/src/time/clock.rs:118:5
|
118 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
clippy:
maitake/src/time/clock.rs#L123
warning: missing documentation for a method
--> maitake/src/time/clock.rs:123:5
|
123 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/timer.rs#L313
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
cargo check (host):
maitake/src/time/timer.rs#L314
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
cargo check (host):
maitake/src/time/timer/wheel.rs#L62
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
cargo check (host):
maitake/src/time/timer/wheel.rs#L98
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
cargo check (host):
maitake/src/time/clock.rs#L96
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:96:5
|
96 | pub const fn new(tick_duration: Duration, now: fn() -> Ticks) -> 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#L105
warning: missing documentation for a method
--> maitake/src/time/clock.rs:105:5
|
105 | pub const fn named(self, name: &'static str) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L118
warning: missing documentation for a method
--> maitake/src/time/clock.rs:118:5
|
118 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L123
warning: missing documentation for a method
--> maitake/src/time/clock.rs:123:5
|
123 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L130
warning: missing documentation for a method
--> maitake/src/time/clock.rs:130:5
|
130 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L135
warning: missing documentation for a method
--> maitake/src/time/clock.rs:135:5
|
135 | pub fn name(&self) -> Option<&'static str> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/timer.rs#L313
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
cargo check (host):
maitake/src/time/timer.rs#L314
warning: function cannot return without recursing
--> maitake/src/time/timer.rs:313:5
|
313 | pub fn clock(&self) -> &Clock {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing
314 | self.clock()
| ------------ recursive call site
|
= help: a `loop` may express intention better if this is on purpose
= note: `#[warn(unconditional_recursion)]` on by default
|
cargo check (host):
maitake/src/time/timer/wheel.rs#L62
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
cargo check (host):
maitake/src/time/timer/wheel.rs#L98
warning: method `now` is never used
--> maitake/src/time/timer/wheel.rs:98:19
|
62 | impl Core {
| --------- method in this implementation
...
98 | pub(super) fn now(&self) -> Ticks {
| ^^^
|
= note: `#[warn(dead_code)]` on by default
|
cargo check (host):
maitake/src/time/clock.rs#L96
warning: missing documentation for an associated function
--> maitake/src/time/clock.rs:96:5
|
96 | pub const fn new(tick_duration: Duration, now: fn() -> Ticks) -> 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#L105
warning: missing documentation for a method
--> maitake/src/time/clock.rs:105:5
|
105 | pub const fn named(self, name: &'static str) -> Self {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L118
warning: missing documentation for a method
--> maitake/src/time/clock.rs:118:5
|
118 | pub fn tick_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L123
warning: missing documentation for a method
--> maitake/src/time/clock.rs:123:5
|
123 | pub fn now(&self) -> Instant {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L130
warning: missing documentation for a method
--> maitake/src/time/clock.rs:130:5
|
130 | pub fn max_duration(&self) -> Duration {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
cargo check (host):
maitake/src/time/clock.rs#L135
warning: missing documentation for a method
--> maitake/src/time/clock.rs:135:5
|
135 | pub fn name(&self) -> Option<&'static str> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
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/.
|
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/.
|