Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
901c5ffba3 | ||
|
|
89ddb6291a | ||
|
|
65594a63c0 | ||
|
|
3a41f22339 | ||
|
|
a139eff84b | ||
|
|
95d4e49171 |
14
CHANGELOG.md
14
CHANGELOG.md
@@ -1,11 +1,19 @@
|
||||
# Change Log
|
||||
|
||||
## [1.10.3](https://github.com/skywinder/github-changelog-generator/tree/1.10.3) (2016-02-23)
|
||||
[Full Changelog](https://github.com/skywinder/github-changelog-generator/compare/1.10.2...1.10.3)
|
||||
## [1.10.4](https://github.com/skywinder/github-changelog-generator/tree/1.10.4) (2016-02-24)
|
||||
[Full Changelog](https://github.com/skywinder/github-changelog-generator/compare/1.10.3...1.10.4)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- Getting an error on install [\#329](https://github.com/skywinder/github-changelog-generator/issues/329)
|
||||
- Rake and Bundler as runtime deps [\#333](https://github.com/skywinder/github-changelog-generator/pull/333) ([olleolleolle](https://github.com/olleolleolle))
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Test case for \#327 [\#331](https://github.com/skywinder/github-changelog-generator/pull/331) ([olleolleolle](https://github.com/olleolleolle))
|
||||
- Fix crash installing on systems without overcommit [\#330](https://github.com/skywinder/github-changelog-generator/pull/330) ([jkeiser](https://github.com/jkeiser))
|
||||
|
||||
## [1.10.3](https://github.com/skywinder/github-changelog-generator/tree/1.10.3) (2016-02-23)
|
||||
[Full Changelog](https://github.com/skywinder/github-changelog-generator/compare/1.10.2...1.10.3)
|
||||
|
||||
## [1.10.2](https://github.com/skywinder/github-changelog-generator/tree/1.10.2) (2016-02-23)
|
||||
[Full Changelog](https://github.com/skywinder/github-changelog-generator/compare/v1.11.0...1.10.2)
|
||||
|
||||
2
Gemfile
2
Gemfile
@@ -3,6 +3,8 @@ source "https://rubygems.org"
|
||||
gemspec
|
||||
|
||||
group :test do
|
||||
gem "rspec", "~>3.2"
|
||||
gem "rubocop", "~>0.31"
|
||||
gem "coveralls", "~>0.8", require: false
|
||||
gem "simplecov", "~>0.10", require: false
|
||||
gem "codeclimate-test-reporter", "~>0.4"
|
||||
|
||||
12
Gemfile.lock
12
Gemfile.lock
@@ -1,14 +1,12 @@
|
||||
PATH
|
||||
remote: .
|
||||
specs:
|
||||
github_changelog_generator (1.11.0)
|
||||
bundler (>= 1.7)
|
||||
github_changelog_generator (1.10.4)
|
||||
bundler (~> 1.7)
|
||||
colorize (~> 0.7)
|
||||
github_api (~> 0.12)
|
||||
overcommit (>= 0.31)
|
||||
rake (>= 10.0)
|
||||
rspec (>= 3.2)
|
||||
rubocop (>= 0.31)
|
||||
overcommit (~> 0.31)
|
||||
rake (~> 10.0)
|
||||
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
@@ -101,6 +99,8 @@ DEPENDENCIES
|
||||
codeclimate-test-reporter (~> 0.4)
|
||||
coveralls (~> 0.8)
|
||||
github_changelog_generator!
|
||||
rspec (~> 3.2)
|
||||
rubocop (~> 0.31)
|
||||
simplecov (~> 0.10)
|
||||
|
||||
BUNDLED WITH
|
||||
|
||||
@@ -17,18 +17,16 @@ Gem::Specification.new do |spec|
|
||||
spec.description = "Changelog generation has never been so easy. Fully automate changelog generation - this gem generate change log file based on tags, issues and merged pull requests from Github issue tracker."
|
||||
spec.homepage = "https://github.com/skywinder/Github-Changelog-Generator"
|
||||
spec.license = "MIT"
|
||||
spec.extensions = ["Rakefile"]
|
||||
# spec.extensions = ["Rakefile"]
|
||||
|
||||
spec.files = `git ls-files -z`.split("\x0")
|
||||
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
||||
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
||||
spec.require_paths = ["lib"]
|
||||
|
||||
spec.add_runtime_dependency "rake", ">= 10.0"
|
||||
spec.add_runtime_dependency "bundler", ">= 1.7"
|
||||
spec.add_runtime_dependency "rake", "~> 10.0"
|
||||
spec.add_runtime_dependency "bundler", "~> 1.7"
|
||||
spec.add_runtime_dependency("github_api", ["~> 0.12"])
|
||||
spec.add_runtime_dependency("colorize", ["~> 0.7"])
|
||||
spec.add_runtime_dependency("overcommit", ">= 0.31")
|
||||
spec.add_runtime_dependency("rubocop", ">= 0.31")
|
||||
spec.add_runtime_dependency("rspec", ">= 3.2")
|
||||
spec.add_runtime_dependency("overcommit", "~>0.31")
|
||||
end
|
||||
|
||||
@@ -4,12 +4,13 @@ module GitHubChangelogGenerator
|
||||
# @param [Array] issues
|
||||
# @return [Array] filtered array
|
||||
def exclude_issues_by_labels(issues)
|
||||
return issues if !@options[:exclude_labels] || @options[:exclude_labels].empty?
|
||||
|
||||
issues.reject do |issue|
|
||||
labels = issue.labels.map(&:name)
|
||||
(labels & @options[:exclude_labels]).any?
|
||||
unless @options[:exclude_labels].nil?
|
||||
issues = issues.select do |issue|
|
||||
var = issue.labels.map(&:name) & @options[:exclude_labels]
|
||||
!var.any?
|
||||
end
|
||||
end
|
||||
issues
|
||||
end
|
||||
|
||||
# @return [Array] filtered issues accourding milestone
|
||||
|
||||
@@ -1,24 +1,21 @@
|
||||
require "pathname"
|
||||
|
||||
module GitHubChangelogGenerator
|
||||
ParserError = Class.new(StandardError)
|
||||
|
||||
class ParserFile
|
||||
FILENAME = ".github_changelog_generator"
|
||||
|
||||
def initialize(options)
|
||||
@options = options
|
||||
end
|
||||
|
||||
# Destructively change @options using data in configured options file.
|
||||
def parse!
|
||||
file.each_line { |line| parse_line!(line) } if file.exist?
|
||||
return unless File.exist?(file)
|
||||
|
||||
File.readlines(file).each { |line| parse_line!(line) }
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def file
|
||||
@file ||= Pathname(File.expand_path(@options[:params_file] || FILENAME))
|
||||
@file ||= File.expand_path(@options[:params_file] || ".github_changelog_generator")
|
||||
end
|
||||
|
||||
def parse_line!(line)
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
module GitHubChangelogGenerator
|
||||
VERSION = "1.11.1"
|
||||
VERSION = "1.10.5"
|
||||
end
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
module GitHubChangelogGenerator
|
||||
describe Generator do
|
||||
context "#exclude_issues_by_labels" do
|
||||
let(:label) { double("the-bad-label", name: "BAD") }
|
||||
let(:issue) { double("the-issue-to-be-excluded", labels: [label]) }
|
||||
let(:good_label) { double("a-good-label", name: "GOOD") }
|
||||
let(:good_issue) { double("an-issue-to-be-kept", labels: [good_label]) }
|
||||
let(:issues) { [issue, good_issue] }
|
||||
subject(:generator) { described_class.new(exclude_labels: %w(BAD BOO)) }
|
||||
|
||||
it "removes issues with labels in the exclude_label list" do
|
||||
result = generator.exclude_issues_by_labels(issues)
|
||||
|
||||
expect(result).to include(good_issue)
|
||||
expect(result).not_to include(issue)
|
||||
end
|
||||
|
||||
context "with no option given" do
|
||||
subject(:generator) { described_class.new }
|
||||
it "passes everything through when no option given" do
|
||||
result = generator.exclude_issues_by_labels(issues)
|
||||
|
||||
expect(result).to eq(issues)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user