in table_class_evaluator.py [0:0]
def __init__(self, args: argparse.Namespace):
self.args = args
# Versions of boto3 older than 1.20.18 will still run, but don't support the table class attribute in
# the result of describe_table, which would result in assuming all tables used the Standard table class.
# Check the Boto version after import to avoid this situation.
boto_version_elements = boto3.__version__.split('.')
major_version = int(boto_version_elements[0])
minor_version = int(boto_version_elements[1])
patch_version = int(boto_version_elements[2])
if ((major_version < 1) or
(major_version == 1 and minor_version < 20) or
(major_version == 1 and minor_version == 20 and patch_version < 18)):
message = f"Error: Boto3 >= 1.20.18 required. See https://aws.amazon.com/sdk-for-python/ for more."
print(message)
exit(0)
self.table_utility = TableUtility(region_name=self.args.region)
# Setup logging
log_level = logging.INFO
root_logger = logging.getLogger()
root_logger.setLevel(log_level)
root_handler = logging.StreamHandler(sys.stdout)
root_handler.setLevel(log_level)
formatter = logging.Formatter('%(asctime)s: %(message)s')
root_handler.setFormatter(formatter)
root_logger.addHandler(root_handler)