<commit_before>#!/usr/bin/perl


use strict;
use warnings;

use Config::Scoped;
use File::Copy;
use File::Path qw(remove_tree);
use File::Rsync;
use Getopt::Std;
use Parallel::ForkManager;


################################################################################
#### GLOBAL VARIABLES
################################################################################

my $VERSION = '0.1';

# Reference to config hash
my $config;

# Reference to hash containing command line options used
my $args;

# Verbosity level (log_level in config)
my $verbose;

# Directory containing lock/pid files.
my $lock_directory;


################################################################################
#### SJK-BACKUP
################################################################################

$args = parse_args();

VERSION_MESSAGE() if defined $args->{'V'};

# Read the configuration file.
$config = read_conf();

# Run various checks on config.
check_config();

$verbose = $config->{'general'}{'log_level'};
$lock_directory = strip_trailing_slash($config->{'general'}{'lock_directory'});

# Do the backups.
do_backups($config);


################################################################################
#### FUNCTIONS
################################################################################

sub VERSION_MESSAGE {
	print "$0 version $VERSION\n";
	exit(1);
}

# Parse command line arguments.
sub parse_args {
	my %args;
	my $res;<commit_msg>Added VERSION_MESSAGE comment.<commit_after>#!/usr/bin/perl


use strict;
use warnings;

use Config::Scoped;
use File::Copy;
use File::Path qw(remove_tree);
use File::Rsync;
use Getopt::Std;
use Parallel::ForkManager;


################################################################################
#### GLOBAL VARIABLES
################################################################################

my $VERSION = '0.1';

# Reference to config hash
my $config;

# Reference to hash containing command line options used
my $args;

# Verbosity level (log_level in config)
my $verbose;

# Directory containing lock/pid files.
my $lock_directory;


################################################################################
#### SJK-BACKUP
################################################################################

$args = parse_args();

VERSION_MESSAGE() if defined $args->{'V'};

# Read the configuration file.
$config = read_conf();

# Run various checks on config.
check_config();

$verbose = $config->{'general'}{'log_level'};
$lock_directory = strip_trailing_slash($config->{'general'}{'lock_directory'});

# Do the backups.
do_backups($config);


################################################################################
#### FUNCTIONS
################################################################################

# Tell everyone what version we're running!
sub VERSION_MESSAGE {
	print "$0 version $VERSION\n";
	exit(1);
}

# Parse command line arguments.
sub parse_args {
	my %args;
	my $res;
{'fraction_non_alphanumeric': 0.4199264460046807, 'fraction_numerical': 0.0026746907388833165, 'mean_word_length': 7.931343283582089, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1299535', 'n_tokens_mistral': 779, 'n_tokens_neox': 739, 'n_words': 201}