Class: Terjira::VersionChecker

Inherits:
Object
  • Object
show all
Defined in:
lib/terjira/version.rb

Constant Summary collapse

VERSION_CHECK_DURATION =
(60 * 60 * 24 * 5).freeze

Class Method Summary collapse

Class Method Details

.check_versionObject



10
11
12
13
14
15
16
17
# File 'lib/terjira/version.rb', line 10

def check_version
  version_alert_cache.fetch :alert do
    if new_version_exists?
      puts "* New version of terjira was released! Run `gem update terjira` if you want to update"
    end
    'checked!'
  end
end

.new_version_exists?Boolean

Returns:

  • (Boolean)


19
20
21
22
23
24
25
26
27
28
29
# File 'lib/terjira/version.rb', line 19

def new_version_exists?
  current = Terjira::VERSION.split(".").map(&:to_i)
  remote = parse_remote_version

  (current[0] < remote[0]) ||
    ((current[0] == remote[0]) && (current[1] < remote[1])) ||
    ((current[0] == remote[0]) && (current[1] == remote[1]) && (current[2] < remote[2]))
rescue => e
  puts "Can not check new version of terjira, #{e.message}"
  false
end