From 9c1cf75ce89f9c99504a1f812a0f88fffd0430a1 Mon Sep 17 00:00:00 2001 From: Andrea Schiavini Date: Mon, 13 Feb 2012 12:54:25 +0100 Subject: [PATCH] Added exception handling to display a user friendly message when time parse goes wrong --- Rakefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 24319d16b3..b19d1295a5 100644 --- a/Rakefile +++ b/Rakefile @@ -46,7 +46,12 @@ task :post do abort("rake aborted: '#{CONFIG['posts']}' directory not found.") unless FileTest.directory?(CONFIG['posts']) title = ENV["title"] || "new-post" slug = title.downcase.strip.gsub(' ', '-').gsub(/[^\w-]/, '') - date = (Time.parse(ENV['date']) || Time.now).strftime('%Y-%m-%d') + begin + date = (Time.parse(ENV['date']) || Time.now).strftime('%Y-%m-%d') + rescue Exception => e + puts "Error - date format must be YYYY-MM-DD, please check you typed it correctly!" + exit -1 + end filename = File.join(CONFIG['posts'], "#{date}-#{slug}.#{CONFIG['post_ext']}") if File.exist?(filename) abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n'