view rust/hg-core/src/exit_codes.rs @ 49520:eb02decdf0ab

dirstate-v2: skip evaluation of hgignore regex on cached directories By making the computation of [has_ignored_ancestor] lazy we're eliding its computation in the common case when none of its descendants have changed on disk. On a ~400k files repo, with a cached status, we saw a ~64% reduction in CPU time, resulting in a speedup of ~10-15% (on ZFS), and a speedup of ~38% of XFS (XFS has faster stat operations for some reason).
author Arseniy Alekseyev <aalekseyev@janestreet.com>
date Mon, 10 Oct 2022 14:48:39 +0100
parents 7c93e38a0bbd
children
line wrap: on
line source

pub type ExitCode = i32;

/// Successful exit
pub const OK: ExitCode = 0;

/// Generic abort
pub const ABORT: ExitCode = 255;

// Abort when there is a config related error
pub const CONFIG_ERROR_ABORT: ExitCode = 30;

/// Indicates that the operation might work if retried in a different state.
/// Examples: Unresolved merge conflicts, unfinished operations
pub const STATE_ERROR: ExitCode = 20;

// Abort when there is an error while parsing config
pub const CONFIG_PARSE_ERROR_ABORT: ExitCode = 10;

/// Generic something completed but did not succeed
pub const UNSUCCESSFUL: ExitCode = 1;

/// Command or feature not implemented by rhg
pub const UNIMPLEMENTED: ExitCode = 252;

/// The fallback path is not valid
pub const INVALID_FALLBACK: ExitCode = 253;