module GemToys::Template::CommonCode
Module for common code between nested tools
Private Instance Methods
changelog_file_path()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 34 def changelog_file_path File.join context_directory, @template.changelog_file_name end
current_gem_file()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 46 def current_gem_file "#{pkg_directory}/#{gem_file_name}" end
current_version()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 30 def current_version version_file_content.match(/VERSION = '(.+)'/)[1] end
current_version_hash()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 63 def current_version_hash { number: current_version, created_at: 'unreleased' } end
gem_file_name()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 38 def gem_file_name "#{project_name}-#{current_version}.gem" end
pkg_directory()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 42 def pkg_directory "#{context_directory}/pkg" end
project_name()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 14 def project_name File.basename context_directory end
puts_versions(versions)
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 67 def puts_versions(versions) require 'date' longest_version_number = versions.map { |version| version[:number].length }.max versions.each do |version| created_at = begin DateTime.parse(version[:created_at]).strftime('%F %R') rescue Date::Error version[:created_at] end puts "#{version[:number].ljust(longest_version_number)} (#{created_at})" end end
rubygems_connection()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 50 def rubygems_connection require 'faraday' require 'faraday_middleware' Faraday.new 'https://rubygems.org/api/v1' do |conn| conn.response :json, parser_options: { symbolize_names: true } end end
rubygems_versions()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 59 def rubygems_versions rubygems_connection.get("versions/#{project_name}.json").body end
version_file_content()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 26 def version_file_content File.read version_file_path end
version_file_path()
click to toggle source
# File lib/gem_toys/template/common_code.rb, line 18 def version_file_path @template.version_file_path || begin project_path = project_name.tr '-', '/' File.join context_directory, 'lib', project_path, 'version.rb' end end