
# Objective - Contributes to #11478 ## Solution - Made `bevy_utils::tracing` `doc(hidden)` - Re-exported `tracing` from `bevy_log` for end-users - Added `tracing` directly to crates that need it. ## Testing - CI --- ## Migration Guide If you were importing `tracing` via `bevy::utils::tracing`, instead use `bevy::log::tracing`. Note that many items within `tracing` are also directly re-exported from `bevy::log` as well, so you may only need `bevy::log` for the most common items (e.g., `warn!`, `trace!`, etc.). This also applies to the `log_once!` family of macros. ## Notes - While this doesn't reduce the line-count in `bevy_utils`, it further decouples the internal crates from `bevy_utils`, making its eventual removal more feasible in the future. - I have just imported `tracing` as we do for all dependencies. However, a workspace dependency may be more appropriate for version management.
50 lines
1.2 KiB
Rust
50 lines
1.2 KiB
Rust
/// Call [`trace!`](crate::trace) once per call site.
|
|
///
|
|
/// Useful for logging within systems which are called every frame.
|
|
#[macro_export]
|
|
macro_rules! trace_once {
|
|
($($arg:tt)+) => ({
|
|
$crate::once!($crate::trace!($($arg)+))
|
|
});
|
|
}
|
|
|
|
/// Call [`debug!`](crate::debug) once per call site.
|
|
///
|
|
/// Useful for logging within systems which are called every frame.
|
|
#[macro_export]
|
|
macro_rules! debug_once {
|
|
($($arg:tt)+) => ({
|
|
$crate::once!($crate::debug!($($arg)+))
|
|
});
|
|
}
|
|
|
|
/// Call [`info!`](crate::info) once per call site.
|
|
///
|
|
/// Useful for logging within systems which are called every frame.
|
|
#[macro_export]
|
|
macro_rules! info_once {
|
|
($($arg:tt)+) => ({
|
|
$crate::once!($crate::info!($($arg)+))
|
|
});
|
|
}
|
|
|
|
/// Call [`warn!`](crate::warn) once per call site.
|
|
///
|
|
/// Useful for logging within systems which are called every frame.
|
|
#[macro_export]
|
|
macro_rules! warn_once {
|
|
($($arg:tt)+) => ({
|
|
$crate::once!($crate::warn!($($arg)+))
|
|
});
|
|
}
|
|
|
|
/// Call [`error!`](crate::error) once per call site.
|
|
///
|
|
/// Useful for logging within systems which are called every frame.
|
|
#[macro_export]
|
|
macro_rules! error_once {
|
|
($($arg:tt)+) => ({
|
|
$crate::once!($crate::error!($($arg)+))
|
|
});
|
|
}
|