use Future;
use Pin;
use Result;
use MySqlPool;
/// A migration entry registered by each Entity derive.
///
/// This struct represents a database migration that can be executed to create
/// or modify database tables. Each migration has a name and a run function.
collect!;
/// Runs all registered migrations in sequence.
///
/// This function iterates through all migrations registered via the inventory
/// system and executes them against the provided database pool.
///
/// # Arguments
/// * `pool` - The MySQL connection pool to execute migrations against
///
/// # Returns
/// * `Result<()>` - Ok if all migrations succeed, Err if any migration fails
pub async