lib/rim/rim.rb in esr-rim-1.4.0 vs lib/rim/rim.rb in esr-rim-1.4.2
- old
+ new
@@ -1,94 +1,94 @@
-$:.unshift(File.dirname(__FILE__)+"/lib")
-require 'subcommand'
-require 'rim/file_logger'
-require 'rim/command/sync'
-require 'rim/command/upload'
-require 'rim/command/status'
-require 'rim/command/info'
-require 'rim/git'
-require 'rim/rim_exception'
-require 'rim/version'
-require 'tmpdir'
-
-include Subcommands
-
-# -C option was added in 1.8.5
-# --ignore-removal was added in 1.8.3
-MinimumGitVersion = "1.8.5"
-
-logger = RIM::FileLogger.new($stdout, File.join(Dir.tmpdir, "rim", Time.now().strftime("rim_%Y%m%d-%H%M%S-%L.log")))
-logger.level = Logger::INFO
-logger.formatter = proc do |severity, time, progname, msg|
- if severity == "INFO"
- "#{msg}\n"
- else
- "#{severity}: #{msg}\n"
- end
-end
-
-RIM::GitSession.logger = logger
-
-RIM::git_session(".") do |s|
- begin
- version = s.git_version
- if version
- cmp_str = lambda {|v| v.split(".").collect{|p| p.rjust(10)}.join}
- if cmp_str.call(version) < cmp_str.call(MinimumGitVersion)
- logger.info "Rim needs git version #{MinimumGitVersion} or higher"
- logger.info "Please update git from http://git-scm.com/"
- exit(1)
- end
- else
- # version unknown, don't complain
- end
- rescue RIM::GitException
- logger.info "It seems git is not installed or it's not in your path"
- logger.info "Please update your path or find git at http://git-scm.com/"
- exit(1)
- end
-end
-
-prog_info = "rim, version #{RIM::Version::Version}, Copyright (c) 2015, esrlabs.com"
-
-global_options do |opts|
- opts.banner = prog_info
- opts.separator ""
- opts.separator "Usage: [<options>] rim <command> [<args>]"
- opts.on("-v","--version", "Print version info") do
- logger.info prog_info
- exit
- end
- opts.on("-l LOGLEVEL", [:debug, :info, :warn, :error, :fatal], "log level",
- "one of [debug, info, warn, error, fatal]") do |v|
- logger.level = Logger.const_get(v.upcase)
- end
-end
-
-commands = {}
-add_help_option
-ObjectSpace.each_object(Class).select{|clazz| clazz < RIM::Command::Command }.each do |cmdclazz|
- name = cmdclazz.name.to_s.downcase.split("::").last
- command name do |opts|
- cmd = cmdclazz.new(opts)
- commands[name] = cmd;
- end
-end
-ARGV.unshift("help") if ARGV.empty?
-begin
- cmdname = opt_parse()
- if cmdname
- cmd = commands[cmdname]
- cmd.logger = logger
- begin
- cmd.invoke()
- rescue RIM::RimException => e
- e.messages.each do |m|
- logger.error(m)
- end
- exit(1)
- end
- end
-rescue OptionParser::InvalidOption => e
- logger.error(e.message)
- exit(1)
-end
+$:.unshift(File.dirname(__FILE__)+"/lib")
+require 'subcommand'
+require 'rim/file_logger'
+require 'rim/command/sync'
+require 'rim/command/upload'
+require 'rim/command/status'
+require 'rim/command/info'
+require 'rim/git'
+require 'rim/rim_exception'
+require 'rim/version'
+require 'tmpdir'
+
+include Subcommands
+
+# -C option was added in 1.8.5
+# --ignore-removal was added in 1.8.3
+MinimumGitVersion = "1.8.5"
+
+logger = RIM::FileLogger.new($stdout, File.join(Dir.tmpdir, "rim", Time.now().strftime("rim_%Y%m%d-%H%M%S-%L.log")))
+logger.level = Logger::INFO
+logger.formatter = proc do |severity, time, progname, msg|
+ if severity == "INFO"
+ "#{msg}\n"
+ else
+ "#{severity}: #{msg}\n"
+ end
+end
+
+RIM::GitSession.logger = logger
+
+RIM::git_session(".") do |s|
+ begin
+ version = s.git_version
+ if version
+ cmp_str = lambda {|v| v.split(".").collect{|p| p.rjust(10)}.join}
+ if cmp_str.call(version) < cmp_str.call(MinimumGitVersion)
+ logger.info "Rim needs git version #{MinimumGitVersion} or higher"
+ logger.info "Please update git from http://git-scm.com/"
+ exit(1)
+ end
+ else
+ # version unknown, don't complain
+ end
+ rescue RIM::GitException
+ logger.info "It seems git is not installed or it's not in your path"
+ logger.info "Please update your path or find git at http://git-scm.com/"
+ exit(1)
+ end
+end
+
+prog_info = "rim, version #{RIM::Version::Version}, Copyright (c) 2015, esrlabs.com"
+
+global_options do |opts|
+ opts.banner = prog_info
+ opts.separator ""
+ opts.separator "Usage: [<options>] rim <command> [<args>]"
+ opts.on("-v","--version", "Print version info") do
+ logger.info prog_info
+ exit
+ end
+ opts.on("-l LOGLEVEL", [:debug, :info, :warn, :error, :fatal], "log level",
+ "one of [debug, info, warn, error, fatal]") do |v|
+ logger.level = Logger.const_get(v.upcase)
+ end
+end
+
+commands = {}
+add_help_option
+ObjectSpace.each_object(Class).select{|clazz| clazz < RIM::Command::Command }.each do |cmdclazz|
+ name = cmdclazz.name.to_s.downcase.split("::").last
+ command name do |opts|
+ cmd = cmdclazz.new(opts)
+ commands[name] = cmd;
+ end
+end
+ARGV.unshift("help") if ARGV.empty?
+begin
+ cmdname = opt_parse()
+ if cmdname
+ cmd = commands[cmdname]
+ cmd.logger = logger
+ begin
+ cmd.invoke()
+ rescue RIM::RimException => e
+ e.messages.each do |m|
+ logger.error(m)
+ end
+ exit(1)
+ end
+ end
+rescue OptionParser::InvalidOption => e
+ logger.error(e.message)
+ exit(1)
+end