Clang-Tidy Checks


    659 Original Log 127 cppcoreguidelines-avoid-non-const-global-variables 2 cppcoreguidelines-c-copy-assignment-signature 1 cppcoreguidelines-explicit-virtual-functions 10 cppcoreguidelines-init-variables 5 cppcoreguidelines-macro-usage 2 cppcoreguidelines-narrowing-conversions 2 cppcoreguidelines-non-private-member-variables-in-classes 4 cppcoreguidelines-prefer-member-initializer 2 cppcoreguidelines-pro-bounds-constant-array-index 3 cppcoreguidelines-pro-type-cstyle-cast 2 cppcoreguidelines-pro-type-member-init 115 cppcoreguidelines-special-member-functions 43 modernize-concat-nested-namespaces 2 modernize-deprecated-headers 4 modernize-return-braced-init-list 2 modernize-use-auto 1 modernize-use-emplace 7 modernize-use-equals-default 300 modernize-use-nodiscard 1 modernize-use-override 5 modernize-use-using 19 readability-magic-numbers

Original Log

include/esys/repo/cli/app.h:37:20↗: warning: class 'App' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API App : public AppBase
                   ^
include/esys/repo/cli/appbase.h:52:20↗: warning: class 'AppBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API AppBase : public esys::log::User
                   ^
include/esys/repo/cli/appbase.h:68:5↗: warning: function 'get_args' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_args() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:101:5↗: warning: function 'get_debug' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_debug() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:107:5↗: warning: function 'is_trace_to_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_trace_to_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:113:5↗: warning: function 'is_trace_to_console' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_trace_to_console() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:119:5↗: warning: function 'is_help' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_help() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:125:5↗: warning: function 'is_doc' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_doc() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:131:5↗: warning: function 'is_version' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_version() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:139:5↗: warning: function 'get_cmds' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<Cmd *> &get_cmds() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:222:5↗: warning: function 'get_version' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_version() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:42:20↗: warning: class 'Cmd' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Cmd : public esys::log::User
                   ^
include/esys/repo/cli/cmd.h:61:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:68:5↗: warning: function 'get_description' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_description() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:107:5↗: warning: function 'get_args' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_args() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:219:5↗: warning: function 'get_user_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserFolder> get_user_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:258:5↗: warning: function 'get_vm' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const po::variables_map &get_vm() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd_t.h:29:7↗: warning: class 'Cmd_t' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class Cmd_t : public Cmd
      ^
include/esys/repo/cli/cmd_t.h:76:13↗: warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
Cmd_t<CMD>::~Cmd_t()
            ^
include/esys/repo/cli/cmdenv.h:27:20↗: warning: class 'CmdEnv' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdEnv : public Cmd_t<exe::CmdEnv>
                   ^
include/esys/repo/cli/cmdhelp.h:27:20↗: warning: class 'CmdHelp' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdHelp : public Cmd_t<exe::CmdHelp>
                   ^
include/esys/repo/cli/cmdinfo.h:27:20↗: warning: class 'CmdInfo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInfo : public Cmd_t<exe::CmdInfo>
                   ^
include/esys/repo/cli/cmdinit.h:27:20↗: warning: class 'CmdInit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInit : public Cmd_t<exe::CmdInit>
                   ^
include/esys/repo/cli/cmdlist.h:27:20↗: warning: class 'CmdList' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdList : public Cmd_t<exe::CmdList>
                   ^
include/esys/repo/cli/cmdmanifest.h:27:20↗: warning: class 'CmdManifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdManifest : public Cmd_t<exe::CmdManifest>
                   ^
include/esys/repo/cli/cmdmulti.h:27:20↗: warning: class 'CmdMulti' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdMulti : public Cmd_t<exe::CmdMulti>
                   ^
include/esys/repo/cli/cmdstatus.h:27:20↗: warning: class 'CmdStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdStatus : public Cmd_t<exe::CmdStatus>
                   ^
include/esys/repo/cli/cmdsync.h:27:20↗: warning: class 'CmdSync' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdSync : public Cmd_t<exe::CmdSync>
                   ^
include/esys/repo/cli/cmdversion.h:27:20↗: warning: class 'CmdVersion' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdVersion : public Cmd_t<exe::CmdVersion>
                   ^
include/esys/repo/config.h:37:20↗: warning: class 'Config' defines a non-default destructor and a copy assignment operator but does not define a copy constructor, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Config
                   ^
include/esys/repo/config.h:56:5↗: warning: function 'get_manifest_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    manifest::Type get_manifest_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:68:5↗: warning: function 'get_manifest_kind' should be marked [[nodiscard]] [modernize-use-nodiscard]
    manifest::Kind get_manifest_kind() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:80:5↗: warning: function 'get_manifest_format' should be marked [[nodiscard]] [modernize-use-nodiscard]
    manifest::Format get_manifest_format() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:92:5↗: warning: function 'get_manifest_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:104:5↗: warning: function 'get_manifest_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:119:5↗: warning: function 'has_esysrepo_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool has_esysrepo_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfile.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/configfile.h:38:20↗: warning: class 'ConfigFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ConfigFile
                   ^
include/esys/repo/configfile.h:57:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfile.h:69:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfile.h:93:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const ConfigFileImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:40:20↗: warning: class 'ConfigFolder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ConfigFolder : public log::User
                   ^
include/esys/repo/configfolder.h:59:5↗: warning: function 'get_workspace_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_workspace_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:84:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:90:5↗: warning: function 'get_temp_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_temp_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:96:5↗: warning: function 'get_config_file_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_config_file_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:102:5↗: warning: function 'get_manifest_repo_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_manifest_repo_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:108:5↗: warning: function 'get_manifest_rel_file_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_manifest_rel_file_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:114:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:57:20↗: warning: class 'Cmd' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Cmd : public log::User
                   ^
include/esys/repo/exe/cmd.h:68:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:80:5↗: warning: function 'get_job_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_job_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:92:5↗: warning: function 'get_user_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserConfig> get_user_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:104:5↗: warning: function 'get_user_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserFolder> get_user_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:116:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:128:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:140:5↗: warning: function 'get_workspace_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_workspace_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:158:5↗: warning: function 'get_config_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<ConfigFolder> get_config_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:205:5↗: warning: function 'get_debug' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_debug() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:217:5↗: warning: function 'get_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:237:5↗: warning: function 'get_sub_args' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_sub_args() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:249:5↗: warning: function 'get_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:261:5↗: warning: function 'get_delta_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_delta_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:268:5↗: warning: function 'get_groups' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_groups() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:292:5↗: warning: function 'get_input_git_repo_paths' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_input_git_repo_paths() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:327:5↗: warning: function 'get_logger_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_logger_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:432:5↗: warning: function 'get_print_cmd_name_by_base' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_print_cmd_name_by_base() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:438:5↗: warning: function 'get_print_result_summary' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_print_result_summary() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdenv.h:32:20↗: warning: class 'CmdEnv' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdEnv : public Cmd
                   ^
include/esys/repo/exe/cmdhelp.h:26:20↗: warning: class 'CmdHelp' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdHelp : public Cmd
                   ^
include/esys/repo/exe/cmdinfo.h:34:20↗: warning: class 'CmdInfo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInfo : public Cmd
                   ^
include/esys/repo/exe/cmdinfo.h:53:5↗: warning: function 'get_diff' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_diff() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:65:5↗: warning: function 'get_overview' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_overview() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:77:5↗: warning: function 'get_current_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_current_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:89:5↗: warning: function 'get_local_only' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_local_only() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:39:20↗: warning: class 'CmdInit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInit : public Cmd
                   ^
include/esys/repo/exe/cmdinit.h:58:5↗: warning: function 'get_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:70:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:82:5↗: warning: function 'get_manifest_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:94:5↗: warning: function 'get_project_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_project_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:106:5↗: warning: function 'get_google_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_google_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:118:5↗: warning: function 'get_git_super_project' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_git_super_project() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:218:5↗: warning: function 'get_directories' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<manifest::Directories> get_directories() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:241:5↗: warning: function 'get_google_manifest_filename' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_google_manifest_filename() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:32:20↗: warning: class 'CmdList' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdList : public Cmd
                   ^
include/esys/repo/exe/cmdlist.h:57:5↗: warning: function 'get_fullpath' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_fullpath() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:69:5↗: warning: function 'get_name_only' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_name_only() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:81:5↗: warning: function 'get_path_only' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_path_only() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:91:5↗: warning: function 'get_json' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_json() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:97:5↗: warning: function 'get_json_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_json_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:34:20↗: warning: class 'CmdManifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdManifest : public Cmd
                   ^
