
___x_cmd_version_checker(){
    :
}

___x_cmd_version_checker_showhint(){
    :
}

___x_cmd_version_checker_update(){
    ___x_cmd pkg update
    # if latest version is better, then
    if [ -f "$___X_CMD_ROOT_DATA/version/status/outdated" ]; then
        ___x_cmd version checker showhint
        return
    fi
    printf "\n" >"$___X_CMD_ROOT_DATA/version/status/outdated"
}

___x_cmd_version_checker_enable(){
    version:info "Notice, it will increase the startup time in REPL mode."

    ___x_cmd ensurefp "$___X_CMD_ROOT_DATA/version/checker/enable"
    printf "\n" >"$___X_CMD_ROOT_DATA/version/checker/enable"
}

___x_cmd_version_checker_disable(){
    if ___x_cmd_version_checker_isenabled; then
        ___x_cmd_cmds rm -f "$___X_CMD_ROOT_DATA/version/checker/enable"
        version:info "Version checker is disabled."
    else
        version:info "Version checker is already disabled."
    fi
}

___x_cmd_version_checker_status(){
    if ___x_cmd_version_checker_isenabled; then
        printf "checker-status: %s\n"   on
    else
        printf "checker-status: %s\n"   off
    fi
}

___x_cmd_version_checker_isenabled(){
    [ -f "$___X_CMD_ROOT_DATA/version/checker/enable" ]
}
