get_pg_tool_version

Function get_pg_tool_version 

Source
pub fn get_pg_tool_version(tool: &str) -> Result<u32>
Expand description

Get the major version of a PostgreSQL client tool (pg_dump, psql, etc.)

Executes <tool> --version and parses the output.

§Arguments

  • tool - Name of the tool (e.g., “pg_dump”, “psql”)

§Returns

The major version number (e.g., 16 for pg_dump 16.10)

§Errors

Returns an error if:

  • Tool is not found in PATH
  • Tool execution fails
  • Version output cannot be parsed

§Examples

use database_replicator::utils::get_pg_tool_version;
use anyhow::Result;

fn example() -> Result<()> {
    let version = get_pg_tool_version("pg_dump")?;
    println!("pg_dump major version: {}", version); // e.g., 16
    Ok(())
}