class GemToys::Template::Release
Template
with gem release tool, expanding internally
Constants
- VERSION_TYPES
Attributes
changelog_file_name[R]
unreleased_title[R]
version_file_path[R]
version_tag_prefix[R]
Public Class Methods
new( changelog_file_name:, version_file_path:, version_tag_prefix:, unreleased_title: )
click to toggle source
# File lib/gem_toys/template/release.rb, line 16 def initialize( changelog_file_name:, version_file_path:, version_tag_prefix:, unreleased_title: ) @changelog_file_name = changelog_file_name @version_file_path = version_file_path @version_tag_prefix = version_tag_prefix @unreleased_title = unreleased_title end
Public Instance Methods
handle_keyword_in_new_version(current_version_parts, version_index)
click to toggle source
# File lib/gem_toys/template/release.rb, line 83 def handle_keyword_in_new_version(current_version_parts, version_index) current_version_parts.map.with_index do |version_part, index| if index < version_index version_part elsif index == version_index Integer(version_part) + 1 else 0 end end.join('.') end
handle_new_version()
click to toggle source
# File lib/gem_toys/template/release.rb, line 69 def handle_new_version ## https://github.com/dazuma/toys/issues/103 @new_version = if (version_index = self.class::VERSION_TYPES.index(new_version)) current_version_parts = current_version.split('.')[0..(self.class::VERSION_TYPES.count - 1)] handle_keyword_in_new_version current_version_parts, version_index else new_version end clear_memery_cache! :current_version end
print_files_diff()
click to toggle source
# File lib/gem_toys/template/release.rb, line 110 def print_files_diff $stdout.puts sh "git diff #{version_file_path} #{changelog_file_path}" $stdout.puts end
update_version_file()
click to toggle source
# File lib/gem_toys/template/release.rb, line 95 def update_version_file puts 'Updating version file...' File.write( version_file_path, version_file_content.sub(/(VERSION = )'.+'/, "\\1'#{@new_version}'") ) end
wait_for_manual_check()
click to toggle source
# File lib/gem_toys/template/release.rb, line 104 def wait_for_manual_check print_files_diff manual_check_menu end