class PrLog::Project
Parse files from the local project directory
Public Instance Methods
github_repository_name()
click to toggle source
# File lib/pr_log/project.rb, line 14 def github_repository_name config.github_repository || gemspec.github_repository rescue GemspecNotFound raise(GithubRepositoryRequired, 'Could not derive github repository from gemspec.') rescue NonGithubHomepage raise(GithubRepositoryRequired, 'Homepage attribute in gemspec is not a GitHub URL.') end
issue_numbers_mentioned_in_changelog()
click to toggle source
# File lib/pr_log/project.rb, line 6 def issue_numbers_mentioned_in_changelog parsed_changelog.mentioned_issue_numbers end
milestone()
click to toggle source
# File lib/pr_log/project.rb, line 10 def milestone config.milestone || gemspec.version_milestone end
pull_requests_for_current_milestone()
click to toggle source
# File lib/pr_log/project.rb, line 24 def pull_requests_for_current_milestone github_repository.pull_requests_with_milestone(milestone) end
Private Instance Methods
gemspec()
click to toggle source
# File lib/pr_log/project.rb, line 43 def gemspec Gemspec.new(Gem::Specification.load(gemspec_path), config.milestone_format) end
gemspec_path()
click to toggle source
# File lib/pr_log/project.rb, line 48 def gemspec_path Dir.glob('*.gemspec').first || raise(GemspecNotFound, 'Gemspec not found.') end
github_repository()
click to toggle source
# File lib/pr_log/project.rb, line 30 def github_repository GithubRepository.new(github_repository_name, config.access_token) end
parsed_changelog()
click to toggle source
# File lib/pr_log/project.rb, line 35 def parsed_changelog ParsedChangelog.new(File.read(config.changelog_file), github_repository: github_repository_name) rescue Errno::ENOENT raise(ChangelogFileNotFound, "Could not find '#{config.changelog_file}' file.") end