include/esys/repo/exe/cmdmanifest.h:58:9↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_name() const;
        ^
        [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:77:9↗: warning: function 'get_url_ssh' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_ssh() const;
        ^
        [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:84:9↗: warning: function 'get_url_https' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_https() const;
        ^
        [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:109:5↗: warning: function 'get_task' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Task get_task() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:116:5↗: warning: function 'get_task_add_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const TaskAddDir &get_task_add_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:123:5↗: warning: function 'get_task_del_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const TaskDelDir &get_task_del_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:130:5↗: warning: function 'get_dirs' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_dirs() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:137:5↗: warning: function 'get_output_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_output_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmulti.h:38:20↗: warning: class 'CmdMulti' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdMulti : public Cmd
                   ^
include/esys/repo/exe/cmdmulti.h:66:5↗: warning: function 'get_task' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Task get_task() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:35:20↗: warning: class 'CmdStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdStatus : public Cmd
                   ^
include/esys/repo/exe/cmdstatus.h:54:5↗: warning: function 'get_quiet' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_quiet() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:78:5↗: warning: function 'get_start_print_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_start_print_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:106:5↗: warning: function 'get_show_file_permission' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_show_file_permission() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:118:40↗: warning: 50 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    std::size_t m_start_print_branch = 50;
                                       ^
include/esys/repo/exe/cmdsync.h:36:20↗: warning: class 'CmdSync' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdSync : public Cmd
                   ^
include/esys/repo/exe/cmdsync.h:55:5↗: warning: function 'get_force' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_force() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:62:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:74:5↗: warning: function 'get_alt_address' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_alt_address() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:86:5↗: warning: function 'get_multi' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_multi() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:98:5↗: warning: function 'get_tui' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_tui() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:112:5↗: warning: function 'get_tui_demo' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_tui_demo() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:131:5↗: warning: function 'get_git_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_git_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdversion.h:32:20↗: warning: class 'CmdVersion' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdVersion : public Cmd
                   ^
include/esys/repo/exe/cmdversion.h:48:5↗: warning: function 'get_version' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_version() const;
    ^
    [[nodiscard]] 
include/esys/repo/filesystem.h:24:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/git.h:23:9↗: warning: macro 'ESYSREPO_USE_LIBGIT2' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_USE_LIBGIT2 1
        ^
include/esys/repo/git/aheadbehind.h:49:5↗: warning: function 'get_ahead' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_ahead() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/aheadbehind.h:61:5↗: warning: function 'get_behind' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_behind() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:33:20↗: warning: class 'Branch' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Branch
                   ^
include/esys/repo/git/branch.h:67:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:79:5↗: warning: function 'get_ref_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_ref_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:91:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    BranchType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:103:5↗: warning: function 'get_is_head' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_is_head() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:111:5↗: warning: function 'get_remote_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_remote_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:119:5↗: warning: function 'get_remote_branch_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_remote_branch_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:127:5↗: warning: function 'get_remote_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_remote_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:139:5↗: warning: function 'get_detached' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_detached() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branches.h:34:20↗: warning: class 'Branches' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Branches
                   ^
include/esys/repo/git/branches.h:61:5↗: warning: function 'get_head' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Branch> get_head() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branches.h:67:5↗: warning: function 'size' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t size() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branches.h:75:5↗: warning: function 'get' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Branch>> &get() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:39:20↗: warning: class 'Commit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Commit
                   ^
include/esys/repo/git/commit.h:61:5↗: warning: function 'get_hash' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const CommitHash &get_hash() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:79:5↗: warning: function 'get_message' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_message() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:91:5↗: warning: function 'get_summary' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_summary() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:103:5↗: warning: function 'get_body' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_body() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:115:5↗: warning: function 'get_author' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_author() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:127:5↗: warning: function 'get_email' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_email() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:139:5↗: warning: function 'get_date_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::chrono::system_clock::time_point &get_date_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:151:5↗: warning: function 'get_all_notes' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Note>> &get_all_notes() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:177:5↗: warning: function 'get_author_sign' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_author_sign() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:189:5↗: warning: function 'get_committer_sign' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_committer_sign() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commithash.h:32:20↗: warning: class 'CommitHash' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CommitHash
                   ^
include/esys/repo/git/commithash.h:51:5↗: warning: function 'get_hash' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_hash() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:35:20↗: warning: class 'Diff' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Diff
                   ^
include/esys/repo/git/diff.h:54:5↗: warning: function 'get_files_changed' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_files_changed() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:66:5↗: warning: function 'get_insertions' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_insertions() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:78:5↗: warning: function 'get_deletions' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_deletions() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:90:5↗: warning: function 'get_renames' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_renames() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:30:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/diffdelta.h:42:20↗: warning: class 'DiffDelta' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DiffDelta
                   ^
include/esys/repo/git/diffdelta.h:61:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    DiffDeltaType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:73:5↗: warning: function 'get_similarity' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_similarity() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:85:5↗: warning: function 'get_file_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_file_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:88:5↗: warning: function 'get_old_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const DiffFile &get_old_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:91:5↗: warning: function 'get_new_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const DiffFile &get_new_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdeltatype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/difffile.h:35:20↗: warning: class 'DiffFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DiffFile
                   ^
include/esys/repo/git/difffile.h:50:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:58:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:71:5↗: warning: function 'get_size' should be marked [[nodiscard]] [modernize-use-nodiscard]
    uint64_t get_size() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:83:5↗: warning: function 'get_mode' should be marked [[nodiscard]] [modernize-use-nodiscard]
    FileMode get_mode() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/fetchstep.h:24:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/filestatus.h:33:20↗: warning: class 'FileStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API FileStatus
                   ^
include/esys/repo/git/filestatus.h:50:5↗: warning: function 'get_old_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_old_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:68:5↗: warning: function 'get_head_to_index' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Status> get_head_to_index() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:80:5↗: warning: function 'get_index_to_work_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Status> get_index_to_work_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:83:5↗: warning: function 'get_status' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_status() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:93:5↗: warning: function 'is_equal' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_equal(const std::vector<std::shared_ptr<Status>> &left,
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:33:20↗: warning: class 'Note' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Note
                   ^
include/esys/repo/git/note.h:52:5↗: warning: function 'get_message' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_message() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:64:5↗: warning: function 'get_author' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_author() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:82:5↗: warning: function 'get_committer' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_committer() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:100:5↗: warning: function 'get_reference' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_reference() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/noteid.h:31:20↗: warning: class 'NoteId' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API NoteId : public CommitHash
                   ^
include/esys/repo/git/noteid.h:38:5↗: warning: annotate this function with 'override' or (rarely) 'final' [cppcoreguidelines-explicit-virtual-functions,modernize-use-override]
    ~NoteId();
    ^
              override
include/esys/repo/git/noteid.h:45:5↗: warning: function 'get_reference' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_reference() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/noteid.h:52:5↗: warning: function 'get_commit_hash' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const CommitHash &get_commit_hash() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/person.h:32:20↗: warning: class 'Person' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Person
                   ^
include/esys/repo/git/person.h:51:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/person.h:63:5↗: warning: function 'get_email' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_email() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:50:5↗: warning: function 'get_fetch_step' should be marked [[nodiscard]] [modernize-use-nodiscard]
    FetchStep get_fetch_step() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:63:5↗: warning: function 'get_percentage' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_percentage() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:76:5↗: warning: function 'get_started' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_started() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:89:5↗: warning: function 'get_done' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_done() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:106:5↗: warning: function 'get_total_objects' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_total_objects() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:109:5↗: warning: function 'get_received_objects' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_received_objects() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:112:5↗: warning: function 'get_indexed_objects' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_indexed_objects() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:115:5↗: warning: function 'get_total_deltas' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_total_deltas() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:118:5↗: warning: function 'get_indexed_deltas' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_indexed_deltas() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:121:5↗: warning: function 'get_received_bytes' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::int64_t get_received_bytes() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/remote.h:33:20↗: warning: class 'Remote' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Remote
                   ^
include/esys/repo/git/remote.h:52:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/remote.h:64:5↗: warning: function 'get_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:38:20↗: warning: class 'RepoStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API RepoStatus
                   ^
include/esys/repo/git/repostatus.h:54:5↗: warning: function 'get_all' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_all() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:57:5↗: warning: function 'get_current' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_current() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:60:5↗: warning: function 'get_head_to_index' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_head_to_index() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:63:5↗: warning: function 'get_index_to_work_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_index_to_work_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:66:5↗: warning: function 'get_ignored' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_ignored() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:69:5↗: warning: function 'get_conflicted' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_conflicted() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:72:5↗: warning: function 'get_file_status' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<FileStatus>> &get_file_status() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:78:5↗: warning: function 'get_map_file_status' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::map<std::string, std::shared_ptr<FileStatus>> &get_map_file_status() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:88:5↗: warning: function 'is_equal' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_equal(const std::vector<std::shared_ptr<Status>> &left,
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:90:5↗: warning: function 'is_equal' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_equal(const std::vector<std::shared_ptr<FileStatus>> &left,
    ^
    [[nodiscard]] 
include/esys/repo/git/signature.h:34:20↗: warning: class 'Signature' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Signature: public Person
                   ^
include/esys/repo/git/signature.h:53:5↗: warning: function 'get_date_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::chrono::system_clock::time_point &get_date_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/signature.h:65:5↗: warning: function 'get_offset' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_offset() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/status.h:35:20↗: warning: class 'Status' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Status
                   ^
include/esys/repo/git/status.h:54:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    StatusType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/status.h:67:5↗: warning: function 'get_sub_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    StatusSubType get_sub_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/status.h:71:5↗: warning: function 'get_diff_delta' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const DiffDelta &get_diff_delta() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/statussubtype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/statustype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/updatetip.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/updatetip.h:39:20↗: warning: class 'UpdateTip' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UpdateTip
                   ^
include/esys/repo/git/updatetip.h:58:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    UpdateTipType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:66:5↗: warning: function 'get_ref_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_ref_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:73:5↗: warning: function 'get_new_oid' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_new_oid() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:80:5↗: warning: function 'get_old_oid' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_old_oid() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetiptype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/url.h:30:20↗: warning: class 'URL' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API URL
                   ^
include/esys/repo/git/url.h:50:5↗: warning: function 'get' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/walkcommit.h:38:20↗: warning: class 'WalkCommit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API WalkCommit
                   ^
include/esys/repo/gitbase.h:60:20↗: warning: class 'GitBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitBase : public log::User
                   ^
include/esys/repo/gitbase.h:81:5↗: warning: function 'get_author' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<git::Person> get_author() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:93:5↗: warning: function 'get_committer' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<git::Person> get_committer() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:387:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:399:5↗: warning: function 'get_debug' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_debug() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:497:5↗: warning: function 'get_notes_references' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_notes_references() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:549:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual bool do_is_ssh_backend_supported(git::SshBackend backend) const = 0;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:552:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual Result_t<git::SshBackend> do_get_ssh_backend() const = 0;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:36:20↗: warning: class 'Git' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Git : public GitBase
                   ^
include/esys/repo/gitcmdline/git.h:110:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool do_is_ssh_backend_supported(git::SshBackend backend) const override;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:113:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Result_t<git::SshBackend> do_get_ssh_backend() const override;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:117:5↗: warning: function 'build_git_command' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string build_git_command(const std::vector<std::string> &args, const std::string &cwd) const;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:127:17↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_detect_ssh_agent_done;
                ^
include/esys/repo/gitcmdline/git.h:128:17↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_ssh_agent_running;
                ^
include/esys/repo/githelper.h:43:20↗: warning: class 'GitHelper' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitHelper : public log::User
                   ^
include/esys/repo/githelper.h:128:5↗: warning: function 'get_phase_timings' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const GitPhaseTimings &get_phase_timings() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:159:5↗: warning: function 'get_attempts' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_attempts() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:165:5↗: warning: function 'get_retry_delay_ms' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_retry_delay_ms() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:264:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:276:5↗: warning: function 'get_auto_close' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_auto_close() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:288:5↗: warning: function 'get_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:300:5↗: warning: function 'get_display_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_display_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:330:24↗: warning: class 'AutoClose' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API AutoClose
                       ^
include/esys/repo/githelper.h:362:28↗: warning: 2000 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    int m_retry_delay_ms = 2000; //!< Pause between clone/fetch retries
                           ^
include/esys/repo/gitmngr.h:30:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/gitmngr.h:40:20↗: warning: class 'GitMngr' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitMngr : public log::User
                   ^
include/esys/repo/gitmngr.h:43:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef std::shared_ptr<GitBase> (*NewPtrFct)();
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using NewPtrFct = std::shared_ptr<GitBase> (*)()
include/esys/repo/gitmngr.h:68:22↗: warning: variable 'm_new_ptr_fct' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static NewPtrFct m_new_ptr_fct;
                     ^
include/esys/repo/gitphasetimings.h:46:5↗: warning: function 'total_ms' should be marked [[nodiscard]] [modernize-use-nodiscard]
    uint64_t total_ms() const
    ^
    [[nodiscard]] 
include/esys/repo/gitphasetimings.h:61:5↗: warning: function 'format' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string format(const std::string &prefix = "sync phases (ms):") const
    ^
    [[nodiscard]] 
include/esys/repo/grepo/folder.h:36:20↗: warning: class 'Folder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Folder
                   ^
include/esys/repo/grepo/folder.h:64:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/grepo/folder.h:70:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/grepo/manifest.h:38:20↗: warning: class 'Manifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Manifest : public manifest::FileBase
                   ^
include/esys/repo/hybrid/git.h:44:20↗: warning: class 'Git' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Git : public GitBase
                   ^
include/esys/repo/hybrid/git.h:119:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool do_is_ssh_backend_supported(git::SshBackend backend) const override;
    ^
    [[nodiscard]] 
include/esys/repo/hybrid/git.h:122:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Result_t<git::SshBackend> do_get_ssh_backend() const override;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys::repo
^~~~~~~~~~~~~~~~~~~~
namespace esys::repo::libgit2
include/esys/repo/libgit2/git.h:40:20↗: warning: class 'Git' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Git : public GitBase
                   ^
include/esys/repo/libgit2/git.h:190:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool do_is_ssh_backend_supported(git::SshBackend backend) const override;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:193:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Result_t<git::SshBackend> do_get_ssh_backend() const override;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:329:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    GitImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:342:17↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_detect_ssh_agent_done;
                ^
include/esys/repo/libgit2/git.h:343:17↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_ssh_agent_running;
                ^
include/esys/repo/libgit2/git.h:344:17↗: warning: variable 's_exec_probe_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_exec_probe_done;
                ^
include/esys/repo/libgit2/git.h:345:17↗: warning: variable 's_exec_available' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_exec_available;
                ^
include/esys/repo/libgit2/git.h:346:16↗: warning: variable 's_libssh2_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static int s_libssh2_supported; //!< -1 unknown, 0 no, 1 yes
               ^
include/esys/repo/libgit2/git.h:347:16↗: warning: variable 's_exec_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static int s_exec_supported;    //!< -1 unknown, 0 no, 1 yes
               ^
include/esys/repo/libssh2/ssh.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libssh2
include/esys/repo/libssh2/ssh.h:42:20↗: warning: class 'SSH' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SSH : public SSHBase
                   ^
include/esys/repo/libssh2/ssh.h:80:24↗: warning: variable 's_dflt_agent_identity_path' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static std::string s_dflt_agent_identity_path;
                       ^
include/esys/repo/loadfolder.h:37:20↗: warning: class 'LoadFolder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoadFolder
                   ^
include/esys/repo/loadfolder.h:54:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:66:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:86:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:92:5↗: warning: function 'get_config_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<ConfigFolder> get_config_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest.h:37:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/manifest.h:46:20↗: warning: class 'Manifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Manifest
                   ^
include/esys/repo/manifest/base.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/base.h:37:20↗: warning: class 'Base' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Base : public FileBase
                   ^
include/esys/repo/manifest/capture.h:33:20↗: warning: class 'Capture' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Capture
                   ^
include/esys/repo/manifest/capture.h:36:24↗: warning: class 'Item' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API Item
                       ^
include/esys/repo/manifest/capture.h:57:9↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_path() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:64:9↗: warning: function 'get_revision' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_revision() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:71:9↗: warning: function 'get_remote_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_remote_name() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:78:9↗: warning: function 'get_remote_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_remote_url() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:121:5↗: warning: function 'find_item' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Item> find_item(const std::string &path) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/capture.h:124:5↗: warning: function 'get_items' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Item>> &get_items() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/capture.h:127:5↗: warning: function 'get_map' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::map<std::string, std::shared_ptr<Item>, std::less<>> &get_map() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/detect.h:36:20↗: warning: class 'Detect' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Detect
                   ^
include/esys/repo/manifest/detect.h:50:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directories.h:39:20↗: warning: class 'Directories' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Directories
                   ^
include/esys/repo/manifest/directories.h:42:24↗: warning: class 'Item' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API Item : public Directory::Item
                       ^
include/esys/repo/manifest/directories.h:61:9↗: warning: function 'get_directory' should be marked [[nodiscard]] [modernize-use-nodiscard]
        std::shared_ptr<Directory> get_directory() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directories.h:93:5↗: warning: function 'get_items' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Item>> &get_items() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directories.h:100:5↗: warning: function 'find_item' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Item> find_item(const std::string &name) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directories.h:107:5↗: warning: function 'find_project' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Directory::Item> find_project(const std::string &name) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directory.h:33:20↗: warning: class 'Directory' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Directory
                   ^
include/esys/repo/manifest/directory.h:36:24↗: warning: class 'Item' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API Item
                       ^
include/esys/repo/manifest/directory.h:50:9↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_name() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directory.h:57:9↗: warning: function 'get_url_ssh' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_ssh() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directory.h:64:9↗: warning: function 'get_url_https' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_https() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directory.h:91:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directory.h:105:5↗: warning: function 'get_items' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Item>> &get_items() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directory.h:111:5↗: warning: function 'find' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Item> find(const std::string &name) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directoryfilexml.h:35:20↗: warning: class 'DirectoryFileXML' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DirectoryFileXML
                   ^
include/esys/repo/manifest/directoryfilexml.h:56:5↗: warning: function 'get_directory' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Directory> get_directory() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directoryfilexml.h:83:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    DirectoryFileXMLImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directorymngr.h:32:20↗: warning: class 'DirectoryMngr' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DirectoryMngr
                   ^
include/esys/repo/manifest/directorymngr.h:46:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directorymngr.h:58:5↗: warning: function 'get_directories' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Directories> get_directories() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/file.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/file.h:38:20↗: warning: class 'File' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API File : public FileBase
                   ^
include/esys/repo/manifest/file.h:78:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const FileBase *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/filebase.h:36:20↗: warning: class 'FileBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API FileBase
                   ^
include/esys/repo/manifest/filebase.h:55:5↗: warning: function 'get_data' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_data() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/filebase.h:78:5↗: warning: function 'get_errors' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<FileError>> &get_errors() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/manifest/filebase.h:98:5↗: warning: function 'get_filename' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_filename() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/fileerror.h:32:20↗: warning: class 'FileError' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API FileError
                   ^
include/esys/repo/manifest/fileerror.h:63:5↗: warning: function 'get_value' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_value() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/fileerror.h:75:5↗: warning: function 'get_line_number' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_line_number() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/group.h:39:20↗: warning: class 'Group' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Group : public std::enable_shared_from_this<Group>
                   ^
include/esys/repo/manifest/groups.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/groups.h:40:20↗: warning: class 'Groups' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Groups : public std::enable_shared_from_this<Groups>
                   ^
include/esys/repo/manifest/include.h:34:20↗: warning: class 'Include' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Include
                   ^
include/esys/repo/manifest/include.h:56:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/jsonfile.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/jsonfile.h:38:20↗: warning: class 'JSONFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API JSONFile : public Base
                   ^
include/esys/repo/manifest/jsonfile.h:51:9↗: error: virtual function 'read' has a different return type ('int') than the function it overrides (which has return type 'esys::repo::Result') [clang-diagnostic-error]
    int read(const std::string &path) override;
    ~~~ ^
include/esys/repo/manifest/filebase.h:62:20↗: note: overridden virtual function is here
    virtual Result read(const std::string &path) = 0;
            ~~~~~~ ^
include/esys/repo/manifest/jsonfile.h:57:9↗: error: virtual function 'write' has a different return type ('int') than the function it overrides (which has return type 'esys::repo::Result') [clang-diagnostic-error]
    int write(const std::string &path) override;
    ~~~ ^
include/esys/repo/manifest/filebase.h:69:20↗: note: overridden virtual function is here
    virtual Result write(const std::string &path) = 0;
            ~~~~~~ ^
include/esys/repo/manifest/jsonfile.h:63:9↗: error: virtual function 'write' has a different return type ('int') than the function it overrides (which has return type 'esys::repo::Result') [clang-diagnostic-error]
    int write(std::ostream &os) override;
    ~~~ ^
include/esys/repo/manifest/filebase.h:75:20↗: note: overridden virtual function is here
    virtual Result write(std::ostream &os) = 0;
            ~~~~~~ ^
include/esys/repo/manifest/kind.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loader.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loader.h:37:20↗: warning: class 'Loader' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Loader : public LoaderBase
                   ^
include/esys/repo/manifest/loader.h:59:5↗: warning: function 'get_loader' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<LoaderBase> get_loader() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/loader.h:65:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const override;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/loaderbase.h:30:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loaderbase.h:42:20↗: warning: class 'LoaderBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderBase : public log::User
                   ^
include/esys/repo/manifest/loaderbase.h:61:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/loaderesysrepo.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loaderesysrepo.h:35:20↗: warning: class 'LoaderESysRepo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderESysRepo : public LoaderBase
                   ^
include/esys/repo/manifest/loadergitsuper.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loadergitsuper.h:35:20↗: warning: class 'LoaderGitSuper' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderGitSuper : public LoaderBase
                   ^
include/esys/repo/manifest/loadergrepo.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loadergrepo.h:35:20↗: warning: class 'LoaderGRepo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderGRepo : public LoaderBase
                   ^
include/esys/repo/manifest/location.h:40:20↗: warning: class 'Location' defines a non-default destructor, a copy constructor and a move constructor but does not define a copy assignment operator or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Location : public std::enable_shared_from_this<Location>
                   ^
include/esys/repo/manifest/multifilebase.h:32:20↗: warning: class 'MultiFileBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API MultiFileBase
                   ^
include/esys/repo/manifest/multifilebase.h:51:5↗: warning: function 'get_capture' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Capture> get_capture() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/multifilexml.h:33:20↗: warning: class 'MultiFileXML' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API MultiFileXML : public MultiFileBase
                   ^
include/esys/repo/manifest/multifilexml.h:66:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    MultiFileXMLImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:38:20↗: warning: class 'Repository' defines a non-default destructor, a copy constructor, a copy assignment operator and a move constructor but does not define a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Repository
                   ^
include/esys/repo/manifest/repository.h:60:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:72:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:84:5↗: warning: function 'get_revision' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_revision() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:96:5↗: warning: function 'get_location_str' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_location_str() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:102:5↗: warning: function 'get_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:114:5↗: warning: function 'get_location' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Location *get_location() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:126:5↗: warning: function 'get_groups' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<Group *> &get_groups() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:36:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/runtasks.h:48:20↗: warning: class 'RunTasks' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API RunTasks : public log::User
                   ^
include/esys/repo/manifest/runtasks.h:80:5↗: warning: function 'get_job_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_job_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:92:5↗: warning: function 'get_progress_session' should be marked [[nodiscard]] [modernize-use-nodiscard]
    progress::ProgressSession *get_progress_session() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:108:5↗: warning: function 'get_console_progress' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_console_progress() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:114:5↗: warning: function 'get_paused' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_paused() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:120:5↗: warning: function 'get_backpressure' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_backpressure() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:158:11↗: warning: class 'RemoveWorkerThreadGuard' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class RemoveWorkerThreadGuard
          ^
include/esys/repo/manifest/runtasks.h:192:38↗: warning: 500 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    std::size_t m_cout_interval_ms = 500;
                                     ^
include/esys/repo/manifest/sync.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/sync.h:41:20↗: warning: class 'Sync' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Sync : public log::User
                   ^
include/esys/repo/manifest/sync.h:74:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/sync.h:86:5↗: warning: function 'get_force' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_force() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/sync.h:125:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:35:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/syncrepo.h:47:20↗: warning: class 'SyncRepo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SyncRepo : public TaskBase, public log::User
                   ^
include/esys/repo/manifest/syncrepo.h:99:5↗: warning: function 'get_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:117:5↗: warning: function 'get_display_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_display_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:130:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:142:5↗: warning: function 'get_alt_address' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_alt_address() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:154:5↗: warning: function 'get_force' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_force() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:160:5↗: warning: function 'get_workspace_root_clone_method' should be marked [[nodiscard]] [modernize-use-nodiscard]
    WorkspaceRootCloneMethod get_workspace_root_clone_method() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:166:5↗: warning: function 'get_clone_options' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const git::CloneOptions &get_clone_options() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:169:5↗: warning: function 'get_phase_timings' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const GitPhaseTimings &get_phase_timings() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:209:11↗: warning: class 'PhaseCapture' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class PhaseCapture
          ^
include/esys/repo/manifest/syncrepos.h:53:20↗: warning: class 'SyncRepos' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SyncRepos : public log::User
                   ^
include/esys/repo/manifest/syncrepos.h:72:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:96:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:150:5↗: warning: function 'get_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:165:5↗: warning: function 'is_repo_to_be_synced' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_repo_to_be_synced(std::shared_ptr<manifest::Repository> repo) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:172:5↗: warning: function 'get_folders_to_sync' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_folders_to_sync() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:184:5↗: warning: function 'get_job_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_job_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:191:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:203:5↗: warning: function 'get_alt_address' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_alt_address() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:206:5↗: warning: function 'get_run_tasks' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const RunTasks &get_run_tasks() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:212:5↗: warning: function 'get_workspace_root_order' should be marked [[nodiscard]] [modernize-use-nodiscard]
    WorkspaceRootOrder get_workspace_root_order() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:218:5↗: warning: function 'get_workspace_root_clone_method' should be marked [[nodiscard]] [modernize-use-nodiscard]
    WorkspaceRootCloneMethod get_workspace_root_clone_method() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:224:5↗: warning: function 'get_clone_options' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const git::CloneOptions &get_clone_options() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:236:5↗: warning: function 'get_tui' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_tui() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/task_t.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/task_t.h:38:7↗: warning: class 'Task_t' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class Task_t : public TaskBase
      ^
include/esys/repo/manifest/task_t.h:79:5↗: warning: 'm_fct' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
    m_fct = [obj, raw_fct, args...] { return (obj.get()->*raw_fct)(args...); };
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/esys/repo/manifest/task_t.h:91:5↗: warning: 'm_fct' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
    m_fct = [obj, raw_fct, repo, args...] { return (obj.get()->*raw_fct)(repo, args...); };
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/esys/repo/manifest/task_t.h:95:26↗: warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
Task_t<OBJ, F, ARGS...>::~Task_t()
                         ^
include/esys/repo/manifest/taskbase.h:34:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/taskbase.h:46:20↗: warning: class 'TaskBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API TaskBase
                   ^
include/esys/repo/manifest/taskbase.h:65:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:101:5↗: warning: function 'get_result' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_result() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:112:5↗: warning: function 'get_errors' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_errors() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:124:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:136:5↗: warning: function 'get_worker_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_worker_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:148:5↗: warning: function 'get_progress_session' should be marked [[nodiscard]] [modernize-use-nodiscard]
    progress::ProgressSession *get_progress_session() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/workerthread.h:24:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/workerthread.h:56:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/xmlfile.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/xmlfile.h:40:20↗: warning: class 'XMLFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API XMLFile : public Base
                   ^
include/esys/repo/manifest/xmlfile.h:80:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const XMLFileImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifestfilebase.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/manifestfilebase.h:38:20↗: warning: class 'ManifestFileBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ManifestFileBase
                   ^
include/esys/repo/manifestfilebase.h:75:5↗: warning: function 'get_data' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual std::shared_ptr<repo::Manifest> get_data() const;
    ^
    [[nodiscard]] 
include/esys/repo/progresscallback_t.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/progresscallback_t.h:33:7↗: warning: class 'ProgressCallback_t' defines a non-default destructor, a copy constructor, a copy assignment operator and a move constructor but does not define a move assignment operator [cppcoreguidelines-special-member-functions]
class ProgressCallback_t : public ProgressCallbackBase
      ^
include/esys/repo/progresscallback_t.h:36:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef void (OBJ::*CallbackType)(const git::Progress &progress);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using CallbackType = void (OBJ::*)(const git::Progress &)
include/esys/repo/progresscallback_t.h:93:26↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
ProgressCallback_t<OBJ>::ProgressCallback_t()
                         ^
include/esys/repo/progresscallback_t.h:105:26↗: warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
ProgressCallback_t<OBJ>::~ProgressCallback_t()
                         ^
include/esys/repo/progresscallbackbase.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/progresscallbackbase.h:31:20↗: warning: class 'ProgressCallbackBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ProgressCallbackBase
                   ^
include/esys/repo/queuemt.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/queuemt.h:37:7↗: warning: class 'QueueMT' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class QueueMT
      ^
include/esys/repo/queuemt.h:104:13↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
QueueMT<T>::QueueMT()
            ^
include/esys/repo/queuemt.h:210:10↗: warning: variable 'remove' is not initialized [cppcoreguidelines-init-variables]
    bool remove;
         ^
                = 0
include/esys/repo/ssh.h:23:9↗: warning: macro 'ESYSREPO_USE_LIBSSH2' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_USE_LIBSSH2 1
        ^
include/esys/repo/sshbase.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/sshbase.h:37:20↗: warning: class 'SSHBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SSHBase : public log::User
                   ^
include/esys/repo/sshbase.h:78:25↗: warning: member variable 'm_agent_identity_path' has protected visibility [cppcoreguidelines-non-private-member-variables-in-classes]
    mutable std::string m_agent_identity_path;
                        ^
include/esys/repo/userconfig.h:35:20↗: warning: class 'UserConfig' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserConfig
                   ^
include/esys/repo/userconfig.h:54:5↗: warning: function 'get_temp_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_temp_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:66:5↗: warning: function 'get_manifest_directories_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_directories_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:78:5↗: warning: function 'get_traces_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_traces_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:90:5↗: warning: function 'get_manifest_directories' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<manifest::Directories> get_manifest_directories() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfigfile.h:35:20↗: warning: class 'UserConfigFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserConfigFile
                   ^
include/esys/repo/userconfigfile.h:54:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfigfile.h:66:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserConfig> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfigfile.h:90:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const UserConfigFileImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:40:20↗: warning: class 'UserFolder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserFolder : public log::User
                   ^
include/esys/repo/userfolder.h:59:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:71:5↗: warning: function 'get_user_home_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_user_home_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:83:5↗: warning: function 'get_user_config_file_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_user_config_file_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:95:5↗: warning: function 'get_user_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserConfig> get_user_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/version.h:24:9↗: warning: macro 'ESYSREPO_VERSION_NUM_DOT_STRING' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_VERSION_NUM_DOT_STRING "0.4.0"
        ^
include/esys/repo/version.h:25:9↗: warning: macro 'ESYSREPO_VERSION_NUM_STRING' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_VERSION_NUM_STRING "0400"
        ^
include/esys/repo/workspace.h:38:20↗: warning: class 'Workspace' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Workspace : public log::User
                   ^
include/esys/repo/workspace.h:59:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:66:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:78:5↗: warning: function 'get_kind' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Kind get_kind() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:96:5↗: warning: function 'get_full_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_full_path(std::shared_ptr<manifest::Repository> repo) const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:108:5↗: warning: function 'get_load_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<LoadFolder> get_load_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:114:5↗: warning: function 'get_config_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<ConfigFolder> get_config_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:120:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/result_t.h:149:10↗: warning: 'print' overrides a member function but is not marked 'override' [clang-diagnostic-inconsistent-missing-override]
    void print(std::ostream &os) const;
         ^
src/esys/repo/gitbase.cpp:406:36↗: note: in instantiation of template class 'esys::repo::Result_t<esys::repo::git::SshBackend>' requested here
Result_t<git::SshBackend> GitBase::get_ssh_backend()
                                   ^
include/esys/repo/result.h:234:18↗: note: overridden virtual function is here
    virtual void print(std::ostream &os) const;
                 ^
src/esys/repo/cli/appbase.cpp:366:63↗: warning: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
            m_logger->add_rotating_file(traces_file.string(), 100, 10, esys::log::Level::TRACE);
                                                              ^
src/esys/repo/cli/appbase.cpp:366:68↗: warning: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
            m_logger->add_rotating_file(traces_file.string(), 100, 10, esys::log::Level::TRACE);
                                                                   ^
src/esys/repo/cli/appbase.cpp:457:36↗: warning: 15 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        oss << "    " << std::setw(15) << std::left << cmd->get_name() << cmd->get_description() << std::endl;
                                   ^
src/esys/repo/cli/appbase.cpp:572:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using tokenizer = boost::tokenizer<boost::char_separator<char>>
src/esys/repo/cli/appbase.cpp:600:44↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
    if (m_vm.count("subargs") == 0) return std::vector<std::string>();
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                           {}
src/esys/repo/cli/cmd_cli.cpp:262:44↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
    if (m_vm.count("subargs") == 0) return std::vector<std::string>();
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                           {}
src/esys/repo/cli/cmd_cli.cpp:317:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using tokenizer = boost::tokenizer<boost::char_separator<char>>
src/esys/repo/configfileimpl.cpp:74:24↗: warning: variable 'kind' is not initialized [cppcoreguidelines-init-variables]
        manifest::Kind kind;
                       ^
src/esys/repo/configfileimpl.cpp:85:26↗: warning: variable 'format' is not initialized [cppcoreguidelines-init-variables]
        manifest::Format format;
                         ^
src/esys/repo/configfileimpl.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
src/esys/repo/configfileimpl.h:34:20↗: warning: class 'ConfigFileImpl' defines a non-default destructor, a copy constructor, a copy assignment operator and a move constructor but does not define a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ConfigFileImpl
                   ^
src/esys/repo/configfileimpl.h:44:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const ConfigFile *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/exe/cmd.cpp:282:25↗: warning: 20 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        os << std::setw(20) << std::left << repo->get_path() << repo->get_revision();
                        ^
src/esys/repo/exe/cmd.cpp:290:25↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (result.error()) ESYSREPO_RESULT(result);
                        ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/exe/cmd.cpp:632:29↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    logger->set_debug_level(5);
                            ^
src/esys/repo/exe/cmdenv.cpp:56:26↗: warning: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [cppcoreguidelines-narrowing-conversions]
        oss << std::setw(max_name_size + 1) << std::left << item.get_name() << " = ";
                         ^
src/esys/repo/exe/cmdinfo.cpp:181:82↗: warning: 20 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        oss << std::endl << "        [" << idx << "] " << std::left << std::setw(20) << branch->get_name();
                                                                                 ^
src/esys/repo/exe/cmdmulti.cpp:33:1↗: warning: constructor does not initialize these fields: m_task [cppcoreguidelines-pro-type-member-init]
CmdMulti::CmdMulti()
^
src/esys/repo/exe/cmdmulti.cpp:366:29↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
        if (result.error()) ESYSREPO_RESULT(result);
                            ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/exe/cmdstatus.cpp:163:22↗: warning: narrowing conversion from 'std::size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [cppcoreguidelines-narrowing-conversions]
    oss << std::setw(get_start_print_branch()) << std::setfill(' ') << std::left << first_part;
                     ^
src/esys/repo/filesystem.cpp:31:9↗: warning: macro 'ESYSREPO_BOOST_FILESYSTEM_HAS_RECUR' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_BOOST_FILESYSTEM_HAS_RECUR 1
        ^
src/esys/repo/gitcmdline/git_cmdline.cpp:125:11↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_detect_ssh_agent_done = false;
          ^
src/esys/repo/gitcmdline/git_cmdline.cpp:126:11↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_ssh_agent_running = false;
          ^
src/esys/repo/gitcmdline/git_cmdline.cpp:140:17↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (m_open) close();
                ^~~~~
src/esys/repo/gitcmdline/git_cmdline.cpp:147:70↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
        if (env[0] != '\0' && boost::filesystem::exists(env)) return std::string(env);
                                                                     ^
src/esys/repo/gitcmdline/git_cmdline.cpp:151:70↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
        if (env[0] != '\0' && boost::filesystem::exists(env)) return std::string(env);
                                                                     ^
src/esys/repo/gitcmdline/git_cmdline.cpp:222:14↗: warning: 1024 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    char buf[1024];
             ^
src/esys/repo/gitcmdline/git_cmdline.cpp:269:14↗: warning: 4096 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    char buf[4096];
             ^
src/esys/repo/gitcmdline/git_cmdline.cpp:301:17↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (m_open) close();
                ^~~~~
src/esys/repo/gitcmdline/git_cmdline.cpp:437:35↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
                if (ref.size() >= 5 && ref.compare(ref.size() - 5, 5, "/HEAD") == 0) continue;
                                  ^
src/esys/repo/gitcmdline/git_cmdline.cpp:437:65↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
                if (ref.size() >= 5 && ref.compare(ref.size() - 5, 5, "/HEAD") == 0) continue;
                                                                ^
src/esys/repo/gitcmdline/git_cmdline.cpp:437:68↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
                if (ref.size() >= 5 && ref.compare(ref.size() - 5, 5, "/HEAD") == 0) continue;
                                                                   ^
src/esys/repo/githelper.cpp:40:7↗: warning: class 'PhaseTimer' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class PhaseTimer
      ^
src/esys/repo/githelper.cpp:204:21↗: warning: variable 'g_phase_timing_override' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::optional<bool> g_phase_timing_override;
                    ^
src/esys/repo/githelper.cpp:205:21↗: warning: variable 'g_phase_timing_env_cached' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::optional<bool> g_phase_timing_env_cached;
                    ^
src/esys/repo/githelper.cpp:849:34↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (m_git_helper != nullptr) m_git_helper->close(log::Level::DEBUG);
                                 ^~~~~~~~~~~~~~~~~~~
src/esys/repo/gitmngr.cpp:30:29↗: warning: variable 'm_new_ptr_fct' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
GitMngr::NewPtrFct GitMngr::m_new_ptr_fct = nullptr;
                            ^
src/esys/repo/grepo/folder_grepo.cpp:63:43↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (data->get_includes().size() != 1) ESYSREPO_RESULT(ResultCode::GREPO_FOLDER_NO_INCLUDE, path.string());
                                          ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/grepo/manifestimpl.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::grepo
src/esys/repo/grepo/manifestimpl.h:38:20↗: warning: class 'ManifestImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ManifestImpl
                   ^
src/esys/repo/grepo/manifestimpl.h:63:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Manifest *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/grepo/manifestimpl_grepo.cpp:292:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using tokenizer = boost::tokenizer<boost::char_separator<char>>
src/esys/repo/hybrid/git_hybrid.cpp:37:20↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (is_open()) close();
                   ^~~~~
src/esys/repo/hybrid/git_hybrid.cpp:96:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_cmdline->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/hybrid/git_hybrid.cpp:132:68↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (is_open() || m_cmdline->is_open() || m_libgit2->is_open()) close();
                                                                   ^~~~~
src/esys/repo/hybrid/git_hybrid.cpp:147:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_cmdline->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/hybrid/git_hybrid.cpp:178:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_libgit2->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/hybrid/git_hybrid.cpp:198:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_libgit2->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/libgit2/git_libgit2.cpp:34:11↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_detect_ssh_agent_done = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:35:11↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_ssh_agent_running = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:36:11↗: warning: variable 's_exec_probe_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_exec_probe_done = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:37:11↗: warning: variable 's_exec_available' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_exec_available = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:38:10↗: warning: variable 's_libssh2_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
int Git::s_libssh2_supported = -1;
         ^
src/esys/repo/libgit2/git_libgit2.cpp:39:10↗: warning: variable 's_exec_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
int Git::s_exec_supported = -1;
         ^
src/esys/repo/libgit2/gitimpl.h:38:20↗: warning: class 'GitImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitImpl
                   ^
src/esys/repo/libgit2/gitimpl.h:161:37↗: warning: variable 's_libgt2' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static std::unique_ptr<LibGit2> s_libgt2;
                                    ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:47:35↗: warning: variable 's_libgt2' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::unique_ptr<LibGit2> GitImpl::s_libgt2 = nullptr;
                                  ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:344:13↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
            check_error(result, ""); //! \TODO why??
            ^~~~~~~~~~~ ~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:411:30↗: warning: do not use C-style cast to convert between unrelated types [cppcoreguidelines-pro-type-cstyle-cast]
    result = git_object_peel((git_object **)tree.get_p(), obj.get(), GIT_OBJECT_TREE);
                             ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:440:17↗: warning: variable 'commit_message' is not initialized [cppcoreguidelines-init-variables]
    const char *commit_message;
                ^
                               = nullptr
src/esys/repo/libgit2/gitimpl_libgit2.cpp:441:26↗: warning: variable 'commit_signature' is not initialized [cppcoreguidelines-init-variables]
    const git_signature *commit_signature;
                         ^
                                          = nullptr
src/esys/repo/libgit2/gitimpl_libgit2.cpp:442:16↗: warning: variable 'commit_time' is not initialized [cppcoreguidelines-init-variables]
    git_time_t commit_time;
               ^
                           = 0
src/esys/repo/libgit2/gitimpl_libgit2.cpp:457:9↗: warning: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto]
        std::time_t commit_time_t = static_cast<std::time_t>(commit_time);
        ^~~~~~~~~~~
        auto
src/esys/repo/libgit2/gitimpl_libgit2.cpp:757:17↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
                check_error(result, "can't get the name of the branch"); //!  \TODO check if this is correct
                ^~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:761:37↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
                if (result_int < 0) check_error(result, "set branch upstream"); //!  \TODO check if this is correct
                                    ^~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:995:5↗: warning: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto]
    std::time_t commit_time_t = static_cast<std::time_t>(commit_time);
    ^~~~~~~~~~~
    auto
src/esys/repo/libgit2/gitimpl_libgit2.cpp:1132:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        handle_status_entry(repo_status, status_entry);
        ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:1828:32↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (target_oid == nullptr) ESYSREPO_RESULT(ResultCode::GIT_GENERIC_ERROR);
                               ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:1887:26↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (result_int != 0) ESYSREPO_RESULT(ResultCode::INTERNAL_ERROR);
                         ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:2074:21↗: warning: do not use C-style cast to cast away constness [cppcoreguidelines-pro-type-cstyle-cast]
    char *refspec = (char *)refspec_str.c_str();
                    ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:2104:21↗: warning: do not use C-style cast to cast away constness [cppcoreguidelines-pro-type-cstyle-cast]
    char *refspec = (char *)note_ref.c_str();
                    ^
src/esys/repo/libgit2/guard.h:30:7↗: warning: class 'Guard' defines a non-default destructor and a copy assignment operator but does not define a copy constructor, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class Guard
      ^
src/esys/repo/libgit2/guard.h:50:5↗: warning: operator=() should return 'Guard&' [cppcoreguidelines-c-copy-assignment-signature]
    void operator=(const Guard &other);
    ^
src/esys/repo/libgit2/guard.h:63:11↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
Guard<T>::Guard()
          ^
src/esys/repo/libgit2/guard.h:94:1↗: warning: operator=() should return 'Guard&' [cppcoreguidelines-c-copy-assignment-signature]
template<typename T>
^
src/esys/repo/libgit2/guardassign.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/guards.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/guards.h:33:7↗: warning: class 'GuardS' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class GuardS
      ^
src/esys/repo/libgit2/guards.h:43:7↗: warning: member variable 'm_data' has protected visibility [cppcoreguidelines-non-private-member-variables-in-classes]
    T m_data = {0};
      ^
src/esys/repo/libgit2/guards.h:47:12↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
GuardS<T>::GuardS()
           ^
src/esys/repo/libgit2/guardsrelease.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/libgit2.h:22:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/libgit2.h:31:20↗: warning: class 'LibGit2' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LibGit2
                   ^
src/esys/repo/libgit2/notes.h:82:5↗: warning: function 'is_loaded' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_loaded() const;
    ^
    [[nodiscard]] 
src/esys/repo/libgit2/notes_libgit2.cpp:92:1↗: warning: constructor does not initialize these fields: m_note_oid, m_comment_oid [cppcoreguidelines-pro-type-member-init]
Notes::OIDCommitMapNoteItem::OIDCommitMapNoteItem() = default;
^
src/esys/repo/libgit2/notes_libgit2.cpp:136:13↗: warning: do not use array subscript when the index is not an integer constant expression [cppcoreguidelines-pro-bounds-constant-array-index]
        if (lhs.id[idx] < rhs.id[idx]) return true;
            ^
src/esys/repo/libgit2/notes_libgit2.cpp:136:27↗: warning: do not use array subscript when the index is not an integer constant expression [cppcoreguidelines-pro-bounds-constant-array-index]
        if (lhs.id[idx] < rhs.id[idx]) return true;
                          ^
src/esys/repo/libssh2/ssh_libssh2.cpp:31:18↗: warning: variable 's_dflt_agent_identity_path' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::string SSH::s_dflt_agent_identity_path;
                 ^
src/esys/repo/libssh2/sshimpl.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libssh2
src/esys/repo/libssh2/sshimpl.h:41:20↗: warning: class 'SSHImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SSHImpl
                   ^
src/esys/repo/libssh2/sshimpl.h:55:11↗: warning: class 'InitRelease' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class InitRelease
          ^
src/esys/repo/libssh2/sshimpl.h:60:13↗: warning: 'm_result' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
            m_result = libssh2_init(0);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libssh2/sshimpl.h:61:13↗: warning: 'm_init' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
            m_init = true;
            ^~~~~~~~~~~~~~
src/esys/repo/libssh2/sshimpl.h:81:41↗: warning: variable 's_init_release' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static std::unique_ptr<InitRelease> s_init_release;
                                        ^
src/esys/repo/libssh2/sshimpl_libssh2.cpp:27:48↗: warning: variable 's_init_release' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::unique_ptr<SSHImpl::InitRelease> SSHImpl::s_init_release;
                                               ^
src/esys/repo/manifest/directoryfilexmlimpl.h:35:20↗: warning: class 'DirectoryFileXMLImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DirectoryFileXMLImpl
                   ^
src/esys/repo/manifest/directoryfilexmlimpl.h:52:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    DirectoryFileXML *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/manifest/format_manifest.cpp:59:12↗: warning: variable 'format' is not initialized [cppcoreguidelines-init-variables]
    Format format;
           ^
src/esys/repo/manifest/multifilexmlimpl.h:31:20↗: warning: class 'MultiFileXMLImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API MultiFileXMLImpl
                   ^
src/esys/repo/manifest/runtasks_manifest.cpp:162:19↗: warning: use emplace_back instead of push_back [modernize-use-emplace]
        m_threads.push_back(std::thread(&RunTasks::worker_thread, this, worker));
                  ^~~~~~~~~~~~~~~~~~~~~~                                      ~
                  emplace_back(
src/esys/repo/manifest/sync_manifest.cpp:173:30↗: warning: variable 'merge_analysis_result' is not initialized [cppcoreguidelines-init-variables]
    git::MergeAnalysisResult merge_analysis_result;
                             ^
src/esys/repo/manifest/syncrepo_manifest.cpp:42:23↗: warning: 40 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    if (rev.size() != 40) return false;
                      ^
src/esys/repo/manifest/syncrepo_manifest.cpp:443:30↗: warning: variable 'merge_analysis_result' is not initialized [cppcoreguidelines-init-variables]
    git::MergeAnalysisResult merge_analysis_result;
                             ^
src/esys/repo/manifest/xmlfileimpl.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
src/esys/repo/manifest/xmlfileimpl.h:38:20↗: warning: class 'XMLFileImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API XMLFileImpl
                   ^
src/esys/repo/manifest/xmlfileimpl.h:63:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const XMLFile *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/manifest/xmlfileimpl_manifest.cpp:104:20↗: warning: variable 'kind' is not initialized [cppcoreguidelines-init-variables]
    manifest::Kind kind;
                   ^
src/esys/repo/progress/consoleobserver.cpp:168:43↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        case RepoPhase::RECEIVING: return 5;
                                          ^
src/esys/repo/progress/consoleobserver.cpp:170:42↗: warning: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        case RepoPhase::CHECKOUT: return 6;
                                         ^
src/esys/repo/progress/consoleobserver.cpp:172:40↗: warning: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        case RepoPhase::FAILED: return 6;
                                       ^
src/esys/repo/result.cpp:24:16↗: warning: variable 'OK' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
Result Result::OK;
               ^
src/esys/repo/resultcode.cpp:26:17↗: warning: variable 's_cur_id' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
int ResultCode::s_cur_id = -1;
                ^
src/esys/repo/resultcode.cpp:27:40↗: warning: variable 's_map' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::map<int, std::string> ResultCode::s_map;
                                       ^
src/esys/repo/resultcode.cpp:28:30↗: warning: variable 's_ints' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::vector<int> ResultCode::s_ints;
                             ^
src/esys/repo/resultcode.cpp:114:20↗: warning: variable 'OK' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(OK, 0);
                   ^
src/esys/repo/resultcode.cpp:115:20↗: warning: variable 'GENERIC_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GENERIC_ERROR);
                   ^
src/esys/repo/resultcode.cpp:116:20↗: warning: variable 'ERROR_OPENING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(ERROR_OPENING_FILE);
                   ^
src/esys/repo/resultcode.cpp:117:20↗: warning: variable 'PATH_NOT_EXISTING' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(PATH_NOT_EXISTING);
                   ^
src/esys/repo/resultcode.cpp:118:20↗: warning: variable 'EMPTY_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(EMPTY_PATH);
                   ^
src/esys/repo/resultcode.cpp:119:20↗: warning: variable 'FILE_NOT_EXISTING' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FILE_NOT_EXISTING);
                   ^
src/esys/repo/resultcode.cpp:120:20↗: warning: variable 'INTERNAL_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(INTERNAL_ERROR);
                   ^
src/esys/repo/resultcode.cpp:121:20↗: warning: variable 'NOT_IMPLEMENTED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(NOT_IMPLEMENTED);
                   ^
src/esys/repo/resultcode.cpp:122:20↗: warning: variable 'FOLDER_CREATION_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FOLDER_CREATION_ERROR);
                   ^
src/esys/repo/resultcode.cpp:123:20↗: warning: variable 'FAILED_TO_COPY' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FAILED_TO_COPY);
                   ^
src/esys/repo/resultcode.cpp:124:20↗: warning: variable 'FAILED_TO_REMOVE_ALL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FAILED_TO_REMOVE_ALL);
                   ^
src/esys/repo/resultcode.cpp:125:20↗: warning: variable 'RAW_INT_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(RAW_INT_ERROR);
                   ^
src/esys/repo/resultcode.cpp:126:20↗: warning: variable 'FOLDER_ALREADY_EXISTS' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FOLDER_ALREADY_EXISTS);
                   ^
src/esys/repo/resultcode.cpp:127:20↗: warning: variable 'MANIFEST_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:128:20↗: warning: variable 'CONFIG_FOLDER_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CONFIG_FOLDER_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:129:20↗: warning: variable 'GIT_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:130:20↗: warning: variable 'JOB_COUNT_NEGATIVE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(JOB_COUNT_NEGATIVE);
                   ^
src/esys/repo/resultcode.cpp:131:20↗: warning: variable 'ERROR_VECTOR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(ERROR_VECTOR);
                   ^
src/esys/repo/resultcode.cpp:132:20↗: warning: variable 'NO_AUTHOR_GIVEN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(NO_AUTHOR_GIVEN);
                   ^
src/esys/repo/resultcode.cpp:134:20↗: warning: variable 'CFGFILE_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_ERROR_PARSING_FILE, -100);
                   ^
src/esys/repo/resultcode.cpp:135:20↗: warning: variable 'CFGFILE_NO_MANIFEST_TYPE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_NO_MANIFEST_TYPE);
                   ^
src/esys/repo/resultcode.cpp:136:20↗: warning: variable 'CFGFILE_UNKNOWN_MANIFEST_TYPE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_UNKNOWN_MANIFEST_TYPE);
                   ^
src/esys/repo/resultcode.cpp:137:20↗: warning: variable 'CFGFILE_NO_MANIFEST_URL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_NO_MANIFEST_URL);
                   ^
src/esys/repo/resultcode.cpp:138:20↗: warning: variable 'CFGFILE_UNKNOWN_MANIFEST_KIND' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_UNKNOWN_MANIFEST_KIND);
                   ^
