From c5e709d433bdd6694ad68b67978b655a57f740df Mon Sep 17 00:00:00 2001 From: Anish Athalye Date: Thu, 25 Jun 2020 15:56:42 -0400 Subject: Make error for empty config a little friendlier In the setup guide in the README, we have people start out with an empty file (created using `touch`). Before this patch, Dotbot gave the following error: Configuration file must be a list of tasks Instead, with this patch, Dotbot says: Configuration file is empty, no work to do This change was prompted by https://github.com/anishathalye/dotbot/pull/226. --- dotbot/cli.py | 3 +++ test/tests/config-empty.bash | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/dotbot/cli.py b/dotbot/cli.py index 258ea87..b400dd6 100644 --- a/dotbot/cli.py +++ b/dotbot/cli.py @@ -74,6 +74,9 @@ def main(): log.error('No configuration file specified') exit(1) tasks = read_config(options.config_file) + if tasks is None: + log.warning('Configuration file is empty, no work to do') + tasks = [] if not isinstance(tasks, list): raise ReadingError('Configuration file must be a list of tasks') if options.base_directory: diff --git a/test/tests/config-empty.bash b/test/tests/config-empty.bash index 146d89e..733c156 100644 --- a/test/tests/config-empty.bash +++ b/test/tests/config-empty.bash @@ -1,7 +1,7 @@ -test_description='empty config disallowed' +test_description='empty config allowed' . '../test-lib.bash' -test_expect_failure 'run' ' +test_expect_success 'run' ' run_dotbot <