Provided by: libarch-perl_0.5.2-2_all
Arch::Backend - Arch backend feature specific functions
use Arch::Backend qw(arch_backend is_baz has_file_diffs_cmd); my $exe = arch_backend(); print "Not in tree, try '$exe init-tree'\n"; my $version = Arch::Backend::arch_backend_version; print "Using baz $version as a backend\n" if is_baz(); my $cmd = has_file_diffs_cmd() ? "file-diffs" : "file-diff"; Arch::Util::run_tla($cmd, $filename);
A set of helper functions suitable for GNU Arch related projects in Perl. Higher (object oriented) levels of Arch/Perl library make use of these helper functions to query certain aspects (like incompatible features) of the actual arch backend used.
The following functions are available: arch_backend, arch_backend_name, arch_backend_version, is_tla, is_baz, has_archive_setup_cmd, has_file_diffs_cmd, has_register_archive_name_arg, has_tree_version_dir_opt, has_tree_id_cmd, has_set_tree_version_cmd, has_cache_feature, get_cache_config, has_commit_version_arg, has_commit_files_separator, has_revlib_patch_set_dir. arch_backend [exe] Return or set the arch backend executable, like "/opt/bin/tla" or "baz-1.3". By default, the arch backend executable is taken from environment variable $ARCH_BACKEND (or $TLA, or $BAZ). If no environment variable is set, then "tla" is used. arch_backend_name Return the brand name of the arch backend, "tla" or "baz". arch_backend_version Return the arch backend version, like "1.3.1". is_tla Return true if arch_backend_name is "tla". is_baz Return true if arch_backend_name is "baz". has_archive_setup_cmd Return true if the arch backend has "archive-setup" command. baz removed this command. has_file_diffs_cmd Return true if the arch backend has "file-diffs" command. It was renamed to "file- diff" in tla-1.3. has_register_archive_name_arg Return true if the arch backend's "register-archive" command supports two positional arguments, one of which is archive name. baz-1.3 removed such syntax; the previous baz versions supported this syntax, but it was useless, since the archive was accessed anyway. has_tree_version_dir_opt Return true if the arch backend's "tree-version" command supports "-d" options. This is true for baz. has_tree_id_cmd Return true if the arch backend has "tree-id" command. This is true for baz. has_set_tree_version_cmd Return true if the arch backend has "set-tree-version" command. baz removed this command and merged it into "tree-version". has_cache_feature Return true if the arch backend supports Arch Cache feature. This is true for baz. get_cache_config Return hash with the following keys: dir - directory of the local cache (or undef if not applicable). has_commit_version_arg Return true if the arch backend's "commit" command supports version argument. baz-1.4 removed this functionality. has_commit_files_separator Return true if the arch backend's "commit" command requires "--" argument to separate files. baz-1.4 removed this separator. has_revlib_patch_set_dir Return true if the arch backend's creates ,,patch-set subdirectory in revision library. baz-1.4 removed this functionality.
This module uses heuristics and does not (intend to) provide the perfect information. Requires constant updating.
Mikhael Goikhman (email@example.com--Perl-GPL/arch-perl--devel).
For more information, see tla, baz, Arch.