src/esys/repo/resultcode.cpp:139:20↗: warning: variable 'CFGFILE_UNKNOWN_MANIFEST_FORMAT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_UNKNOWN_MANIFEST_FORMAT);
                   ^
src/esys/repo/resultcode.cpp:141:20↗: warning: variable 'MANIFEST_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_ERROR_PARSING_FILE, -200);
                   ^
src/esys/repo/resultcode.cpp:142:20↗: warning: variable 'MANIFEST_NO_LOCATIONS_DEFINED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_NO_LOCATIONS_DEFINED);
                   ^
src/esys/repo/resultcode.cpp:143:20↗: warning: variable 'MANIFEST_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:144:20↗: warning: variable 'MANIFEST_ATTRIBUTE_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_ATTRIBUTE_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:145:20↗: warning: variable 'MANIFEST_INCORRECT_ATTRIBUTE_VALUE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_INCORRECT_ATTRIBUTE_VALUE);
                   ^
src/esys/repo/resultcode.cpp:146:20↗: warning: variable 'MANIFEST_NO_DEFAULT_LOCATION' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_NO_DEFAULT_LOCATION);
                   ^
src/esys/repo/resultcode.cpp:147:20↗: warning: variable 'MANIFEST_TYPE_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_TYPE_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:148:20↗: warning: variable 'MANIFEST_KIND_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_KIND_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:149:20↗: warning: variable 'MANIFEST_FORMAT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FORMAT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:150:20↗: warning: variable 'MANIFEST_LOCATION_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_LOCATION_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:151:20↗: warning: variable 'MANIFEST_LOCATION_WITHOUT_ADDRESS' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_LOCATION_WITHOUT_ADDRESS);
                   ^
