Class: GemChangelogDiff::SourceResolver
- Inherits:
-
Object
- Object
- GemChangelogDiff::SourceResolver
- Defined in:
- lib/gem_changelog_diff/source_resolver.rb
Overview
Fetches release notes, trying GitHub Releases first then changelog files.
Instance Method Summary collapse
-
#initialize(github_client: GithubClient.new, changelog_parser: ChangelogParser.new) ⇒ SourceResolver
constructor
A new instance of SourceResolver.
-
#resolve(repo, current_version, newest_version) ⇒ Array<Hash>
Returns release entries between two versions for a given repo.
Constructor Details
#initialize(github_client: GithubClient.new, changelog_parser: ChangelogParser.new) ⇒ SourceResolver
Returns a new instance of SourceResolver.
6 7 8 9 |
# File 'lib/gem_changelog_diff/source_resolver.rb', line 6 def initialize(github_client: GithubClient.new, changelog_parser: ChangelogParser.new) @github_client = github_client @changelog_parser = changelog_parser end |
Instance Method Details
#resolve(repo, current_version, newest_version) ⇒ Array<Hash>
Returns release entries between two versions for a given repo.
16 17 18 19 20 21 |
# File 'lib/gem_changelog_diff/source_resolver.rb', line 16 def resolve(repo, current_version, newest_version) releases = @github_client.releases_between(repo, current_version, newest_version) return releases unless releases.empty? @changelog_parser.entries_between(repo, current_version, newest_version) end |