Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: test more features with Miri #5317

Closed
wants to merge 24 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
de9a05d
ci: update nightly toolchain to nightly-2022-12-27
taiki-e Dec 27, 2022
21973d1
chore: test more features with Miri
taiki-e Dec 27, 2022
7c7939c
ignore tests using NamedTempFile::new
taiki-e Dec 27, 2022
c4b645c
ignore doctests
taiki-e Dec 27, 2022
2706db5
ignore does_not_register_signal_if_queue_empty
taiki-e Dec 27, 2022
b7ea0dc
ignore tokio/tests/buffered.rs
taiki-e Dec 27, 2022
686317b
ignore tokio/tests/fs*.rs
taiki-e Dec 27, 2022
6e014e3
ignore tests using socket
taiki-e Dec 27, 2022
edd1762
update comment
taiki-e Dec 27, 2022
c5f75fa
ignore tests using sigaction
taiki-e Dec 27, 2022
7d2109f
ignore tests with "unsupported operation: cannot write to event" error
taiki-e Dec 27, 2022
2b5aa89
ignore tests using epoll_wait
taiki-e Dec 27, 2022
de6d952
ignore tests using getsockopt
taiki-e Dec 27, 2022
087d224
ignore tests with "unsupported operation: cannot write to event" error
taiki-e Dec 27, 2022
89e2b87
ignore tests using epoll_wait
taiki-e Dec 27, 2022
bbca25f
ignore test using gnu_get_libc_version
taiki-e Dec 27, 2022
2ef0715
ignore test using pipe2
taiki-e Dec 27, 2022
ca7300f
ignore test using getaddrinfo
taiki-e Dec 27, 2022
0e95728
ignore tests with "unsupported operation: cannot write to event" error
taiki-e Dec 27, 2022
24b3356
ignore test using 0x3 command for fcntl
taiki-e Dec 27, 2022
861484e
strict-provenance compatible parking_lot_core
taiki-e Dec 27, 2022
1ce2822
ignore more unsupported tests
taiki-e Dec 28, 2022
b16fd51
Merge branch 'master' into taiki-e/miri
taiki-e Feb 13, 2023
f9c6489
ci: update nightly toolchain to nightly-nightly-2023-02-13
taiki-e Feb 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ freebsd_instance:
image_family: freebsd-12-4
env:
RUST_STABLE: stable
RUST_NIGHTLY: nightly-2022-10-25
RUST_NIGHTLY: nightly-2023-02-13
RUSTFLAGS: -D warnings

# Test FreeBSD in a full VM on cirrus-ci.com. Test the i686 target too, in the
Expand Down
12 changes: 8 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ env:
RUST_BACKTRACE: 1
# Change to specific Rust release to pin
rust_stable: stable
rust_nightly: nightly-2022-11-03
rust_nightly: nightly-2023-02-13
rust_clippy: 1.65.0
# When updating this, also update:
# - README.md
Expand Down Expand Up @@ -202,10 +202,14 @@ jobs:
toolchain: ${{ env.rust_nightly }}
components: miri
- uses: Swatinem/rust-cache@v2
- run: |
echo '[patch.crates-io]' >>Cargo.toml
echo 'parking_lot_core = { git = "https://github.com/taiki-e/parking_lot.git", branch = "strict-provenance" }' >>Cargo.toml
git diff
cargo update
- name: miri
# Many of tests in tokio/tests and doctests use #[tokio::test] or
# #[tokio::main] that calls epoll_create1 that Miri does not support.
run: cargo miri test --features full --lib --no-fail-fast
# Ignore doctest because many features don't work with Miri yet.
run: cargo miri test --features full --no-fail-fast --tests
working-directory: tokio
env:
MIRIFLAGS: -Zmiri-disable-isolation -Zmiri-strict-provenance -Zmiri-retag-fields
Expand Down
2 changes: 1 addition & 1 deletion tokio/src/process/unix/orphan.rs
Original file line number Diff line number Diff line change
Expand Up @@ -291,8 +291,8 @@ pub(crate) mod test {
drop(signal_guard);
}

#[cfg_attr(miri, ignore)] // Miri does not support epoll.
#[test]
#[cfg_attr(miri, ignore)] // Miri doesn't support sigaction
fn does_not_register_signal_if_queue_empty() {
let (io_driver, io_handle) = IoDriver::new(1024).unwrap();
let signal_driver = SignalDriver::new(io_driver, &io_handle).unwrap();
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/buffered.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support bind()
#![cfg(not(miri))] // Miri doesn't support socket

use tokio::net::TcpListener;
use tokio_test::assert_ok;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/fs.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support file operations
#![cfg(not(miri))] // Miri doesn't support epoll_wait

use tokio::fs;
use tokio_test::assert_ok;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/fs_copy.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support file operations
#![cfg(not(miri))] // Miri doesn't support epoll_wait

use tempfile::tempdir;
use tokio::fs;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/fs_dir.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support directory operations
#![cfg(not(miri))] // Miri doesn't support epoll_wait

use tokio::fs;
use tokio_test::{assert_err, assert_ok};
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/fs_file.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support file operations
#![cfg(not(miri))] // Miri doesn't support creating file with non-default mode (inside NamedTempFile::new): https://github.com/rust-lang/miri/pull/2720

use std::io::prelude::*;
use tempfile::NamedTempFile;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/fs_link.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support file operations
#![cfg(not(miri))] // Miri doesn't support epoll_wait

use tokio::fs;

Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_async_fd.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(unix, feature = "full"))]
#![cfg(not(miri))] // Miri doesn't support 0x3 command for fcntl