src/esys/repo/resultcode.cpp:152:20↗: warning: variable 'MANIFEST_REPOSITORY_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPOSITORY_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:153:20↗: warning: variable 'MANIFEST_REPOSITORY_WITHOUT_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPOSITORY_WITHOUT_PATH);
                   ^
src/esys/repo/resultcode.cpp:154:20↗: warning: variable 'MANIFEST_GROUP_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_GROUP_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:155:20↗: warning: variable 'MANIFEST_GROUP_REPO_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_GROUP_REPO_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:156:20↗: warning: variable 'MANIFEST_GROUP_REPO_WITHOUT_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_GROUP_REPO_WITHOUT_PATH);
                   ^
src/esys/repo/resultcode.cpp:157:20↗: warning: variable 'MANIFEST_REPO_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPO_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:158:20↗: warning: variable 'MANIFEST_FILE_EXT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FILE_EXT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:159:20↗: warning: variable 'MANIFEST_FAILED_TO_DETECT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FAILED_TO_DETECT);
                   ^
src/esys/repo/resultcode.cpp:160:20↗: warning: variable 'MANIFEST_XML_DATA_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_XML_DATA_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:161:20↗: warning: variable 'MANIFEST_REPOSITORY_WITHOUT_LOCATION' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPOSITORY_WITHOUT_LOCATION);
                   ^
src/esys/repo/resultcode.cpp:162:20↗: warning: variable 'MANIFEST_FORMAT_NOT_SET' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FORMAT_NOT_SET);
                   ^
src/esys/repo/resultcode.cpp:164:20↗: warning: variable 'GREPO_FOLDER_NO_INCLUDE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GREPO_FOLDER_NO_INCLUDE, -300);
                   ^
src/esys/repo/resultcode.cpp:166:20↗: warning: variable 'CMDINIT_NO_URL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDINIT_NO_URL, -400);
                   ^
src/esys/repo/resultcode.cpp:167:20↗: warning: variable 'CMDINIT_FAILED_FETCH_UNKNOWN_MANIFEST' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDINIT_FAILED_FETCH_UNKNOWN_MANIFEST);
                   ^
src/esys/repo/resultcode.cpp:169:20↗: warning: variable 'GIT_GENERIC_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_GENERIC_ERROR, -500);
                   ^
src/esys/repo/resultcode.cpp:170:20↗: warning: variable 'GIT_UNKNOWN_PROTOCOL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_UNKNOWN_PROTOCOL);
                   ^
src/esys/repo/resultcode.cpp:171:20↗: warning: variable 'GIT_RAW_INT_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_RAW_INT_ERROR);
                   ^
src/esys/repo/resultcode.cpp:172:20↗: warning: variable 'GIT_ERROR_OPENING_REPO' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_ERROR_OPENING_REPO);
                   ^
src/esys/repo/resultcode.cpp:173:20↗: warning: variable 'GIT_RESET_TYPE_NOT_SET' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_RESET_TYPE_NOT_SET);
                   ^
src/esys/repo/resultcode.cpp:174:20↗: warning: variable 'GIT_RESET_TYPE_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_RESET_TYPE_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:175:20↗: warning: variable 'GIT_NO_BRANCH_FOUND' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_NO_BRANCH_FOUND);
                   ^
src/esys/repo/resultcode.cpp:176:20↗: warning: variable 'GIT_REPO_NOT_OPEN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_REPO_NOT_OPEN);
                   ^
src/esys/repo/resultcode.cpp:177:20↗: warning: variable 'GIT_FIND_REF_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_FIND_REF_FAILED);
                   ^
src/esys/repo/resultcode.cpp:178:20↗: warning: variable 'GIT_GET_HASH_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_GET_HASH_FAILED);
                   ^
src/esys/repo/resultcode.cpp:179:20↗: warning: variable 'GIT_NO_PARENT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_NO_PARENT);
                   ^
src/esys/repo/resultcode.cpp:180:20↗: warning: variable 'GIT_ALREADY_OPENED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_ALREADY_OPENED);
                   ^
src/esys/repo/resultcode.cpp:181:20↗: warning: variable 'GIT_SSH_BACKEND_NOT_SUPPORTED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_SSH_BACKEND_NOT_SUPPORTED);
                   ^
src/esys/repo/resultcode.cpp:183:20↗: warning: variable 'CMD_INCORRECT_PARAMETERS_IN_CONTEXT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_INCORRECT_PARAMETERS_IN_CONTEXT, -600);
                   ^
src/esys/repo/resultcode.cpp:184:20↗: warning: variable 'CMD_INCORRECT_PARAMETERS_COMBINATION' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_INCORRECT_PARAMETERS_COMBINATION);
                   ^
src/esys/repo/resultcode.cpp:185:20↗: warning: variable 'CMD_MISSING_PARAMETERS' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_MISSING_PARAMETERS);
                   ^
src/esys/repo/resultcode.cpp:186:20↗: warning: variable 'CMD_GENERIC_RAW_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GENERIC_RAW_ERROR);
                   ^
src/esys/repo/resultcode.cpp:187:20↗: warning: variable 'CMD_NO_ESYSREPO_FOLDER_FOUND' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_NO_ESYSREPO_FOLDER_FOUND);
                   ^
src/esys/repo/resultcode.cpp:188:20↗: warning: variable 'CMD_CONFIG_FOLDER_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_CONFIG_FOLDER_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:189:20↗: warning: variable 'CMD_GIT_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:190:20↗: warning: variable 'CMD_GIT_IS_NOT_OPENED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_IS_NOT_OPENED);
                   ^
src/esys/repo/resultcode.cpp:191:20↗: warning: variable 'CMD_GIT_OPEN_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_OPEN_FAILED);
                   ^
src/esys/repo/resultcode.cpp:192:20↗: warning: variable 'CMD_GIT_IS_DIRTY_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_IS_DIRTY_FAILED);
                   ^
src/esys/repo/resultcode.cpp:193:20↗: warning: variable 'CMD_GIT_FETCH_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_FETCH_FAILED);
                   ^
src/esys/repo/resultcode.cpp:194:20↗: warning: variable 'CMD_GIT_GET_HEAD_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_GET_HEAD_FAILED);
                   ^
src/esys/repo/resultcode.cpp:195:20↗: warning: variable 'CMD_GIT_MORE_THAN_ONE_COMMIT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_MORE_THAN_ONE_COMMIT);
                   ^
src/esys/repo/resultcode.cpp:196:20↗: warning: variable 'CMD_WORKSPACE_PATH_IS_EMPTY' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_WORKSPACE_PATH_IS_EMPTY);
                   ^
src/esys/repo/resultcode.cpp:198:20↗: warning: variable 'CMDSYNC_ABORTED_FOUND_CHANGES' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDSYNC_ABORTED_FOUND_CHANGES, -700);
                   ^
src/esys/repo/resultcode.cpp:199:20↗: warning: variable 'CMDSYNC_GIT_CAN_NOT_BE_FAST_FORWARDED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDSYNC_GIT_CAN_NOT_BE_FAST_FORWARDED);
                   ^
src/esys/repo/resultcode.cpp:201:20↗: warning: variable 'RUNTASKS_NO_TASK' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(RUNTASKS_NO_TASK, -800);
                   ^
src/esys/repo/resultcode.cpp:203:20↗: warning: variable 'DIRECTORY_XML_DATA_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_DATA_NULLPTR, -900);
                   ^
src/esys/repo/resultcode.cpp:204:20↗: warning: variable 'DIRECTORY_XML_ERROR_PARSING_STREAM' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_ERROR_PARSING_STREAM);
                   ^
src/esys/repo/resultcode.cpp:205:20↗: warning: variable 'DIRECTORY_XML_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_ERROR_PARSING_FILE);
                   ^
src/esys/repo/resultcode.cpp:206:20↗: warning: variable 'DIRECTORY_XML_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:207:20↗: warning: variable 'DIRECTORY_XML_MISSING_ATTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_MISSING_ATTR);
                   ^
src/esys/repo/resultcode.cpp:208:20↗: warning: variable 'DIRECTORY_XML_UNKNOWN_URL_TYPE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_UNKNOWN_URL_TYPE);
                   ^
src/esys/repo/resultcode.cpp:210:20↗: warning: variable 'MULTI_XML_CAPTURE_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_XML_CAPTURE_NULLPTR, -1000);
                   ^
src/esys/repo/resultcode.cpp:211:20↗: warning: variable 'MULTI_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:212:20↗: warning: variable 'MULTI_REPOSITORY_WITHOUT_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_REPOSITORY_WITHOUT_PATH);
                   ^
src/esys/repo/resultcode.cpp:213:20↗: warning: variable 'MULTI_REPOSITORY_WITHOUT_REV' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_REPOSITORY_WITHOUT_REV);
                   ^
src/esys/repo/resultcode.cpp:214:20↗: warning: variable 'MULTI_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_ERROR_PARSING_FILE);
                   ^
src/esys/repo/resultcode.cpp:215:20↗: warning: variable 'MULTI_ERROR_PARSING_STREAM' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_ERROR_PARSING_STREAM);
                   ^
src/esys/repo/resultcode.cpp:217:20↗: warning: variable 'USERCONFIG_XML_DATA_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_DATA_NULLPTR, -1100);
                   ^
src/esys/repo/resultcode.cpp:218:20↗: warning: variable 'USERCONFIG_XML_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:219:20↗: warning: variable 'USERCONFIG_XML_MISSING_ELEMENT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_MISSING_ELEMENT);
                   ^
src/esys/repo/resultcode.cpp:220:20↗: warning: variable 'USERCONFIG_XML_MISSING_ATTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_MISSING_ATTR);
                   ^
src/esys/repo/resultcode.cpp:221:20↗: warning: variable 'USERCONFIG_XML_UNKNOWN_ATTR_VALUE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_UNKNOWN_ATTR_VALUE);
                   ^
src/esys/repo/userconfigfileimpl.h:31:20↗: warning: class 'UserConfigFileImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserConfigFileImpl
                   ^
src/esys/repo/userconfigfileimpl.h:71:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const UserConfigFile *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/userfolder.cpp:105:39↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (get_user_config() == nullptr) ESYSREPO_RESULT(ResultCode::INTERNAL_ERROR);
                                      ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/userfolder.cpp:174:39↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (get_user_config() == nullptr) ESYSREPO_RESULT(ResultCode::INTERNAL_ERROR);
                                      ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/version.cpp:21:10↗: warning: inclusion of deprecated C++ header 'string.h'; consider using 'cstring' instead [modernize-deprecated-headers]
#include <string.h>
         ^~~~~~~~~~
         <cstring>
src/esys/repo/version.cpp:22:10↗: warning: inclusion of deprecated C++ header 'stdlib.h'; consider using 'cstdlib' instead [modernize-deprecated-headers]
#include <stdlib.h>
         ^~~~~~~~~~
         <cstdlib>
src/esys/repo/version.cpp:83:31↗: warning: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        if (idx > 0) value *= 10;
                              ^
ERROR running cland-tidy: 1

            

cppcoreguidelines-avoid-non-const-global-variables

include/esys/repo/gitcmdline/git.h:127:17↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_detect_ssh_agent_done;
                ^
include/esys/repo/gitcmdline/git.h:128:17↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_ssh_agent_running;
                ^
include/esys/repo/gitmngr.h:68:22↗: warning: variable 'm_new_ptr_fct' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static NewPtrFct m_new_ptr_fct;
                     ^
include/esys/repo/libgit2/git.h:342:17↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_detect_ssh_agent_done;
                ^
include/esys/repo/libgit2/git.h:343:17↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_ssh_agent_running;
                ^
include/esys/repo/libgit2/git.h:344:17↗: warning: variable 's_exec_probe_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_exec_probe_done;
                ^
include/esys/repo/libgit2/git.h:345:17↗: warning: variable 's_exec_available' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static bool s_exec_available;
                ^
include/esys/repo/libgit2/git.h:346:16↗: warning: variable 's_libssh2_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static int s_libssh2_supported; //!< -1 unknown, 0 no, 1 yes
               ^
include/esys/repo/libgit2/git.h:347:16↗: warning: variable 's_exec_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static int s_exec_supported;    //!< -1 unknown, 0 no, 1 yes
               ^
include/esys/repo/libssh2/ssh.h:80:24↗: warning: variable 's_dflt_agent_identity_path' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static std::string s_dflt_agent_identity_path;
                       ^
src/esys/repo/gitcmdline/git_cmdline.cpp:125:11↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_detect_ssh_agent_done = false;
          ^
src/esys/repo/gitcmdline/git_cmdline.cpp:126:11↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_ssh_agent_running = false;
          ^
src/esys/repo/gitcmdline/git_cmdline.cpp:140:17↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (m_open) close();
                ^~~~~
src/esys/repo/githelper.cpp:204:21↗: warning: variable 'g_phase_timing_override' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::optional<bool> g_phase_timing_override;
                    ^
src/esys/repo/githelper.cpp:205:21↗: warning: variable 'g_phase_timing_env_cached' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::optional<bool> g_phase_timing_env_cached;
                    ^
src/esys/repo/githelper.cpp:849:34↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (m_git_helper != nullptr) m_git_helper->close(log::Level::DEBUG);
                                 ^~~~~~~~~~~~~~~~~~~
src/esys/repo/gitmngr.cpp:30:29↗: warning: variable 'm_new_ptr_fct' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
GitMngr::NewPtrFct GitMngr::m_new_ptr_fct = nullptr;
                            ^
