class U3dCore::Changelog
Public Class Methods
releases(gem_name)
click to toggle source
# File lib/u3d_core/update_checker/changelog.rb, line 57 def releases(gem_name) url = "https://api.github.com/repos/DragonBox/#{gem_name}/releases" JSON.parse(U3d::Utils.page_content(url)) end
show_changes(gem_name, current_version, update_gem_command: "bundle update")
click to toggle source
# File lib/u3d_core/update_checker/changelog.rb, line 29 def show_changes(gem_name, current_version, update_gem_command: "bundle update") did_show_changelog = false releases(gem_name).each_with_index do |release, index| next unless Gem::Version.new(to_version(release['tag_name'])) > Gem::Version.new(current_version) puts("") puts(release['name'].green) puts(release['body']) did_show_changelog = true next unless index == 2 puts("") puts("To see all new releases, open https://github.com/DragonBox/#{gem_name}/releases".green) break end puts("") puts("Please update using `#{update_gem_command}`".green) if did_show_changelog rescue StandardError => e # Something went wrong, we don't care so much about this UI.error("Unable to show_changes: #{e}") end
to_version(tag_name)
click to toggle source
# File lib/u3d_core/update_checker/changelog.rb, line 52 def to_version(tag_name) tag_name = tag_name[1..-1] if tag_name[0] == 'v' tag_name end