use std::os::unix::io::{AsRawFd, RawFd};
use std::sync::{
Expand Down
3 changes: 3 additions & 0 deletions tokio/tests/io_buf_reader.rs
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,7 @@ async fn test_short_reads() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn maybe_pending() {
let inner: &[u8] = &[5, 6, 7, 0, 1, 2, 3, 4];
let mut reader = BufReader::with_capacity(2, MaybePending::new(inner));
Expand Down Expand Up @@ -260,6 +261,7 @@ async fn maybe_pending() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn maybe_pending_buf_read() {
let inner = MaybePending::new(&[0, 1, 2, 3, 1, 0]);
let mut reader = BufReader::with_capacity(2, inner);
Expand All @@ -279,6 +281,7 @@ async fn maybe_pending_buf_read() {

// https://github.com/rust-lang/futures-rs/pull/1573#discussion_r281162309
#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn maybe_pending_seek() {
struct MaybePendingSeek<'a> {
inner: Cursor<&'a [u8]>,
Expand Down
3 changes: 3 additions & 0 deletions tokio/tests/io_buf_writer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,7 @@ async fn buf_writer_seek() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn maybe_pending_buf_writer() {
let mut writer = BufWriter::with_capacity(2, MaybePending::new(Vec::new()));

Expand Down Expand Up @@ -180,6 +181,7 @@ async fn maybe_pending_buf_writer() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn maybe_pending_buf_writer_inner_flushes() {
let mut w = BufWriter::with_capacity(3, MaybePending::new(Vec::new()));
assert_eq!(w.write(&[0, 1]).await.unwrap(), 2);
Expand All @@ -190,6 +192,7 @@ async fn maybe_pending_buf_writer_inner_flushes() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn maybe_pending_buf_writer_seek() {
struct MaybePendingSeek {
inner: Cursor<Vec<u8>>,
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_copy.rs
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ async fn copy() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn proxy() {
struct BufferedWd {
buf: BytesMut,
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_copy_bidirectional.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support bind()
#![cfg(not(miri))] // Miri doesn't support socket

use std::time::Duration;
use tokio::io::{self, copy_bidirectional, AsyncReadExt, AsyncWriteExt};
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_driver.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#![warn(rust_2018_idioms)]
// Wasi does not support panic recovery or threading
#![cfg(all(feature = "full", not(tokio_wasi)))]
#![cfg(not(miri))] // Miri doesn't support socket

use tokio::net::TcpListener;
use tokio::runtime;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_driver_drop.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support bind
#![cfg(not(miri))] // Miri doesn't support socket

use tokio::net::TcpListener;
use tokio::runtime;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_fill_buf.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support file operations
#![cfg(not(miri))] // Miri doesn't support creating file with non-default mode (inside NamedTempFile::new): https://github.com/rust-lang/miri/pull/2720

use tempfile::NamedTempFile;
use tokio::fs::File;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/io_mem_stream.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(not(miri))] // Miri doesn't support write to event (inside mio::waker::Waker::wake)

use tokio::io::{duplex, AsyncReadExt, AsyncWriteExt};

Expand Down
3 changes: 3 additions & 0 deletions tokio/tests/io_util_empty.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
#![cfg(feature = "full")]

use tokio::io::{AsyncBufReadExt, AsyncReadExt};

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn empty_read_is_cooperative() {
tokio::select! {
biased;
Expand All @@ -17,6 +19,7 @@ async fn empty_read_is_cooperative() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn empty_buf_reads_are_cooperative() {
tokio::select! {
biased;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/join_handle_panic.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ impl Drop for PanicsOnDrop {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn test_panics_do_not_propagate_when_dropping_join_handle() {
let join_handle = tokio::spawn(async move { PanicsOnDrop });

Expand Down
2 changes: 2 additions & 0 deletions tokio/tests/macros_join.rs
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,7 @@ async fn poor_little_task(permits: Arc<Semaphore>) -> usize {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn join_does_not_allow_tasks_to_starve() {
let permits = Arc::new(Semaphore::new(1));

Expand All @@ -125,6 +126,7 @@ async fn join_does_not_allow_tasks_to_starve() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support epoll_wait
async fn a_different_future_is_polled_first_every_time_poll_fn_is_polled() {
let poll_order = Arc::new(std::sync::Mutex::new(vec![]));

Expand Down
1 change: 1 addition & 0 deletions tokio/tests/macros_rename_test.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi doesn't support threading
#![cfg(not(miri))] // Miri doesn't support write to event (inside mio::waker::Waker::wake)

#[allow(unused_imports)]
use std as tokio;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/macros_select.rs
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ async fn one_ready() {

#[maybe_tokio_test]
#[cfg(feature = "full")]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn select_streams() {
use tokio::sync::mpsc;

Expand Down
2 changes: 2 additions & 0 deletions tokio/tests/macros_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@
use tokio::test;

#[test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn test_macro_can_be_used_via_use() {
tokio::spawn(async {}).await.unwrap();
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn test_macro_is_resilient_to_shadowing() {
tokio::spawn(async {}).await.unwrap();
}
Expand Down
2 changes: 2 additions & 0 deletions tokio/tests/macros_try_join.rs
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ async fn poor_little_task(permits: Arc<Semaphore>) -> Result<usize, String> {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
async fn try_join_does_not_allow_tasks_to_starve() {
let permits = Arc::new(Semaphore::new(10));

Expand All @@ -155,6 +156,7 @@ async fn try_join_does_not_allow_tasks_to_starve() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support epoll_wait
async fn a_different_future_is_polled_first_every_time_poll_fn_is_polled() {
let poll_order = Arc::new(std::sync::Mutex::new(vec![]));

Expand Down
1 change: 1 addition & 0 deletions tokio/tests/net_bind_resource.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi doesn't support panic recovery or bind
#![cfg(not(miri))] // Miri doesn't support socket

use tokio::net::TcpListener;

Expand Down
1 change: 1 addition & 0 deletions tokio/tests/net_lookup_host.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ async fn lookup_str_socket_addr() {
}

#[tokio::test]
#[cfg_attr(miri, ignore)] // Miri doesn't support getaddrinfo
async fn resolve_dns() -> io::Result<()> {
let mut hosts = net::lookup_host("localhost:3000").await?;
let host = hosts.next().unwrap();
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/net_panic.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))]
#![cfg(not(miri))] // Miri doesn't support socket

use std::error::Error;
use tokio::net::{TcpListener, TcpStream};
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/no_rt.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi does not support panic recovery
#![cfg(not(miri))] // Miri doesn't support socket

use tokio::net::TcpStream;
use tokio::sync::oneshot;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/process_arg0.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", unix))]
#![cfg(not(miri))] // Miri doesn't support pipe2

use tokio::process::Command;

Expand Down
1 change: 1 addition & 0 deletions tokio/tests/process_issue_2174.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
// `EV_EOF` or `EV_ERROR` flag set. If either flag is set a write would be
// attempted, but that does not seem to occur.
#![cfg(all(unix, not(target_os = "freebsd")))]
#![cfg(not(miri))] // Miri doesn't support pipe2

use std::process::Stdio;
use std::time::Duration;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/process_issue_42.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(unix)]
#![cfg(not(miri))] // Miri doesn't support gnu_get_libc_version

use futures::future::join_all;
use std::process::Stdio;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/process_kill_on_drop.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![cfg(all(unix, feature = "process"))]
#![warn(rust_2018_idioms)]
#![cfg(not(miri))] // Miri doesn't support pipe2

use std::io::ErrorKind;
use std::process::Stdio;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/process_smoke.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))] // Wasi cannot run system commands
#![cfg(not(miri))] // Miri doesn't support gnu_get_libc_version

use tokio::process::Command;
use tokio_test::assert_ok;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/rt_basic.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(not(miri))] // Miri doesn't support write to event (inside mio::waker::Waker::wake)

use tokio::runtime::Runtime;
use tokio::sync::oneshot;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/rt_common.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#![allow(clippy::needless_range_loop)]
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(not(miri))] // Miri doesn't support epoll_wait

// Tests to run on both current-thread & multi-thread runtime variants.

Expand Down
1 change: 1 addition & 0 deletions tokio/tests/rt_handle_block_on.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(not(miri))] // Miri doesn't support epoll_wait

// All io tests that deal with shutdown is currently ignored because there are known bugs in with
// shutting down the io driver while concurrently registering new resources. See
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/rt_panic.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ fn current_handle_panic_caller() -> Result<(), Box<dyn Error>> {
}

#[test]
#[cfg_attr(miri, ignore)] // Miri doesn't support write to event (inside mio::waker::Waker::wake)
fn into_panic_panic_caller() -> Result<(), Box<dyn Error>> {
let panic_location_file = test_panic(move || {
let rt = current_thread();
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/rt_threaded.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#![warn(rust_2018_idioms)]
#![cfg(all(feature = "full", not(tokio_wasi)))]
#![cfg(not(miri))] // Miri doesn't support epoll_wait

use tokio::io::{AsyncReadExt, AsyncWriteExt};
use tokio::net::{TcpListener, TcpStream};
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/signal_ctrl_c.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(unix)]
#![cfg(not(miri))] // Miri doesn't support sigaction

mod support {
pub mod signal;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/signal_drop_recv.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(unix)]
#![cfg(not(miri))] // Miri doesn't support sigaction

mod support {
pub mod signal;
Expand Down
1 change: 1 addition & 0 deletions tokio/tests/signal_drop_rt.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#![warn(rust_2018_idioms)]
#![cfg(feature = "full")]
#![cfg(unix)]
#![cfg(not(miri))] // Miri doesn't support sigaction

mod support {
pub mod signal;
Expand Down
Loading