src/esys/repo/grepo/folder_grepo.cpp:63:43↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (data->get_includes().size() != 1) ESYSREPO_RESULT(ResultCode::GREPO_FOLDER_NO_INCLUDE, path.string());
                                          ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/git_libgit2.cpp:34:11↗: warning: variable 's_detect_ssh_agent_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_detect_ssh_agent_done = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:35:11↗: warning: variable 's_ssh_agent_running' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_ssh_agent_running = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:36:11↗: warning: variable 's_exec_probe_done' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_exec_probe_done = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:37:11↗: warning: variable 's_exec_available' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
bool Git::s_exec_available = false;
          ^
src/esys/repo/libgit2/git_libgit2.cpp:38:10↗: warning: variable 's_libssh2_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
int Git::s_libssh2_supported = -1;
         ^
src/esys/repo/libgit2/git_libgit2.cpp:39:10↗: warning: variable 's_exec_supported' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
int Git::s_exec_supported = -1;
         ^
src/esys/repo/libgit2/gitimpl.h:161:37↗: warning: variable 's_libgt2' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static std::unique_ptr<LibGit2> s_libgt2;
                                    ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:47:35↗: warning: variable 's_libgt2' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::unique_ptr<LibGit2> GitImpl::s_libgt2 = nullptr;
                                  ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:344:13↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
            check_error(result, ""); //! \TODO why??
            ^~~~~~~~~~~ ~~~~~~~~~~
src/esys/repo/libssh2/ssh_libssh2.cpp:31:18↗: warning: variable 's_dflt_agent_identity_path' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::string SSH::s_dflt_agent_identity_path;
                 ^
src/esys/repo/libssh2/sshimpl.h:81:41↗: warning: variable 's_init_release' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
    static std::unique_ptr<InitRelease> s_init_release;
                                        ^
src/esys/repo/libssh2/sshimpl_libssh2.cpp:27:48↗: warning: variable 's_init_release' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::unique_ptr<SSHImpl::InitRelease> SSHImpl::s_init_release;
                                               ^
src/esys/repo/result.cpp:24:16↗: warning: variable 'OK' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
Result Result::OK;
               ^
src/esys/repo/resultcode.cpp:26:17↗: warning: variable 's_cur_id' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
int ResultCode::s_cur_id = -1;
                ^
src/esys/repo/resultcode.cpp:27:40↗: warning: variable 's_map' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::map<int, std::string> ResultCode::s_map;
                                       ^
src/esys/repo/resultcode.cpp:28:30↗: warning: variable 's_ints' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
std::vector<int> ResultCode::s_ints;
                             ^
src/esys/repo/resultcode.cpp:114:20↗: warning: variable 'OK' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(OK, 0);
                   ^
src/esys/repo/resultcode.cpp:115:20↗: warning: variable 'GENERIC_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GENERIC_ERROR);
                   ^
src/esys/repo/resultcode.cpp:116:20↗: warning: variable 'ERROR_OPENING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(ERROR_OPENING_FILE);
                   ^
src/esys/repo/resultcode.cpp:117:20↗: warning: variable 'PATH_NOT_EXISTING' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(PATH_NOT_EXISTING);
                   ^
src/esys/repo/resultcode.cpp:118:20↗: warning: variable 'EMPTY_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(EMPTY_PATH);
                   ^
src/esys/repo/resultcode.cpp:119:20↗: warning: variable 'FILE_NOT_EXISTING' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FILE_NOT_EXISTING);
                   ^
src/esys/repo/resultcode.cpp:120:20↗: warning: variable 'INTERNAL_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(INTERNAL_ERROR);
                   ^
src/esys/repo/resultcode.cpp:121:20↗: warning: variable 'NOT_IMPLEMENTED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(NOT_IMPLEMENTED);
                   ^
src/esys/repo/resultcode.cpp:122:20↗: warning: variable 'FOLDER_CREATION_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FOLDER_CREATION_ERROR);
                   ^
src/esys/repo/resultcode.cpp:123:20↗: warning: variable 'FAILED_TO_COPY' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FAILED_TO_COPY);
                   ^
src/esys/repo/resultcode.cpp:124:20↗: warning: variable 'FAILED_TO_REMOVE_ALL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FAILED_TO_REMOVE_ALL);
                   ^
src/esys/repo/resultcode.cpp:125:20↗: warning: variable 'RAW_INT_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(RAW_INT_ERROR);
                   ^
src/esys/repo/resultcode.cpp:126:20↗: warning: variable 'FOLDER_ALREADY_EXISTS' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(FOLDER_ALREADY_EXISTS);
                   ^
src/esys/repo/resultcode.cpp:127:20↗: warning: variable 'MANIFEST_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:128:20↗: warning: variable 'CONFIG_FOLDER_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CONFIG_FOLDER_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:129:20↗: warning: variable 'GIT_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:130:20↗: warning: variable 'JOB_COUNT_NEGATIVE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(JOB_COUNT_NEGATIVE);
                   ^
src/esys/repo/resultcode.cpp:131:20↗: warning: variable 'ERROR_VECTOR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(ERROR_VECTOR);
                   ^
src/esys/repo/resultcode.cpp:132:20↗: warning: variable 'NO_AUTHOR_GIVEN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(NO_AUTHOR_GIVEN);
                   ^
src/esys/repo/resultcode.cpp:134:20↗: warning: variable 'CFGFILE_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_ERROR_PARSING_FILE, -100);
                   ^
src/esys/repo/resultcode.cpp:135:20↗: warning: variable 'CFGFILE_NO_MANIFEST_TYPE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_NO_MANIFEST_TYPE);
                   ^
src/esys/repo/resultcode.cpp:136:20↗: warning: variable 'CFGFILE_UNKNOWN_MANIFEST_TYPE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_UNKNOWN_MANIFEST_TYPE);
                   ^
src/esys/repo/resultcode.cpp:137:20↗: warning: variable 'CFGFILE_NO_MANIFEST_URL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_NO_MANIFEST_URL);
                   ^
src/esys/repo/resultcode.cpp:138:20↗: warning: variable 'CFGFILE_UNKNOWN_MANIFEST_KIND' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_UNKNOWN_MANIFEST_KIND);
                   ^
src/esys/repo/resultcode.cpp:139:20↗: warning: variable 'CFGFILE_UNKNOWN_MANIFEST_FORMAT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CFGFILE_UNKNOWN_MANIFEST_FORMAT);
                   ^
src/esys/repo/resultcode.cpp:141:20↗: warning: variable 'MANIFEST_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_ERROR_PARSING_FILE, -200);
                   ^
src/esys/repo/resultcode.cpp:142:20↗: warning: variable 'MANIFEST_NO_LOCATIONS_DEFINED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_NO_LOCATIONS_DEFINED);
                   ^
src/esys/repo/resultcode.cpp:143:20↗: warning: variable 'MANIFEST_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:144:20↗: warning: variable 'MANIFEST_ATTRIBUTE_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_ATTRIBUTE_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:145:20↗: warning: variable 'MANIFEST_INCORRECT_ATTRIBUTE_VALUE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_INCORRECT_ATTRIBUTE_VALUE);
                   ^
src/esys/repo/resultcode.cpp:146:20↗: warning: variable 'MANIFEST_NO_DEFAULT_LOCATION' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_NO_DEFAULT_LOCATION);
                   ^
src/esys/repo/resultcode.cpp:147:20↗: warning: variable 'MANIFEST_TYPE_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_TYPE_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:148:20↗: warning: variable 'MANIFEST_KIND_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_KIND_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:149:20↗: warning: variable 'MANIFEST_FORMAT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FORMAT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:150:20↗: warning: variable 'MANIFEST_LOCATION_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_LOCATION_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:151:20↗: warning: variable 'MANIFEST_LOCATION_WITHOUT_ADDRESS' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_LOCATION_WITHOUT_ADDRESS);
                   ^
src/esys/repo/resultcode.cpp:152:20↗: warning: variable 'MANIFEST_REPOSITORY_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPOSITORY_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:153:20↗: warning: variable 'MANIFEST_REPOSITORY_WITHOUT_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPOSITORY_WITHOUT_PATH);
                   ^
src/esys/repo/resultcode.cpp:154:20↗: warning: variable 'MANIFEST_GROUP_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_GROUP_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:155:20↗: warning: variable 'MANIFEST_GROUP_REPO_WITHOUT_NAME' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_GROUP_REPO_WITHOUT_NAME);
                   ^
src/esys/repo/resultcode.cpp:156:20↗: warning: variable 'MANIFEST_GROUP_REPO_WITHOUT_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_GROUP_REPO_WITHOUT_PATH);
                   ^
src/esys/repo/resultcode.cpp:157:20↗: warning: variable 'MANIFEST_REPO_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPO_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:158:20↗: warning: variable 'MANIFEST_FILE_EXT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FILE_EXT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:159:20↗: warning: variable 'MANIFEST_FAILED_TO_DETECT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FAILED_TO_DETECT);
                   ^
src/esys/repo/resultcode.cpp:160:20↗: warning: variable 'MANIFEST_XML_DATA_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_XML_DATA_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:161:20↗: warning: variable 'MANIFEST_REPOSITORY_WITHOUT_LOCATION' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_REPOSITORY_WITHOUT_LOCATION);
                   ^
src/esys/repo/resultcode.cpp:162:20↗: warning: variable 'MANIFEST_FORMAT_NOT_SET' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MANIFEST_FORMAT_NOT_SET);
                   ^
src/esys/repo/resultcode.cpp:164:20↗: warning: variable 'GREPO_FOLDER_NO_INCLUDE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GREPO_FOLDER_NO_INCLUDE, -300);
                   ^
src/esys/repo/resultcode.cpp:166:20↗: warning: variable 'CMDINIT_NO_URL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDINIT_NO_URL, -400);
                   ^
src/esys/repo/resultcode.cpp:167:20↗: warning: variable 'CMDINIT_FAILED_FETCH_UNKNOWN_MANIFEST' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDINIT_FAILED_FETCH_UNKNOWN_MANIFEST);
                   ^
src/esys/repo/resultcode.cpp:169:20↗: warning: variable 'GIT_GENERIC_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_GENERIC_ERROR, -500);
                   ^
src/esys/repo/resultcode.cpp:170:20↗: warning: variable 'GIT_UNKNOWN_PROTOCOL' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_UNKNOWN_PROTOCOL);
                   ^
src/esys/repo/resultcode.cpp:171:20↗: warning: variable 'GIT_RAW_INT_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_RAW_INT_ERROR);
                   ^
src/esys/repo/resultcode.cpp:172:20↗: warning: variable 'GIT_ERROR_OPENING_REPO' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_ERROR_OPENING_REPO);
                   ^
src/esys/repo/resultcode.cpp:173:20↗: warning: variable 'GIT_RESET_TYPE_NOT_SET' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_RESET_TYPE_NOT_SET);
                   ^
src/esys/repo/resultcode.cpp:174:20↗: warning: variable 'GIT_RESET_TYPE_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_RESET_TYPE_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:175:20↗: warning: variable 'GIT_NO_BRANCH_FOUND' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_NO_BRANCH_FOUND);
                   ^
src/esys/repo/resultcode.cpp:176:20↗: warning: variable 'GIT_REPO_NOT_OPEN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_REPO_NOT_OPEN);
                   ^
src/esys/repo/resultcode.cpp:177:20↗: warning: variable 'GIT_FIND_REF_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_FIND_REF_FAILED);
                   ^
src/esys/repo/resultcode.cpp:178:20↗: warning: variable 'GIT_GET_HASH_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_GET_HASH_FAILED);
                   ^
src/esys/repo/resultcode.cpp:179:20↗: warning: variable 'GIT_NO_PARENT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_NO_PARENT);
                   ^
src/esys/repo/resultcode.cpp:180:20↗: warning: variable 'GIT_ALREADY_OPENED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_ALREADY_OPENED);
                   ^
src/esys/repo/resultcode.cpp:181:20↗: warning: variable 'GIT_SSH_BACKEND_NOT_SUPPORTED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(GIT_SSH_BACKEND_NOT_SUPPORTED);
                   ^
src/esys/repo/resultcode.cpp:183:20↗: warning: variable 'CMD_INCORRECT_PARAMETERS_IN_CONTEXT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_INCORRECT_PARAMETERS_IN_CONTEXT, -600);
                   ^
src/esys/repo/resultcode.cpp:184:20↗: warning: variable 'CMD_INCORRECT_PARAMETERS_COMBINATION' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_INCORRECT_PARAMETERS_COMBINATION);
                   ^
src/esys/repo/resultcode.cpp:185:20↗: warning: variable 'CMD_MISSING_PARAMETERS' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_MISSING_PARAMETERS);
                   ^
src/esys/repo/resultcode.cpp:186:20↗: warning: variable 'CMD_GENERIC_RAW_ERROR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GENERIC_RAW_ERROR);
                   ^
src/esys/repo/resultcode.cpp:187:20↗: warning: variable 'CMD_NO_ESYSREPO_FOLDER_FOUND' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_NO_ESYSREPO_FOLDER_FOUND);
                   ^
src/esys/repo/resultcode.cpp:188:20↗: warning: variable 'CMD_CONFIG_FOLDER_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_CONFIG_FOLDER_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:189:20↗: warning: variable 'CMD_GIT_IS_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_IS_NULLPTR);
                   ^
src/esys/repo/resultcode.cpp:190:20↗: warning: variable 'CMD_GIT_IS_NOT_OPENED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_IS_NOT_OPENED);
                   ^
src/esys/repo/resultcode.cpp:191:20↗: warning: variable 'CMD_GIT_OPEN_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_OPEN_FAILED);
                   ^
src/esys/repo/resultcode.cpp:192:20↗: warning: variable 'CMD_GIT_IS_DIRTY_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_IS_DIRTY_FAILED);
                   ^
src/esys/repo/resultcode.cpp:193:20↗: warning: variable 'CMD_GIT_FETCH_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_FETCH_FAILED);
                   ^
src/esys/repo/resultcode.cpp:194:20↗: warning: variable 'CMD_GIT_GET_HEAD_FAILED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_GET_HEAD_FAILED);
                   ^
src/esys/repo/resultcode.cpp:195:20↗: warning: variable 'CMD_GIT_MORE_THAN_ONE_COMMIT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_GIT_MORE_THAN_ONE_COMMIT);
                   ^
src/esys/repo/resultcode.cpp:196:20↗: warning: variable 'CMD_WORKSPACE_PATH_IS_EMPTY' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMD_WORKSPACE_PATH_IS_EMPTY);
                   ^
src/esys/repo/resultcode.cpp:198:20↗: warning: variable 'CMDSYNC_ABORTED_FOUND_CHANGES' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDSYNC_ABORTED_FOUND_CHANGES, -700);
                   ^
src/esys/repo/resultcode.cpp:199:20↗: warning: variable 'CMDSYNC_GIT_CAN_NOT_BE_FAST_FORWARDED' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(CMDSYNC_GIT_CAN_NOT_BE_FAST_FORWARDED);
                   ^
src/esys/repo/resultcode.cpp:201:20↗: warning: variable 'RUNTASKS_NO_TASK' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(RUNTASKS_NO_TASK, -800);
                   ^
src/esys/repo/resultcode.cpp:203:20↗: warning: variable 'DIRECTORY_XML_DATA_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_DATA_NULLPTR, -900);
                   ^
src/esys/repo/resultcode.cpp:204:20↗: warning: variable 'DIRECTORY_XML_ERROR_PARSING_STREAM' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_ERROR_PARSING_STREAM);
                   ^
src/esys/repo/resultcode.cpp:205:20↗: warning: variable 'DIRECTORY_XML_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_ERROR_PARSING_FILE);
                   ^
src/esys/repo/resultcode.cpp:206:20↗: warning: variable 'DIRECTORY_XML_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:207:20↗: warning: variable 'DIRECTORY_XML_MISSING_ATTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_MISSING_ATTR);
                   ^
src/esys/repo/resultcode.cpp:208:20↗: warning: variable 'DIRECTORY_XML_UNKNOWN_URL_TYPE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(DIRECTORY_XML_UNKNOWN_URL_TYPE);
                   ^
src/esys/repo/resultcode.cpp:210:20↗: warning: variable 'MULTI_XML_CAPTURE_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_XML_CAPTURE_NULLPTR, -1000);
                   ^
src/esys/repo/resultcode.cpp:211:20↗: warning: variable 'MULTI_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:212:20↗: warning: variable 'MULTI_REPOSITORY_WITHOUT_PATH' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_REPOSITORY_WITHOUT_PATH);
                   ^
src/esys/repo/resultcode.cpp:213:20↗: warning: variable 'MULTI_REPOSITORY_WITHOUT_REV' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_REPOSITORY_WITHOUT_REV);
                   ^
src/esys/repo/resultcode.cpp:214:20↗: warning: variable 'MULTI_ERROR_PARSING_FILE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_ERROR_PARSING_FILE);
                   ^
src/esys/repo/resultcode.cpp:215:20↗: warning: variable 'MULTI_ERROR_PARSING_STREAM' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(MULTI_ERROR_PARSING_STREAM);
                   ^
src/esys/repo/resultcode.cpp:217:20↗: warning: variable 'USERCONFIG_XML_DATA_NULLPTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_DATA_NULLPTR, -1100);
                   ^
src/esys/repo/resultcode.cpp:218:20↗: warning: variable 'USERCONFIG_XML_ELEMENT_UNKNOWN' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_ELEMENT_UNKNOWN);
                   ^
src/esys/repo/resultcode.cpp:219:20↗: warning: variable 'USERCONFIG_XML_MISSING_ELEMENT' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_MISSING_ELEMENT);
                   ^
src/esys/repo/resultcode.cpp:220:20↗: warning: variable 'USERCONFIG_XML_MISSING_ATTR' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_MISSING_ATTR);
                   ^
src/esys/repo/resultcode.cpp:221:20↗: warning: variable 'USERCONFIG_XML_UNKNOWN_ATTR_VALUE' is non-const and globally accessible, consider making it const [cppcoreguidelines-avoid-non-const-global-variables]
DEFINE_RESULT_CODE(USERCONFIG_XML_UNKNOWN_ATTR_VALUE);
                   ^

            

cppcoreguidelines-c-copy-assignment-signature

src/esys/repo/libgit2/guard.h:50:5↗: warning: operator=() should return 'Guard&' [cppcoreguidelines-c-copy-assignment-signature]
    void operator=(const Guard &other);
    ^
src/esys/repo/libgit2/guard.h:94:1↗: warning: operator=() should return 'Guard&' [cppcoreguidelines-c-copy-assignment-signature]
template<typename T>
^

            

cppcoreguidelines-explicit-virtual-functions

include/esys/repo/git/noteid.h:38:5↗: warning: annotate this function with 'override' or (rarely) 'final' [cppcoreguidelines-explicit-virtual-functions,modernize-use-override]
    ~NoteId();
    ^
              override

            

cppcoreguidelines-init-variables

include/esys/repo/queuemt.h:210:10↗: warning: variable 'remove' is not initialized [cppcoreguidelines-init-variables]
    bool remove;
         ^
                = 0
src/esys/repo/configfileimpl.cpp:74:24↗: warning: variable 'kind' is not initialized [cppcoreguidelines-init-variables]
        manifest::Kind kind;
                       ^
src/esys/repo/configfileimpl.cpp:85:26↗: warning: variable 'format' is not initialized [cppcoreguidelines-init-variables]
        manifest::Format format;
                         ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:440:17↗: warning: variable 'commit_message' is not initialized [cppcoreguidelines-init-variables]
    const char *commit_message;
                ^
                               = nullptr
src/esys/repo/libgit2/gitimpl_libgit2.cpp:441:26↗: warning: variable 'commit_signature' is not initialized [cppcoreguidelines-init-variables]
    const git_signature *commit_signature;
                         ^
                                          = nullptr
src/esys/repo/libgit2/gitimpl_libgit2.cpp:442:16↗: warning: variable 'commit_time' is not initialized [cppcoreguidelines-init-variables]
    git_time_t commit_time;
               ^
                           = 0
src/esys/repo/manifest/format_manifest.cpp:59:12↗: warning: variable 'format' is not initialized [cppcoreguidelines-init-variables]
    Format format;
           ^
src/esys/repo/manifest/sync_manifest.cpp:173:30↗: warning: variable 'merge_analysis_result' is not initialized [cppcoreguidelines-init-variables]
    git::MergeAnalysisResult merge_analysis_result;
                             ^
src/esys/repo/manifest/syncrepo_manifest.cpp:443:30↗: warning: variable 'merge_analysis_result' is not initialized [cppcoreguidelines-init-variables]
    git::MergeAnalysisResult merge_analysis_result;
                             ^
src/esys/repo/manifest/xmlfileimpl_manifest.cpp:104:20↗: warning: variable 'kind' is not initialized [cppcoreguidelines-init-variables]
    manifest::Kind kind;
                   ^

            

cppcoreguidelines-macro-usage

include/esys/repo/git.h:23:9↗: warning: macro 'ESYSREPO_USE_LIBGIT2' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_USE_LIBGIT2 1
        ^
include/esys/repo/ssh.h:23:9↗: warning: macro 'ESYSREPO_USE_LIBSSH2' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_USE_LIBSSH2 1
        ^
include/esys/repo/version.h:24:9↗: warning: macro 'ESYSREPO_VERSION_NUM_DOT_STRING' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_VERSION_NUM_DOT_STRING "0.4.0"
        ^
include/esys/repo/version.h:25:9↗: warning: macro 'ESYSREPO_VERSION_NUM_STRING' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_VERSION_NUM_STRING "0400"
        ^
src/esys/repo/filesystem.cpp:31:9↗: warning: macro 'ESYSREPO_BOOST_FILESYSTEM_HAS_RECUR' used to declare a constant; consider using a 'constexpr' constant [cppcoreguidelines-macro-usage]
#define ESYSREPO_BOOST_FILESYSTEM_HAS_RECUR 1
        ^

            

cppcoreguidelines-narrowing-conversions

src/esys/repo/exe/cmdenv.cpp:56:26↗: warning: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [cppcoreguidelines-narrowing-conversions]
        oss << std::setw(max_name_size + 1) << std::left << item.get_name() << " = ";
                         ^
src/esys/repo/exe/cmdstatus.cpp:163:22↗: warning: narrowing conversion from 'std::size_t' (aka 'unsigned long') to signed type 'int' is implementation-defined [cppcoreguidelines-narrowing-conversions]
    oss << std::setw(get_start_print_branch()) << std::setfill(' ') << std::left << first_part;
                     ^

            

cppcoreguidelines-non-private-member-variables-in-classes

include/esys/repo/sshbase.h:78:25↗: warning: member variable 'm_agent_identity_path' has protected visibility [cppcoreguidelines-non-private-member-variables-in-classes]
    mutable std::string m_agent_identity_path;
                        ^
src/esys/repo/libgit2/guards.h:43:7↗: warning: member variable 'm_data' has protected visibility [cppcoreguidelines-non-private-member-variables-in-classes]
    T m_data = {0};
      ^

            

cppcoreguidelines-prefer-member-initializer

include/esys/repo/manifest/task_t.h:79:5↗: warning: 'm_fct' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
    m_fct = [obj, raw_fct, args...] { return (obj.get()->*raw_fct)(args...); };
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/esys/repo/manifest/task_t.h:91:5↗: warning: 'm_fct' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
    m_fct = [obj, raw_fct, repo, args...] { return (obj.get()->*raw_fct)(repo, args...); };
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libssh2/sshimpl.h:60:13↗: warning: 'm_result' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
            m_result = libssh2_init(0);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libssh2/sshimpl.h:61:13↗: warning: 'm_init' should be initialized in a member initializer of the constructor [cppcoreguidelines-prefer-member-initializer]
            m_init = true;
            ^~~~~~~~~~~~~~

            

cppcoreguidelines-pro-bounds-constant-array-index

src/esys/repo/libgit2/notes_libgit2.cpp:136:13↗: warning: do not use array subscript when the index is not an integer constant expression [cppcoreguidelines-pro-bounds-constant-array-index]
        if (lhs.id[idx] < rhs.id[idx]) return true;
            ^
src/esys/repo/libgit2/notes_libgit2.cpp:136:27↗: warning: do not use array subscript when the index is not an integer constant expression [cppcoreguidelines-pro-bounds-constant-array-index]
        if (lhs.id[idx] < rhs.id[idx]) return true;
                          ^

            

cppcoreguidelines-pro-type-cstyle-cast

src/esys/repo/libgit2/gitimpl_libgit2.cpp:411:30↗: warning: do not use C-style cast to convert between unrelated types [cppcoreguidelines-pro-type-cstyle-cast]
    result = git_object_peel((git_object **)tree.get_p(), obj.get(), GIT_OBJECT_TREE);
                             ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:2074:21↗: warning: do not use C-style cast to cast away constness [cppcoreguidelines-pro-type-cstyle-cast]
    char *refspec = (char *)refspec_str.c_str();
                    ^
src/esys/repo/libgit2/gitimpl_libgit2.cpp:2104:21↗: warning: do not use C-style cast to cast away constness [cppcoreguidelines-pro-type-cstyle-cast]
    char *refspec = (char *)note_ref.c_str();
                    ^

            

cppcoreguidelines-pro-type-member-init

src/esys/repo/exe/cmdmulti.cpp:33:1↗: warning: constructor does not initialize these fields: m_task [cppcoreguidelines-pro-type-member-init]
CmdMulti::CmdMulti()
^
src/esys/repo/exe/cmdmulti.cpp:366:29↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
        if (result.error()) ESYSREPO_RESULT(result);
                            ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/notes_libgit2.cpp:92:1↗: warning: constructor does not initialize these fields: m_note_oid, m_comment_oid [cppcoreguidelines-pro-type-member-init]
Notes::OIDCommitMapNoteItem::OIDCommitMapNoteItem() = default;
^

            

cppcoreguidelines-special-member-functions

include/esys/repo/cli/app.h:37:20↗: warning: class 'App' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API App : public AppBase
                   ^
include/esys/repo/cli/appbase.h:52:20↗: warning: class 'AppBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API AppBase : public esys::log::User
                   ^
include/esys/repo/cli/cmd.h:42:20↗: warning: class 'Cmd' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Cmd : public esys::log::User
                   ^
include/esys/repo/cli/cmd_t.h:29:7↗: warning: class 'Cmd_t' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class Cmd_t : public Cmd
      ^
include/esys/repo/cli/cmdenv.h:27:20↗: warning: class 'CmdEnv' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdEnv : public Cmd_t<exe::CmdEnv>
                   ^
include/esys/repo/cli/cmdhelp.h:27:20↗: warning: class 'CmdHelp' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdHelp : public Cmd_t<exe::CmdHelp>
                   ^
include/esys/repo/cli/cmdinfo.h:27:20↗: warning: class 'CmdInfo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInfo : public Cmd_t<exe::CmdInfo>
                   ^
include/esys/repo/cli/cmdinit.h:27:20↗: warning: class 'CmdInit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInit : public Cmd_t<exe::CmdInit>
                   ^
include/esys/repo/cli/cmdlist.h:27:20↗: warning: class 'CmdList' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdList : public Cmd_t<exe::CmdList>
                   ^
include/esys/repo/cli/cmdmanifest.h:27:20↗: warning: class 'CmdManifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdManifest : public Cmd_t<exe::CmdManifest>
                   ^
include/esys/repo/cli/cmdmulti.h:27:20↗: warning: class 'CmdMulti' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdMulti : public Cmd_t<exe::CmdMulti>
                   ^
include/esys/repo/cli/cmdstatus.h:27:20↗: warning: class 'CmdStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdStatus : public Cmd_t<exe::CmdStatus>
                   ^
include/esys/repo/cli/cmdsync.h:27:20↗: warning: class 'CmdSync' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdSync : public Cmd_t<exe::CmdSync>
                   ^
include/esys/repo/cli/cmdversion.h:27:20↗: warning: class 'CmdVersion' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdVersion : public Cmd_t<exe::CmdVersion>
                   ^
include/esys/repo/config.h:37:20↗: warning: class 'Config' defines a non-default destructor and a copy assignment operator but does not define a copy constructor, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Config
                   ^
include/esys/repo/configfile.h:38:20↗: warning: class 'ConfigFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ConfigFile
                   ^
include/esys/repo/configfolder.h:40:20↗: warning: class 'ConfigFolder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ConfigFolder : public log::User
                   ^
include/esys/repo/exe/cmd.h:57:20↗: warning: class 'Cmd' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Cmd : public log::User
                   ^
include/esys/repo/exe/cmdenv.h:32:20↗: warning: class 'CmdEnv' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdEnv : public Cmd
                   ^
include/esys/repo/exe/cmdhelp.h:26:20↗: warning: class 'CmdHelp' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdHelp : public Cmd
                   ^
include/esys/repo/exe/cmdinfo.h:34:20↗: warning: class 'CmdInfo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInfo : public Cmd
                   ^
include/esys/repo/exe/cmdinit.h:39:20↗: warning: class 'CmdInit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdInit : public Cmd
                   ^
include/esys/repo/exe/cmdlist.h:32:20↗: warning: class 'CmdList' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdList : public Cmd
                   ^
include/esys/repo/exe/cmdmanifest.h:34:20↗: warning: class 'CmdManifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdManifest : public Cmd
                   ^
include/esys/repo/exe/cmdmulti.h:38:20↗: warning: class 'CmdMulti' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdMulti : public Cmd
                   ^
include/esys/repo/exe/cmdstatus.h:35:20↗: warning: class 'CmdStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdStatus : public Cmd
                   ^
include/esys/repo/exe/cmdsync.h:36:20↗: warning: class 'CmdSync' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdSync : public Cmd
                   ^
include/esys/repo/exe/cmdversion.h:32:20↗: warning: class 'CmdVersion' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CmdVersion : public Cmd
                   ^
include/esys/repo/git/branch.h:33:20↗: warning: class 'Branch' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Branch
                   ^
include/esys/repo/git/branches.h:34:20↗: warning: class 'Branches' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Branches
                   ^
include/esys/repo/git/commit.h:39:20↗: warning: class 'Commit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Commit
                   ^
include/esys/repo/git/commithash.h:32:20↗: warning: class 'CommitHash' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API CommitHash
                   ^
include/esys/repo/git/diff.h:35:20↗: warning: class 'Diff' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Diff
                   ^
include/esys/repo/git/diffdelta.h:42:20↗: warning: class 'DiffDelta' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DiffDelta
                   ^
include/esys/repo/git/difffile.h:35:20↗: warning: class 'DiffFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DiffFile
                   ^
include/esys/repo/git/filestatus.h:33:20↗: warning: class 'FileStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API FileStatus
                   ^
include/esys/repo/git/note.h:33:20↗: warning: class 'Note' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Note
                   ^
include/esys/repo/git/noteid.h:31:20↗: warning: class 'NoteId' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API NoteId : public CommitHash
                   ^
include/esys/repo/git/person.h:32:20↗: warning: class 'Person' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Person
                   ^
include/esys/repo/git/remote.h:33:20↗: warning: class 'Remote' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Remote
                   ^
include/esys/repo/git/repostatus.h:38:20↗: warning: class 'RepoStatus' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API RepoStatus
                   ^
include/esys/repo/git/signature.h:34:20↗: warning: class 'Signature' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Signature: public Person
                   ^
include/esys/repo/git/status.h:35:20↗: warning: class 'Status' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Status
                   ^
include/esys/repo/git/updatetip.h:39:20↗: warning: class 'UpdateTip' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UpdateTip
                   ^
include/esys/repo/git/url.h:30:20↗: warning: class 'URL' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API URL
                   ^
include/esys/repo/git/walkcommit.h:38:20↗: warning: class 'WalkCommit' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API WalkCommit
                   ^
include/esys/repo/gitbase.h:60:20↗: warning: class 'GitBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitBase : public log::User
                   ^
include/esys/repo/gitcmdline/git.h:36:20↗: warning: class 'Git' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Git : public GitBase
                   ^
include/esys/repo/githelper.h:43:20↗: warning: class 'GitHelper' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitHelper : public log::User
                   ^
include/esys/repo/githelper.h:330:24↗: warning: class 'AutoClose' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API AutoClose
                       ^
include/esys/repo/gitmngr.h:40:20↗: warning: class 'GitMngr' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitMngr : public log::User
                   ^
include/esys/repo/grepo/folder.h:36:20↗: warning: class 'Folder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Folder
                   ^
include/esys/repo/grepo/manifest.h:38:20↗: warning: class 'Manifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Manifest : public manifest::FileBase
                   ^
include/esys/repo/hybrid/git.h:44:20↗: warning: class 'Git' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Git : public GitBase
                   ^
include/esys/repo/libgit2/git.h:40:20↗: warning: class 'Git' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Git : public GitBase
                   ^
include/esys/repo/libssh2/ssh.h:42:20↗: warning: class 'SSH' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SSH : public SSHBase
                   ^
include/esys/repo/loadfolder.h:37:20↗: warning: class 'LoadFolder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoadFolder
                   ^
include/esys/repo/manifest.h:46:20↗: warning: class 'Manifest' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Manifest
                   ^
include/esys/repo/manifest/base.h:37:20↗: warning: class 'Base' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Base : public FileBase
                   ^
include/esys/repo/manifest/capture.h:33:20↗: warning: class 'Capture' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Capture
                   ^
include/esys/repo/manifest/capture.h:36:24↗: warning: class 'Item' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API Item
                       ^
include/esys/repo/manifest/detect.h:36:20↗: warning: class 'Detect' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Detect
                   ^
include/esys/repo/manifest/directories.h:39:20↗: warning: class 'Directories' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Directories
                   ^
include/esys/repo/manifest/directories.h:42:24↗: warning: class 'Item' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API Item : public Directory::Item
                       ^
include/esys/repo/manifest/directory.h:33:20↗: warning: class 'Directory' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Directory
                   ^
include/esys/repo/manifest/directory.h:36:24↗: warning: class 'Item' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class ESYSREPO_API Item
                       ^
include/esys/repo/manifest/directoryfilexml.h:35:20↗: warning: class 'DirectoryFileXML' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DirectoryFileXML
                   ^
include/esys/repo/manifest/directorymngr.h:32:20↗: warning: class 'DirectoryMngr' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DirectoryMngr
                   ^
include/esys/repo/manifest/file.h:38:20↗: warning: class 'File' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API File : public FileBase
                   ^
include/esys/repo/manifest/filebase.h:36:20↗: warning: class 'FileBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API FileBase
                   ^
include/esys/repo/manifest/fileerror.h:32:20↗: warning: class 'FileError' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API FileError
                   ^
include/esys/repo/manifest/group.h:39:20↗: warning: class 'Group' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Group : public std::enable_shared_from_this<Group>
                   ^
include/esys/repo/manifest/groups.h:40:20↗: warning: class 'Groups' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Groups : public std::enable_shared_from_this<Groups>
                   ^
include/esys/repo/manifest/include.h:34:20↗: warning: class 'Include' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Include
                   ^
include/esys/repo/manifest/jsonfile.h:38:20↗: warning: class 'JSONFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API JSONFile : public Base
                   ^
include/esys/repo/manifest/jsonfile.h:51:9↗: error: virtual function 'read' has a different return type ('int') than the function it overrides (which has return type 'esys::repo::Result') [clang-diagnostic-error]
    int read(const std::string &path) override;
    ~~~ ^
include/esys/repo/manifest/filebase.h:62:20↗: note: overridden virtual function is here
    virtual Result read(const std::string &path) = 0;
            ~~~~~~ ^
include/esys/repo/manifest/jsonfile.h:57:9↗: error: virtual function 'write' has a different return type ('int') than the function it overrides (which has return type 'esys::repo::Result') [clang-diagnostic-error]
    int write(const std::string &path) override;
    ~~~ ^
include/esys/repo/manifest/filebase.h:69:20↗: note: overridden virtual function is here
    virtual Result write(const std::string &path) = 0;
            ~~~~~~ ^
include/esys/repo/manifest/jsonfile.h:63:9↗: error: virtual function 'write' has a different return type ('int') than the function it overrides (which has return type 'esys::repo::Result') [clang-diagnostic-error]
    int write(std::ostream &os) override;
    ~~~ ^
include/esys/repo/manifest/filebase.h:75:20↗: note: overridden virtual function is here
    virtual Result write(std::ostream &os) = 0;
            ~~~~~~ ^
include/esys/repo/manifest/loader.h:37:20↗: warning: class 'Loader' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Loader : public LoaderBase
                   ^
include/esys/repo/manifest/loaderbase.h:42:20↗: warning: class 'LoaderBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderBase : public log::User
                   ^
include/esys/repo/manifest/loaderesysrepo.h:35:20↗: warning: class 'LoaderESysRepo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderESysRepo : public LoaderBase
                   ^
include/esys/repo/manifest/loadergitsuper.h:35:20↗: warning: class 'LoaderGitSuper' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderGitSuper : public LoaderBase
                   ^
include/esys/repo/manifest/loadergrepo.h:35:20↗: warning: class 'LoaderGRepo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LoaderGRepo : public LoaderBase
                   ^
include/esys/repo/manifest/location.h:40:20↗: warning: class 'Location' defines a non-default destructor, a copy constructor and a move constructor but does not define a copy assignment operator or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Location : public std::enable_shared_from_this<Location>
                   ^
include/esys/repo/manifest/multifilebase.h:32:20↗: warning: class 'MultiFileBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API MultiFileBase
                   ^
include/esys/repo/manifest/multifilexml.h:33:20↗: warning: class 'MultiFileXML' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API MultiFileXML : public MultiFileBase
                   ^
include/esys/repo/manifest/repository.h:38:20↗: warning: class 'Repository' defines a non-default destructor, a copy constructor, a copy assignment operator and a move constructor but does not define a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Repository
                   ^
include/esys/repo/manifest/runtasks.h:48:20↗: warning: class 'RunTasks' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API RunTasks : public log::User
                   ^
include/esys/repo/manifest/runtasks.h:158:11↗: warning: class 'RemoveWorkerThreadGuard' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class RemoveWorkerThreadGuard
          ^
include/esys/repo/manifest/sync.h:41:20↗: warning: class 'Sync' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Sync : public log::User
                   ^
include/esys/repo/manifest/syncrepo.h:47:20↗: warning: class 'SyncRepo' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SyncRepo : public TaskBase, public log::User
                   ^
include/esys/repo/manifest/syncrepo.h:209:11↗: warning: class 'PhaseCapture' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class PhaseCapture
          ^
include/esys/repo/manifest/syncrepos.h:53:20↗: warning: class 'SyncRepos' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SyncRepos : public log::User
                   ^
include/esys/repo/manifest/task_t.h:38:7↗: warning: class 'Task_t' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class Task_t : public TaskBase
      ^
include/esys/repo/manifest/taskbase.h:46:20↗: warning: class 'TaskBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API TaskBase
                   ^
include/esys/repo/manifest/xmlfile.h:40:20↗: warning: class 'XMLFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API XMLFile : public Base
                   ^
include/esys/repo/manifestfilebase.h:38:20↗: warning: class 'ManifestFileBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ManifestFileBase
                   ^
include/esys/repo/progresscallback_t.h:33:7↗: warning: class 'ProgressCallback_t' defines a non-default destructor, a copy constructor, a copy assignment operator and a move constructor but does not define a move assignment operator [cppcoreguidelines-special-member-functions]
class ProgressCallback_t : public ProgressCallbackBase
      ^
include/esys/repo/progresscallbackbase.h:31:20↗: warning: class 'ProgressCallbackBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ProgressCallbackBase
                   ^
include/esys/repo/queuemt.h:37:7↗: warning: class 'QueueMT' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class QueueMT
      ^
include/esys/repo/sshbase.h:37:20↗: warning: class 'SSHBase' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SSHBase : public log::User
                   ^
include/esys/repo/userconfig.h:35:20↗: warning: class 'UserConfig' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserConfig
                   ^
include/esys/repo/userconfigfile.h:35:20↗: warning: class 'UserConfigFile' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserConfigFile
                   ^
include/esys/repo/userfolder.h:40:20↗: warning: class 'UserFolder' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserFolder : public log::User
                   ^
include/esys/repo/workspace.h:38:20↗: warning: class 'Workspace' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API Workspace : public log::User
                   ^
src/esys/repo/configfileimpl.h:34:20↗: warning: class 'ConfigFileImpl' defines a non-default destructor, a copy constructor, a copy assignment operator and a move constructor but does not define a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ConfigFileImpl
                   ^
src/esys/repo/githelper.cpp:40:7↗: warning: class 'PhaseTimer' defines a non-default destructor, a copy constructor and a copy assignment operator but does not define a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class PhaseTimer
      ^
src/esys/repo/grepo/manifestimpl.h:38:20↗: warning: class 'ManifestImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API ManifestImpl
                   ^
src/esys/repo/libgit2/gitimpl.h:38:20↗: warning: class 'GitImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API GitImpl
                   ^
src/esys/repo/libgit2/guard.h:30:7↗: warning: class 'Guard' defines a non-default destructor and a copy assignment operator but does not define a copy constructor, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class Guard
      ^
src/esys/repo/libgit2/guards.h:33:7↗: warning: class 'GuardS' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class GuardS
      ^
src/esys/repo/libgit2/libgit2.h:31:20↗: warning: class 'LibGit2' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API LibGit2
                   ^
src/esys/repo/libssh2/sshimpl.h:41:20↗: warning: class 'SSHImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API SSHImpl
                   ^
src/esys/repo/libssh2/sshimpl.h:55:11↗: warning: class 'InitRelease' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
    class InitRelease
          ^
src/esys/repo/manifest/directoryfilexmlimpl.h:35:20↗: warning: class 'DirectoryFileXMLImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API DirectoryFileXMLImpl
                   ^
src/esys/repo/manifest/multifilexmlimpl.h:31:20↗: warning: class 'MultiFileXMLImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API MultiFileXMLImpl
                   ^
src/esys/repo/manifest/xmlfileimpl.h:38:20↗: warning: class 'XMLFileImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API XMLFileImpl
                   ^
src/esys/repo/userconfigfileimpl.h:31:20↗: warning: class 'UserConfigFileImpl' defines a non-default destructor but does not define a copy constructor, a copy assignment operator, a move constructor or a move assignment operator [cppcoreguidelines-special-member-functions]
class ESYSREPO_API UserConfigFileImpl
                   ^

            

modernize-concat-nested-namespaces

include/esys/repo/configfile.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/filesystem.h:24:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/git/diffdelta.h:30:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/diffdeltatype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/fetchstep.h:24:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/statussubtype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/statustype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/updatetip.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/git/updatetiptype.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::git
include/esys/repo/gitmngr.h:30:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/libgit2/git.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys::repo
^~~~~~~~~~~~~~~~~~~~
namespace esys::repo::libgit2
include/esys/repo/libssh2/ssh.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libssh2
include/esys/repo/manifest.h:37:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/manifest/base.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/file.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/groups.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/jsonfile.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/kind.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loader.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loaderbase.h:30:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loaderesysrepo.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loadergitsuper.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/loadergrepo.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/runtasks.h:36:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/sync.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/syncrepo.h:35:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/task_t.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/taskbase.h:34:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/workerthread.h:24:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifest/xmlfile.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest
include/esys/repo/manifestfilebase.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/progresscallback_t.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/progresscallbackbase.h:25:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/queuemt.h:26:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
include/esys/repo/sshbase.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
src/esys/repo/configfileimpl.h:28:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo
src/esys/repo/grepo/manifestimpl.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::grepo
src/esys/repo/libgit2/guardassign.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/guards.h:23:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/guardsrelease.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libgit2/libgit2.h:22:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libgit2
src/esys/repo/libssh2/sshimpl.h:27:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::libssh2
src/esys/repo/manifest/xmlfileimpl.h:29:1↗: warning: nested namespaces can be concatenated [modernize-concat-nested-namespaces]
namespace esys
^~~~~~~~~~~~~~
namespace esys::repo::manifest

            

modernize-deprecated-headers

src/esys/repo/version.cpp:21:10↗: warning: inclusion of deprecated C++ header 'string.h'; consider using 'cstring' instead [modernize-deprecated-headers]
#include <string.h>
         ^~~~~~~~~~
         <cstring>
src/esys/repo/version.cpp:22:10↗: warning: inclusion of deprecated C++ header 'stdlib.h'; consider using 'cstdlib' instead [modernize-deprecated-headers]
#include <stdlib.h>
         ^~~~~~~~~~
         <cstdlib>

            

modernize-return-braced-init-list

src/esys/repo/cli/appbase.cpp:600:44↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
    if (m_vm.count("subargs") == 0) return std::vector<std::string>();
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                           {}
src/esys/repo/cli/cmd_cli.cpp:262:44↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
    if (m_vm.count("subargs") == 0) return std::vector<std::string>();
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                           {}
src/esys/repo/gitcmdline/git_cmdline.cpp:147:70↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
        if (env[0] != '\0' && boost::filesystem::exists(env)) return std::string(env);
                                                                     ^
src/esys/repo/gitcmdline/git_cmdline.cpp:151:70↗: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
        if (env[0] != '\0' && boost::filesystem::exists(env)) return std::string(env);
                                                                     ^

            

modernize-use-auto

src/esys/repo/libgit2/gitimpl_libgit2.cpp:457:9↗: warning: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto]
        std::time_t commit_time_t = static_cast<std::time_t>(commit_time);
        ^~~~~~~~~~~
        auto
src/esys/repo/libgit2/gitimpl_libgit2.cpp:757:17↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
                check_error(result, "can't get the name of the branch"); //!  \TODO check if this is correct
                ^~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:761:37↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
                if (result_int < 0) check_error(result, "set branch upstream"); //!  \TODO check if this is correct
                                    ^~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:995:5↗: warning: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto]
    std::time_t commit_time_t = static_cast<std::time_t>(commit_time);
    ^~~~~~~~~~~
    auto
src/esys/repo/libgit2/gitimpl_libgit2.cpp:1132:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        handle_status_entry(repo_status, status_entry);
        ^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:1828:32↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (target_oid == nullptr) ESYSREPO_RESULT(ResultCode::GIT_GENERIC_ERROR);
                               ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/libgit2/gitimpl_libgit2.cpp:1887:26↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (result_int != 0) ESYSREPO_RESULT(ResultCode::INTERNAL_ERROR);
                         ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

            

modernize-use-emplace

src/esys/repo/manifest/runtasks_manifest.cpp:162:19↗: warning: use emplace_back instead of push_back [modernize-use-emplace]
        m_threads.push_back(std::thread(&RunTasks::worker_thread, this, worker));
                  ^~~~~~~~~~~~~~~~~~~~~~                                      ~
                  emplace_back(

            

modernize-use-equals-default

include/esys/repo/cli/cmd_t.h:76:13↗: warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
Cmd_t<CMD>::~Cmd_t()
            ^
include/esys/repo/manifest/task_t.h:95:26↗: warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
Task_t<OBJ, F, ARGS...>::~Task_t()
                         ^
include/esys/repo/progresscallback_t.h:93:26↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
ProgressCallback_t<OBJ>::ProgressCallback_t()
                         ^
include/esys/repo/progresscallback_t.h:105:26↗: warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
ProgressCallback_t<OBJ>::~ProgressCallback_t()
                         ^
include/esys/repo/queuemt.h:104:13↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
QueueMT<T>::QueueMT()
            ^
src/esys/repo/libgit2/guard.h:63:11↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
Guard<T>::Guard()
          ^
src/esys/repo/libgit2/guards.h:47:12↗: warning: use '= default' to define a trivial default constructor [modernize-use-equals-default]
GuardS<T>::GuardS()
           ^

            

modernize-use-nodiscard

include/esys/repo/cli/appbase.h:68:5↗: warning: function 'get_args' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_args() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:101:5↗: warning: function 'get_debug' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_debug() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:107:5↗: warning: function 'is_trace_to_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_trace_to_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:113:5↗: warning: function 'is_trace_to_console' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_trace_to_console() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:119:5↗: warning: function 'is_help' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_help() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:125:5↗: warning: function 'is_doc' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_doc() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:131:5↗: warning: function 'is_version' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_version() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:139:5↗: warning: function 'get_cmds' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<Cmd *> &get_cmds() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/appbase.h:222:5↗: warning: function 'get_version' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_version() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:61:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:68:5↗: warning: function 'get_description' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_description() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:107:5↗: warning: function 'get_args' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_args() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:219:5↗: warning: function 'get_user_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserFolder> get_user_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/cli/cmd.h:258:5↗: warning: function 'get_vm' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const po::variables_map &get_vm() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:56:5↗: warning: function 'get_manifest_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    manifest::Type get_manifest_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:68:5↗: warning: function 'get_manifest_kind' should be marked [[nodiscard]] [modernize-use-nodiscard]
    manifest::Kind get_manifest_kind() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:80:5↗: warning: function 'get_manifest_format' should be marked [[nodiscard]] [modernize-use-nodiscard]
    manifest::Format get_manifest_format() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:92:5↗: warning: function 'get_manifest_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:104:5↗: warning: function 'get_manifest_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/config.h:119:5↗: warning: function 'has_esysrepo_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool has_esysrepo_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfile.h:57:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfile.h:69:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfile.h:93:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const ConfigFileImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:59:5↗: warning: function 'get_workspace_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_workspace_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:84:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:90:5↗: warning: function 'get_temp_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_temp_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:96:5↗: warning: function 'get_config_file_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_config_file_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:102:5↗: warning: function 'get_manifest_repo_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_manifest_repo_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:108:5↗: warning: function 'get_manifest_rel_file_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_manifest_rel_file_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/configfolder.h:114:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:68:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:80:5↗: warning: function 'get_job_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_job_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:92:5↗: warning: function 'get_user_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserConfig> get_user_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:104:5↗: warning: function 'get_user_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserFolder> get_user_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:116:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:128:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:140:5↗: warning: function 'get_workspace_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_workspace_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:158:5↗: warning: function 'get_config_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<ConfigFolder> get_config_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:205:5↗: warning: function 'get_debug' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_debug() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:217:5↗: warning: function 'get_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:237:5↗: warning: function 'get_sub_args' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_sub_args() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:249:5↗: warning: function 'get_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:261:5↗: warning: function 'get_delta_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_delta_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:268:5↗: warning: function 'get_groups' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_groups() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:292:5↗: warning: function 'get_input_git_repo_paths' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_input_git_repo_paths() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:327:5↗: warning: function 'get_logger_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_logger_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:432:5↗: warning: function 'get_print_cmd_name_by_base' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_print_cmd_name_by_base() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmd.h:438:5↗: warning: function 'get_print_result_summary' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_print_result_summary() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:53:5↗: warning: function 'get_diff' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_diff() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:65:5↗: warning: function 'get_overview' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_overview() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:77:5↗: warning: function 'get_current_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_current_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinfo.h:89:5↗: warning: function 'get_local_only' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_local_only() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:58:5↗: warning: function 'get_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:70:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:82:5↗: warning: function 'get_manifest_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:94:5↗: warning: function 'get_project_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_project_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:106:5↗: warning: function 'get_google_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_google_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:118:5↗: warning: function 'get_git_super_project' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_git_super_project() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:218:5↗: warning: function 'get_directories' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<manifest::Directories> get_directories() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdinit.h:241:5↗: warning: function 'get_google_manifest_filename' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_google_manifest_filename() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:57:5↗: warning: function 'get_fullpath' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_fullpath() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:69:5↗: warning: function 'get_name_only' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_name_only() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:81:5↗: warning: function 'get_path_only' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_path_only() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:91:5↗: warning: function 'get_json' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_json() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdlist.h:97:5↗: warning: function 'get_json_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_json_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:58:9↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_name() const;
        ^
        [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:77:9↗: warning: function 'get_url_ssh' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_ssh() const;
        ^
        [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:84:9↗: warning: function 'get_url_https' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_https() const;
        ^
        [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:109:5↗: warning: function 'get_task' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Task get_task() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:116:5↗: warning: function 'get_task_add_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const TaskAddDir &get_task_add_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:123:5↗: warning: function 'get_task_del_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const TaskDelDir &get_task_del_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:130:5↗: warning: function 'get_dirs' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_dirs() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmanifest.h:137:5↗: warning: function 'get_output_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_output_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdmulti.h:66:5↗: warning: function 'get_task' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Task get_task() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:54:5↗: warning: function 'get_quiet' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_quiet() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:78:5↗: warning: function 'get_start_print_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_start_print_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdstatus.h:106:5↗: warning: function 'get_show_file_permission' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_show_file_permission() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:55:5↗: warning: function 'get_force' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_force() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:62:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:74:5↗: warning: function 'get_alt_address' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_alt_address() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:86:5↗: warning: function 'get_multi' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_multi() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:98:5↗: warning: function 'get_tui' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_tui() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:112:5↗: warning: function 'get_tui_demo' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_tui_demo() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdsync.h:131:5↗: warning: function 'get_git_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_git_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/exe/cmdversion.h:48:5↗: warning: function 'get_version' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_version() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/aheadbehind.h:49:5↗: warning: function 'get_ahead' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_ahead() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/aheadbehind.h:61:5↗: warning: function 'get_behind' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_behind() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:67:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:79:5↗: warning: function 'get_ref_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_ref_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:91:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    BranchType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:103:5↗: warning: function 'get_is_head' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_is_head() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:111:5↗: warning: function 'get_remote_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_remote_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:119:5↗: warning: function 'get_remote_branch_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_remote_branch_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:127:5↗: warning: function 'get_remote_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_remote_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branch.h:139:5↗: warning: function 'get_detached' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_detached() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branches.h:61:5↗: warning: function 'get_head' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Branch> get_head() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branches.h:67:5↗: warning: function 'size' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t size() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/branches.h:75:5↗: warning: function 'get' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Branch>> &get() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:61:5↗: warning: function 'get_hash' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const CommitHash &get_hash() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:79:5↗: warning: function 'get_message' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_message() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:91:5↗: warning: function 'get_summary' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_summary() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:103:5↗: warning: function 'get_body' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_body() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:115:5↗: warning: function 'get_author' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_author() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:127:5↗: warning: function 'get_email' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_email() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:139:5↗: warning: function 'get_date_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::chrono::system_clock::time_point &get_date_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:151:5↗: warning: function 'get_all_notes' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Note>> &get_all_notes() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:177:5↗: warning: function 'get_author_sign' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_author_sign() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commit.h:189:5↗: warning: function 'get_committer_sign' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_committer_sign() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/commithash.h:51:5↗: warning: function 'get_hash' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_hash() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:54:5↗: warning: function 'get_files_changed' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_files_changed() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:66:5↗: warning: function 'get_insertions' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_insertions() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:78:5↗: warning: function 'get_deletions' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_deletions() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diff.h:90:5↗: warning: function 'get_renames' should be marked [[nodiscard]] [modernize-use-nodiscard]
    unsigned int get_renames() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:61:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    DiffDeltaType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:73:5↗: warning: function 'get_similarity' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_similarity() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:85:5↗: warning: function 'get_file_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_file_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:88:5↗: warning: function 'get_old_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const DiffFile &get_old_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/diffdelta.h:91:5↗: warning: function 'get_new_file' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const DiffFile &get_new_file() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:50:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:58:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:71:5↗: warning: function 'get_size' should be marked [[nodiscard]] [modernize-use-nodiscard]
    uint64_t get_size() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/difffile.h:83:5↗: warning: function 'get_mode' should be marked [[nodiscard]] [modernize-use-nodiscard]
    FileMode get_mode() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:50:5↗: warning: function 'get_old_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_old_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:68:5↗: warning: function 'get_head_to_index' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Status> get_head_to_index() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:80:5↗: warning: function 'get_index_to_work_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Status> get_index_to_work_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:83:5↗: warning: function 'get_status' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_status() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/filestatus.h:93:5↗: warning: function 'is_equal' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_equal(const std::vector<std::shared_ptr<Status>> &left,
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:52:5↗: warning: function 'get_message' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_message() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:64:5↗: warning: function 'get_author' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_author() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:82:5↗: warning: function 'get_committer' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const Signature &get_committer() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/note.h:100:5↗: warning: function 'get_reference' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_reference() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/noteid.h:45:5↗: warning: function 'get_reference' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_reference() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/noteid.h:52:5↗: warning: function 'get_commit_hash' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const CommitHash &get_commit_hash() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/person.h:51:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/person.h:63:5↗: warning: function 'get_email' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_email() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:50:5↗: warning: function 'get_fetch_step' should be marked [[nodiscard]] [modernize-use-nodiscard]
    FetchStep get_fetch_step() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:63:5↗: warning: function 'get_percentage' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_percentage() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:76:5↗: warning: function 'get_started' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_started() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:89:5↗: warning: function 'get_done' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_done() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:106:5↗: warning: function 'get_total_objects' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_total_objects() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:109:5↗: warning: function 'get_received_objects' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_received_objects() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:112:5↗: warning: function 'get_indexed_objects' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_indexed_objects() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:115:5↗: warning: function 'get_total_deltas' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_total_deltas() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:118:5↗: warning: function 'get_indexed_deltas' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_indexed_deltas() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/progress.h:121:5↗: warning: function 'get_received_bytes' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::int64_t get_received_bytes() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/remote.h:52:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/remote.h:64:5↗: warning: function 'get_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:54:5↗: warning: function 'get_all' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_all() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:57:5↗: warning: function 'get_current' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_current() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:60:5↗: warning: function 'get_head_to_index' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_head_to_index() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:63:5↗: warning: function 'get_index_to_work_dir' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_index_to_work_dir() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:66:5↗: warning: function 'get_ignored' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_ignored() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:69:5↗: warning: function 'get_conflicted' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Status>> &get_conflicted() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:72:5↗: warning: function 'get_file_status' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<FileStatus>> &get_file_status() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:78:5↗: warning: function 'get_map_file_status' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::map<std::string, std::shared_ptr<FileStatus>> &get_map_file_status() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:88:5↗: warning: function 'is_equal' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_equal(const std::vector<std::shared_ptr<Status>> &left,
    ^
    [[nodiscard]] 
include/esys/repo/git/repostatus.h:90:5↗: warning: function 'is_equal' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_equal(const std::vector<std::shared_ptr<FileStatus>> &left,
    ^
    [[nodiscard]] 
include/esys/repo/git/signature.h:53:5↗: warning: function 'get_date_time' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::chrono::system_clock::time_point &get_date_time() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/signature.h:65:5↗: warning: function 'get_offset' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_offset() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/status.h:54:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    StatusType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/status.h:67:5↗: warning: function 'get_sub_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    StatusSubType get_sub_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/status.h:71:5↗: warning: function 'get_diff_delta' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const DiffDelta &get_diff_delta() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:58:5↗: warning: function 'get_type' should be marked [[nodiscard]] [modernize-use-nodiscard]
    UpdateTipType get_type() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:66:5↗: warning: function 'get_ref_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_ref_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:73:5↗: warning: function 'get_new_oid' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_new_oid() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/updatetip.h:80:5↗: warning: function 'get_old_oid' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_old_oid() const;
    ^
    [[nodiscard]] 
include/esys/repo/git/url.h:50:5↗: warning: function 'get' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:81:5↗: warning: function 'get_author' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<git::Person> get_author() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:93:5↗: warning: function 'get_committer' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<git::Person> get_committer() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:387:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:399:5↗: warning: function 'get_debug' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_debug() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:497:5↗: warning: function 'get_notes_references' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_notes_references() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:549:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual bool do_is_ssh_backend_supported(git::SshBackend backend) const = 0;
    ^
    [[nodiscard]] 
include/esys/repo/gitbase.h:552:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual Result_t<git::SshBackend> do_get_ssh_backend() const = 0;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:110:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool do_is_ssh_backend_supported(git::SshBackend backend) const override;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:113:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Result_t<git::SshBackend> do_get_ssh_backend() const override;
    ^
    [[nodiscard]] 
include/esys/repo/gitcmdline/git.h:117:5↗: warning: function 'build_git_command' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string build_git_command(const std::vector<std::string> &args, const std::string &cwd) const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:128:5↗: warning: function 'get_phase_timings' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const GitPhaseTimings &get_phase_timings() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:159:5↗: warning: function 'get_attempts' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_attempts() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:165:5↗: warning: function 'get_retry_delay_ms' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_retry_delay_ms() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:264:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:276:5↗: warning: function 'get_auto_close' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_auto_close() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:288:5↗: warning: function 'get_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/githelper.h:300:5↗: warning: function 'get_display_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_display_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/gitphasetimings.h:46:5↗: warning: function 'total_ms' should be marked [[nodiscard]] [modernize-use-nodiscard]
    uint64_t total_ms() const
    ^
    [[nodiscard]] 
include/esys/repo/gitphasetimings.h:61:5↗: warning: function 'format' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string format(const std::string &prefix = "sync phases (ms):") const
    ^
    [[nodiscard]] 
include/esys/repo/grepo/folder.h:64:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/grepo/folder.h:70:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/hybrid/git.h:119:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool do_is_ssh_backend_supported(git::SshBackend backend) const override;
    ^
    [[nodiscard]] 
include/esys/repo/hybrid/git.h:122:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Result_t<git::SshBackend> do_get_ssh_backend() const override;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:190:5↗: warning: function 'do_is_ssh_backend_supported' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool do_is_ssh_backend_supported(git::SshBackend backend) const override;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:193:5↗: warning: function 'do_get_ssh_backend' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Result_t<git::SshBackend> do_get_ssh_backend() const override;
    ^
    [[nodiscard]] 
include/esys/repo/libgit2/git.h:329:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    GitImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:54:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:66:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:86:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Config> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/loadfolder.h:92:5↗: warning: function 'get_config_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<ConfigFolder> get_config_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/capture.h:57:9↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_path() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:64:9↗: warning: function 'get_revision' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_revision() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:71:9↗: warning: function 'get_remote_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_remote_name() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:78:9↗: warning: function 'get_remote_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_remote_url() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/capture.h:121:5↗: warning: function 'find_item' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Item> find_item(const std::string &path) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/capture.h:124:5↗: warning: function 'get_items' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Item>> &get_items() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/capture.h:127:5↗: warning: function 'get_map' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::map<std::string, std::shared_ptr<Item>, std::less<>> &get_map() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/detect.h:50:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directories.h:61:9↗: warning: function 'get_directory' should be marked [[nodiscard]] [modernize-use-nodiscard]
        std::shared_ptr<Directory> get_directory() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directories.h:93:5↗: warning: function 'get_items' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Item>> &get_items() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directories.h:100:5↗: warning: function 'find_item' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Item> find_item(const std::string &name) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directories.h:107:5↗: warning: function 'find_project' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Directory::Item> find_project(const std::string &name) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directory.h:50:9↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_name() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directory.h:57:9↗: warning: function 'get_url_ssh' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_ssh() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directory.h:64:9↗: warning: function 'get_url_https' should be marked [[nodiscard]] [modernize-use-nodiscard]
        const std::string &get_url_https() const;
        ^
        [[nodiscard]] 
include/esys/repo/manifest/directory.h:91:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directory.h:105:5↗: warning: function 'get_items' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<Item>> &get_items() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directory.h:111:5↗: warning: function 'find' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Item> find(const std::string &name) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directoryfilexml.h:56:5↗: warning: function 'get_directory' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Directory> get_directory() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directoryfilexml.h:83:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    DirectoryFileXMLImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directorymngr.h:46:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/directorymngr.h:58:5↗: warning: function 'get_directories' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Directories> get_directories() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/file.h:78:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const FileBase *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/filebase.h:55:5↗: warning: function 'get_data' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_data() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/filebase.h:78:5↗: warning: function 'get_errors' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::shared_ptr<FileError>> &get_errors() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/manifest/filebase.h:98:5↗: warning: function 'get_filename' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_filename() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/fileerror.h:63:5↗: warning: function 'get_value' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_value() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/fileerror.h:75:5↗: warning: function 'get_line_number' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_line_number() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/include.h:56:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/loader.h:59:5↗: warning: function 'get_loader' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<LoaderBase> get_loader() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/loader.h:65:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const override;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/loaderbase.h:61:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/multifilebase.h:51:5↗: warning: function 'get_capture' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Capture> get_capture() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/multifilexml.h:66:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    MultiFileXMLImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:60:5↗: warning: function 'get_name' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_name() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:72:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:84:5↗: warning: function 'get_revision' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_revision() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:96:5↗: warning: function 'get_location_str' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_location_str() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:102:5↗: warning: function 'get_url' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_url() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:114:5↗: warning: function 'get_location' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Location *get_location() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/repository.h:126:5↗: warning: function 'get_groups' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<Group *> &get_groups() const; //<swig_out/>
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:80:5↗: warning: function 'get_job_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_job_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:92:5↗: warning: function 'get_progress_session' should be marked [[nodiscard]] [modernize-use-nodiscard]
    progress::ProgressSession *get_progress_session() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:108:5↗: warning: function 'get_console_progress' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_console_progress() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:114:5↗: warning: function 'get_paused' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_paused() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/runtasks.h:120:5↗: warning: function 'get_backpressure' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_backpressure() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/sync.h:74:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/sync.h:86:5↗: warning: function 'get_force' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_force() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/sync.h:125:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:99:5↗: warning: function 'get_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:117:5↗: warning: function 'get_display_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_display_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:130:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:142:5↗: warning: function 'get_alt_address' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_alt_address() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:154:5↗: warning: function 'get_force' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_force() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:160:5↗: warning: function 'get_workspace_root_clone_method' should be marked [[nodiscard]] [modernize-use-nodiscard]
    WorkspaceRootCloneMethod get_workspace_root_clone_method() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:166:5↗: warning: function 'get_clone_options' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const git::CloneOptions &get_clone_options() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepo.h:169:5↗: warning: function 'get_phase_timings' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const GitPhaseTimings &get_phase_timings() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:72:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:96:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:150:5↗: warning: function 'get_repo_idx' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_repo_idx() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:165:5↗: warning: function 'is_repo_to_be_synced' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_repo_to_be_synced(std::shared_ptr<manifest::Repository> repo) const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:172:5↗: warning: function 'get_folders_to_sync' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_folders_to_sync() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:184:5↗: warning: function 'get_job_count' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_job_count() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:191:5↗: warning: function 'get_branch' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_branch() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:203:5↗: warning: function 'get_alt_address' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_alt_address() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:206:5↗: warning: function 'get_run_tasks' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const RunTasks &get_run_tasks() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:212:5↗: warning: function 'get_workspace_root_order' should be marked [[nodiscard]] [modernize-use-nodiscard]
    WorkspaceRootOrder get_workspace_root_order() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:218:5↗: warning: function 'get_workspace_root_clone_method' should be marked [[nodiscard]] [modernize-use-nodiscard]
    WorkspaceRootCloneMethod get_workspace_root_clone_method() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:224:5↗: warning: function 'get_clone_options' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const git::CloneOptions &get_clone_options() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/syncrepos.h:236:5↗: warning: function 'get_tui' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool get_tui() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:65:5↗: warning: function 'get_git' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<GitBase> get_git() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:101:5↗: warning: function 'get_result' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_result() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:112:5↗: warning: function 'get_errors' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::vector<std::string> &get_errors() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:124:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::size_t get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:136:5↗: warning: function 'get_worker_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_worker_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/taskbase.h:148:5↗: warning: function 'get_progress_session' should be marked [[nodiscard]] [modernize-use-nodiscard]
    progress::ProgressSession *get_progress_session() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/workerthread.h:56:5↗: warning: function 'get_id' should be marked [[nodiscard]] [modernize-use-nodiscard]
    int get_id() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifest/xmlfile.h:80:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const XMLFileImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/manifestfilebase.h:75:5↗: warning: function 'get_data' should be marked [[nodiscard]] [modernize-use-nodiscard]
    virtual std::shared_ptr<repo::Manifest> get_data() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:54:5↗: warning: function 'get_temp_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_temp_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:66:5↗: warning: function 'get_manifest_directories_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_manifest_directories_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:78:5↗: warning: function 'get_traces_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_traces_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfig.h:90:5↗: warning: function 'get_manifest_directories' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<manifest::Directories> get_manifest_directories() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfigfile.h:54:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfigfile.h:66:5↗: warning: function 'get_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserConfig> get_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/userconfigfile.h:90:5↗: warning: function 'get_impl' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const UserConfigFileImpl *get_impl() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:59:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:71:5↗: warning: function 'get_user_home_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_user_home_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:83:5↗: warning: function 'get_user_config_file_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_user_config_file_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/userfolder.h:95:5↗: warning: function 'get_user_config' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<UserConfig> get_user_config() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:59:5↗: warning: function 'get_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:66:5↗: warning: function 'get_folder_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const std::string &get_folder_path() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:78:5↗: warning: function 'get_kind' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Kind get_kind() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:96:5↗: warning: function 'get_full_path' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::string get_full_path(std::shared_ptr<manifest::Repository> repo) const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:108:5↗: warning: function 'get_load_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<LoadFolder> get_load_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:114:5↗: warning: function 'get_config_folder' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<ConfigFolder> get_config_folder() const;
    ^
    [[nodiscard]] 
include/esys/repo/workspace.h:120:5↗: warning: function 'get_manifest' should be marked [[nodiscard]] [modernize-use-nodiscard]
    std::shared_ptr<Manifest> get_manifest() const;
    ^
    [[nodiscard]] 
include/esys/repo/result_t.h:149:10↗: warning: 'print' overrides a member function but is not marked 'override' [clang-diagnostic-inconsistent-missing-override]
    void print(std::ostream &os) const;
         ^
src/esys/repo/gitbase.cpp:406:36↗: note: in instantiation of template class 'esys::repo::Result_t<esys::repo::git::SshBackend>' requested here
Result_t<git::SshBackend> GitBase::get_ssh_backend()
                                   ^
include/esys/repo/result.h:234:18↗: note: overridden virtual function is here
    virtual void print(std::ostream &os) const;
                 ^
src/esys/repo/configfileimpl.h:44:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const ConfigFile *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/grepo/manifestimpl.h:63:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    Manifest *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/libgit2/notes.h:82:5↗: warning: function 'is_loaded' should be marked [[nodiscard]] [modernize-use-nodiscard]
    bool is_loaded() const;
    ^
    [[nodiscard]] 
src/esys/repo/manifest/directoryfilexmlimpl.h:52:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    DirectoryFileXML *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/manifest/xmlfileimpl.h:63:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const XMLFile *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/userconfigfileimpl.h:71:5↗: warning: function 'self' should be marked [[nodiscard]] [modernize-use-nodiscard]
    const UserConfigFile *self() const;
    ^
    [[nodiscard]] 
src/esys/repo/userfolder.cpp:105:39↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (get_user_config() == nullptr) ESYSREPO_RESULT(ResultCode::INTERNAL_ERROR);
                                      ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/userfolder.cpp:174:39↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (get_user_config() == nullptr) ESYSREPO_RESULT(ResultCode::INTERNAL_ERROR);
                                      ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

            

modernize-use-override

include/esys/repo/git/noteid.h:38:5↗: warning: annotate this function with 'override' or (rarely) 'final' [cppcoreguidelines-explicit-virtual-functions,modernize-use-override]
    ~NoteId();
    ^
              override

            

modernize-use-using

include/esys/repo/gitmngr.h:43:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef std::shared_ptr<GitBase> (*NewPtrFct)();
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using NewPtrFct = std::shared_ptr<GitBase> (*)()
include/esys/repo/progresscallback_t.h:36:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef void (OBJ::*CallbackType)(const git::Progress &progress);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using CallbackType = void (OBJ::*)(const git::Progress &)
src/esys/repo/cli/appbase.cpp:572:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using tokenizer = boost::tokenizer<boost::char_separator<char>>
src/esys/repo/cli/cmd_cli.cpp:317:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using tokenizer = boost::tokenizer<boost::char_separator<char>>
src/esys/repo/grepo/manifestimpl_grepo.cpp:292:5↗: warning: use 'using' instead of 'typedef' [modernize-use-using]
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    using tokenizer = boost::tokenizer<boost::char_separator<char>>
src/esys/repo/hybrid/git_hybrid.cpp:37:20↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (is_open()) close();
                   ^~~~~
src/esys/repo/hybrid/git_hybrid.cpp:96:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_cmdline->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/hybrid/git_hybrid.cpp:132:68↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (is_open() || m_cmdline->is_open() || m_libgit2->is_open()) close();
                                                                   ^~~~~
src/esys/repo/hybrid/git_hybrid.cpp:147:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_cmdline->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/hybrid/git_hybrid.cpp:178:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_libgit2->close();
        ^~~~~~~~~~~~~~~~
src/esys/repo/hybrid/git_hybrid.cpp:198:9↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
        m_libgit2->close();
        ^~~~~~~~~~~~~~~~

            

readability-magic-numbers

include/esys/repo/exe/cmdstatus.h:118:40↗: warning: 50 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    std::size_t m_start_print_branch = 50;
                                       ^
include/esys/repo/githelper.h:362:28↗: warning: 2000 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    int m_retry_delay_ms = 2000; //!< Pause between clone/fetch retries
                           ^
include/esys/repo/manifest/runtasks.h:192:38↗: warning: 500 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    std::size_t m_cout_interval_ms = 500;
                                     ^
src/esys/repo/cli/appbase.cpp:366:63↗: warning: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
            m_logger->add_rotating_file(traces_file.string(), 100, 10, esys::log::Level::TRACE);
                                                              ^
src/esys/repo/cli/appbase.cpp:366:68↗: warning: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
            m_logger->add_rotating_file(traces_file.string(), 100, 10, esys::log::Level::TRACE);
                                                                   ^
src/esys/repo/cli/appbase.cpp:457:36↗: warning: 15 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        oss << "    " << std::setw(15) << std::left << cmd->get_name() << cmd->get_description() << std::endl;
                                   ^
src/esys/repo/exe/cmd.cpp:282:25↗: warning: 20 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        os << std::setw(20) << std::left << repo->get_path() << repo->get_revision();
                        ^
src/esys/repo/exe/cmd.cpp:290:25↗: warning: ignoring temporary created by a constructor declared with 'nodiscard' attribute [clang-diagnostic-unused-value]
    if (result.error()) ESYSREPO_RESULT(result);
                        ^
include/esys/repo/result.h:39:38↗: note: expanded from macro 'ESYSREPO_RESULT'
#define ESYSREPO_RESULT(result, ...) esys::repo::Result(result, __FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/esys/repo/exe/cmd.cpp:632:29↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    logger->set_debug_level(5);
                            ^
src/esys/repo/exe/cmdinfo.cpp:181:82↗: warning: 20 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        oss << std::endl << "        [" << idx << "] " << std::left << std::setw(20) << branch->get_name();
                                                                                 ^
src/esys/repo/gitcmdline/git_cmdline.cpp:222:14↗: warning: 1024 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    char buf[1024];
             ^
src/esys/repo/gitcmdline/git_cmdline.cpp:269:14↗: warning: 4096 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    char buf[4096];
             ^
src/esys/repo/gitcmdline/git_cmdline.cpp:301:17↗: warning: ignoring return value of function declared with 'nodiscard' attribute [clang-diagnostic-unused-result]
    if (m_open) close();
                ^~~~~
src/esys/repo/gitcmdline/git_cmdline.cpp:437:35↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
                if (ref.size() >= 5 && ref.compare(ref.size() - 5, 5, "/HEAD") == 0) continue;
                                  ^
src/esys/repo/gitcmdline/git_cmdline.cpp:437:65↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
                if (ref.size() >= 5 && ref.compare(ref.size() - 5, 5, "/HEAD") == 0) continue;
                                                                ^
src/esys/repo/gitcmdline/git_cmdline.cpp:437:68↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
                if (ref.size() >= 5 && ref.compare(ref.size() - 5, 5, "/HEAD") == 0) continue;
                                                                   ^
src/esys/repo/manifest/syncrepo_manifest.cpp:42:23↗: warning: 40 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
    if (rev.size() != 40) return false;
                      ^
src/esys/repo/progress/consoleobserver.cpp:168:43↗: warning: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        case RepoPhase::RECEIVING: return 5;
                                          ^
src/esys/repo/progress/consoleobserver.cpp:170:42↗: warning: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        case RepoPhase::CHECKOUT: return 6;
                                         ^
src/esys/repo/progress/consoleobserver.cpp:172:40↗: warning: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        case RepoPhase::FAILED: return 6;
                                       ^
src/esys/repo/version.cpp:83:31↗: warning: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers]
        if (idx > 0) value *= 10;
                              ^
ERROR running cland-tidy: 1