github_changelog_generator 1.13.2 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/github_changelog_generator.rb +6 -1
- data/lib/github_changelog_generator/generator/generator.rb +28 -28
- data/lib/github_changelog_generator/generator/generator_fetcher.rb +23 -20
- data/lib/github_changelog_generator/generator/generator_generation.rb +40 -53
- data/lib/github_changelog_generator/generator/generator_processor.rb +32 -22
- data/lib/github_changelog_generator/generator/generator_tags.rb +77 -46
- data/lib/github_changelog_generator/octo_fetcher.rb +363 -0
- data/lib/github_changelog_generator/options.rb +92 -0
- data/lib/github_changelog_generator/parser.rb +21 -5
- data/lib/github_changelog_generator/parser_file.rb +2 -2
- data/lib/github_changelog_generator/version.rb +1 -1
- data/man/git-generate-changelog.1 +44 -2
- data/man/git-generate-changelog.1.html +290 -0
- data/man/git-generate-changelog.md +29 -1
- data/spec/spec_helper.rb +21 -0
- data/spec/unit/generator/generator_processor_spec.rb +4 -4
- data/spec/unit/generator/generator_tags_spec.rb +43 -40
- data/spec/unit/octo_fetcher_spec.rb +528 -0
- data/spec/unit/options_spec.rb +42 -0
- data/spec/unit/reader_spec.rb +0 -4
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_issues_and_pr/when_API_call_is_valid.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_issues_and_pr/when_API_call_is_valid/returns_issue_with_proper_key/values.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_issues_and_pr/when_API_call_is_valid/returns_issues.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_issues_and_pr/when_API_call_is_valid/returns_issues_with_labels.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_issues_and_pr/when_API_call_is_valid/returns_pull_request_with_proper_key/values.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_issues_and_pr/when_API_call_is_valid/returns_pull_requests_with_labels.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_pull_requests/when_API_call_is_valid.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_pull_requests/when_API_call_is_valid/returns_correct_pull_request_keys.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_closed_pull_requests/when_API_call_is_valid/returns_pull_requests.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_commit/when_API_call_is_valid.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_commit/when_API_call_is_valid/returns_commit.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_date_of_tag/when_API_call_is_valid.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_date_of_tag/when_API_call_is_valid/returns_date.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_events_async/when_API_call_is_valid.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_fetch_events_async/when_API_call_is_valid/populates_issues.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_github_fetch_tags/when_API_call_is_valid.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_github_fetch_tags/when_API_call_is_valid/should_return_tags.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_github_fetch_tags/when_API_call_is_valid/should_return_tags_count.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_github_fetch_tags/when_wrong_token_provided.json +1 -0
- data/spec/vcr/GitHubChangelogGenerator_OctoFetcher/_github_fetch_tags/when_wrong_token_provided/should_raise_Unauthorized_error.json +1 -0
- metadata +97 -12
- data/lib/CHANGELOG.md +0 -58
- data/lib/github_changelog_generator/fetcher.rb +0 -226
- data/spec/unit/fetcher_spec.rb +0 -60
@@ -0,0 +1,92 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "delegate"
|
3
|
+
module GitHubChangelogGenerator
|
4
|
+
class Options < SimpleDelegator
|
5
|
+
UnsupportedOptionError = Class.new(ArgumentError)
|
6
|
+
|
7
|
+
KNOWN_OPTIONS = [
|
8
|
+
:add_issues_wo_labels,
|
9
|
+
:add_pr_wo_labels,
|
10
|
+
:author,
|
11
|
+
:base,
|
12
|
+
:between_tags,
|
13
|
+
:bug_labels,
|
14
|
+
:bug_prefix,
|
15
|
+
:cache_file,
|
16
|
+
:cache_log,
|
17
|
+
:compare_link,
|
18
|
+
:date_format,
|
19
|
+
:due_tag,
|
20
|
+
:enhancement_labels,
|
21
|
+
:enhancement_prefix,
|
22
|
+
:exclude_labels,
|
23
|
+
:exclude_tags,
|
24
|
+
:exclude_tags_regex,
|
25
|
+
:filter_issues_by_milestone,
|
26
|
+
:frontmatter,
|
27
|
+
:future_release,
|
28
|
+
:git_remote,
|
29
|
+
:github_endpoint,
|
30
|
+
:github_site,
|
31
|
+
:header,
|
32
|
+
:http_cache,
|
33
|
+
:include_labels,
|
34
|
+
:issue_prefix,
|
35
|
+
:issue_line_labels,
|
36
|
+
:issues,
|
37
|
+
:max_issues,
|
38
|
+
:merge_prefix,
|
39
|
+
:output,
|
40
|
+
:project,
|
41
|
+
:pulls,
|
42
|
+
:release_branch,
|
43
|
+
:release_url,
|
44
|
+
:simple_list,
|
45
|
+
:since_tag,
|
46
|
+
:token,
|
47
|
+
:unreleased,
|
48
|
+
:unreleased_label,
|
49
|
+
:unreleased_only,
|
50
|
+
:user,
|
51
|
+
:usernames_as_github_logins,
|
52
|
+
:verbose
|
53
|
+
]
|
54
|
+
|
55
|
+
THESE_ARE_DIFFERENT = [
|
56
|
+
:tag1,
|
57
|
+
:tag2
|
58
|
+
]
|
59
|
+
|
60
|
+
def initialize(values)
|
61
|
+
super(values)
|
62
|
+
unsupported_options.any? && raise(UnsupportedOptionError, unsupported_options.inspect)
|
63
|
+
end
|
64
|
+
|
65
|
+
def []=(key, val)
|
66
|
+
supported_option?(key) || raise(UnsupportedOptionError, key.inspect)
|
67
|
+
values[key] = val
|
68
|
+
end
|
69
|
+
|
70
|
+
def to_hash
|
71
|
+
values
|
72
|
+
end
|
73
|
+
|
74
|
+
private
|
75
|
+
|
76
|
+
def values
|
77
|
+
__getobj__
|
78
|
+
end
|
79
|
+
|
80
|
+
def unsupported_options
|
81
|
+
values.keys - supported_options
|
82
|
+
end
|
83
|
+
|
84
|
+
def supported_option?(key)
|
85
|
+
supported_options.include?(key)
|
86
|
+
end
|
87
|
+
|
88
|
+
def supported_options
|
89
|
+
KNOWN_OPTIONS + THESE_ARE_DIFFERENT
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
@@ -42,7 +42,7 @@ module GitHubChangelogGenerator
|
|
42
42
|
|
43
43
|
# setup parsing options
|
44
44
|
def self.setup_parser(options)
|
45
|
-
parser = OptionParser.new do |opts|
|
45
|
+
parser = OptionParser.new do |opts| # rubocop:disable Metrics/BlockLength
|
46
46
|
opts.banner = "Usage: github_changelog_generator [options]"
|
47
47
|
opts.on("-u", "--user [USER]", "Username of the owner of target GitHub repo") do |last|
|
48
48
|
options[:user] = last
|
@@ -107,7 +107,7 @@ module GitHubChangelogGenerator
|
|
107
107
|
opts.on("--[no-]unreleased", "Add to log unreleased closed issues. Default is true") do |v|
|
108
108
|
options[:unreleased] = v
|
109
109
|
end
|
110
|
-
opts.on("--unreleased-label [label]", "
|
110
|
+
opts.on("--unreleased-label [label]", "Setup custom label for unreleased closed issues section. Default is \"**Unreleased:**\"") do |v|
|
111
111
|
options[:unreleased_label] = v
|
112
112
|
end
|
113
113
|
opts.on("--[no-]compare-link", "Include compare link (Full Changelog) between older version and newer version. Default is true") do |v|
|
@@ -125,6 +125,9 @@ module GitHubChangelogGenerator
|
|
125
125
|
opts.on("--enhancement-labels x,y,z", Array, 'Issues with the specified labels will be always added to "Implemented enhancements" section. Default is \'enhancement,Enhancement\'') do |list|
|
126
126
|
options[:enhancement_labels] = list
|
127
127
|
end
|
128
|
+
opts.on("--issue-line-labels x,y,z", Array, 'The specified labels will be shown in brackets next to each matching issue. Use "ALL" to show all labels. Default is [].') do |list|
|
129
|
+
options[:issue_line_labels] = list
|
130
|
+
end
|
128
131
|
opts.on("--between-tags x,y,z", Array, "Change log will be filled only between specified tags") do |list|
|
129
132
|
options[:between_tags] = list
|
130
133
|
end
|
@@ -161,6 +164,15 @@ module GitHubChangelogGenerator
|
|
161
164
|
opts.on("--release-branch [RELEASE-BRANCH]", "Limit pull requests to the release branch, such as master or release") do |release_branch|
|
162
165
|
options[:release_branch] = release_branch
|
163
166
|
end
|
167
|
+
opts.on("--[no-]http-cache", "Use HTTP Cache to cache Github API requests (useful for large repos) Default is true.") do |http_cache|
|
168
|
+
options[:http_cache] = http_cache
|
169
|
+
end
|
170
|
+
opts.on("--cache-file [CACHE-FILE]", "Filename to use for cache. Default is /tmp/github-changelog-http-cache") do |cache_file|
|
171
|
+
options[:cache_file] = cache_file
|
172
|
+
end
|
173
|
+
opts.on("--cache-log [CACHE-LOG]", "Filename to use for cache log. Default is /tmp/github-changelog-logger.log") do |cache_log|
|
174
|
+
options[:cache_log] = cache_log
|
175
|
+
end
|
164
176
|
opts.on("--[no-]verbose", "Run verbosely. Default is true") do |v|
|
165
177
|
options[:verbose] = v
|
166
178
|
end
|
@@ -178,7 +190,7 @@ module GitHubChangelogGenerator
|
|
178
190
|
|
179
191
|
# @return [Hash] Default options
|
180
192
|
def self.default_options
|
181
|
-
|
193
|
+
Options.new(
|
182
194
|
tag1: nil,
|
183
195
|
tag2: nil,
|
184
196
|
date_format: "%Y-%m-%d",
|
@@ -196,6 +208,7 @@ module GitHubChangelogGenerator
|
|
196
208
|
enhancement_labels: %w(enhancement Enhancement),
|
197
209
|
bug_labels: %w(bug Bug),
|
198
210
|
exclude_labels: %w(duplicate question invalid wontfix Duplicate Question Invalid Wontfix),
|
211
|
+
issue_line_labels: [],
|
199
212
|
max_issues: nil,
|
200
213
|
simple_list: false,
|
201
214
|
verbose: true,
|
@@ -204,8 +217,11 @@ module GitHubChangelogGenerator
|
|
204
217
|
issue_prefix: "**Closed issues:**",
|
205
218
|
bug_prefix: "**Fixed bugs:**",
|
206
219
|
enhancement_prefix: "**Implemented enhancements:**",
|
207
|
-
git_remote: "origin"
|
208
|
-
|
220
|
+
git_remote: "origin",
|
221
|
+
http_cache: true,
|
222
|
+
cache_file: "/tmp/github-changelog-http-cache",
|
223
|
+
cache_log: "/tmp/github-changelog-logger.log"
|
224
|
+
)
|
209
225
|
end
|
210
226
|
|
211
227
|
# If `:user` or `:project` not set in options, try setting them
|
@@ -62,11 +62,11 @@ module GitHubChangelogGenerator
|
|
62
62
|
# @return [Array<Symbol, String>]
|
63
63
|
def extract_pair(line)
|
64
64
|
key, value = line.split("=", 2)
|
65
|
-
[key.
|
65
|
+
[key.tr("-", "_").to_sym, value.gsub(/[\n\r]+/, "")]
|
66
66
|
end
|
67
67
|
|
68
68
|
KNOWN_ARRAY_KEYS = [:exclude_labels, :include_labels, :bug_labels,
|
69
|
-
:enhancement_labels, :between_tags, :exclude_tags]
|
69
|
+
:enhancement_labels, :issue_line_labels, :between_tags, :exclude_tags]
|
70
70
|
KNOWN_INTEGER_KEYS = [:max_issues]
|
71
71
|
|
72
72
|
def convert_value(value, option_name)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "GIT\-GENERATE\-CHANGELOG" "1" "
|
4
|
+
.TH "GIT\-GENERATE\-CHANGELOG" "1" "November 2016" "" ""
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBgit\-generate\-changelog\fR \- Generate changelog from github
|
@@ -73,6 +73,12 @@ Setup custom label for closed\-issues section\. Default is "\fBClosed issues:\fR
|
|
73
73
|
Setup custom header label\. Default is "# Change Log"
|
74
74
|
.
|
75
75
|
.P
|
76
|
+
\-\-front\-matter [JSON]
|
77
|
+
.
|
78
|
+
.P
|
79
|
+
Add YAML front matter\. Formatted as JSON because it\'s easier to add on the command line
|
80
|
+
.
|
81
|
+
.P
|
76
82
|
\-\-pr\-label [LABEL]
|
77
83
|
.
|
78
84
|
.P
|
@@ -115,6 +121,12 @@ Use milestone to detect when issue was resolved\. Default is true
|
|
115
121
|
Add author of pull\-request in the end\. Default is true
|
116
122
|
.
|
117
123
|
.P
|
124
|
+
\-\-usernames\-as\-github\-logins
|
125
|
+
.
|
126
|
+
.P
|
127
|
+
Use GitHub tags instead of Markdown links for the author of an issue or pull\-request\.
|
128
|
+
.
|
129
|
+
.P
|
118
130
|
\-\-unreleased\-only
|
119
131
|
.
|
120
132
|
.P
|
@@ -130,7 +142,7 @@ Add to log unreleased closed issues\. Default is true
|
|
130
142
|
\-\-unreleased\-label [label]
|
131
143
|
.
|
132
144
|
.P
|
133
|
-
|
145
|
+
Setup custom label for unreleased closed issues section\. Default is "\fBUnreleased:\fR"
|
134
146
|
.
|
135
147
|
.P
|
136
148
|
\-\-[no\-]compare\-link
|
@@ -175,6 +187,12 @@ Change log will be filled only between specified tags
|
|
175
187
|
Change log will exclude specified tags
|
176
188
|
.
|
177
189
|
.P
|
190
|
+
\-\-exclude\-tags\-regex [REGEX]
|
191
|
+
.
|
192
|
+
.P
|
193
|
+
Apply a regular expression on tag names so that they can be excluded, for example: \-\-exclude\-tags\-regex "\.*+\ed{1,}"
|
194
|
+
.
|
195
|
+
.P
|
178
196
|
\-\-since\-tag x
|
179
197
|
.
|
180
198
|
.P
|
@@ -223,6 +241,30 @@ Create simple list from issues and pull requests\. Default is false\.
|
|
223
241
|
Put the unreleased changes in the specified release number\.
|
224
242
|
.
|
225
243
|
.P
|
244
|
+
\-\-release\-branch [RELEASE\-BRANCH]
|
245
|
+
.
|
246
|
+
.P
|
247
|
+
Limit pull requests to the release branch, such as master or release
|
248
|
+
.
|
249
|
+
.P
|
250
|
+
\-\-http\-cache
|
251
|
+
.
|
252
|
+
.P
|
253
|
+
Use HTTP Cache to cache Github API requests (useful for large repos) Default is true\.
|
254
|
+
.
|
255
|
+
.P
|
256
|
+
\-\-[no\-]cache\-file [CACHE\-FILE]
|
257
|
+
.
|
258
|
+
.P
|
259
|
+
Filename to use for cache\. Default is /tmp/github\-changelog\-http\-cache
|
260
|
+
.
|
261
|
+
.P
|
262
|
+
\-\-cache\-log [CACHE\-LOG]
|
263
|
+
.
|
264
|
+
.P
|
265
|
+
Filename to use for cache log\. Default is /tmp/github\-changelog\-logger\.log
|
266
|
+
.
|
267
|
+
.P
|
226
268
|
\-\-[no\-]verbose
|
227
269
|
.
|
228
270
|
.P
|
@@ -0,0 +1,290 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta http-equiv='content-type' value='text/html;charset=utf8'>
|
5
|
+
<meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'>
|
6
|
+
<title>git-generate-changelog(1) - Generate changelog from github</title>
|
7
|
+
<style type='text/css' media='all'>
|
8
|
+
/* style: man */
|
9
|
+
body#manpage {margin:0}
|
10
|
+
.mp {max-width:100ex;padding:0 9ex 1ex 4ex}
|
11
|
+
.mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
|
12
|
+
.mp h2 {margin:10px 0 0 0}
|
13
|
+
.mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
|
14
|
+
.mp h3 {margin:0 0 0 4ex}
|
15
|
+
.mp dt {margin:0;clear:left}
|
16
|
+
.mp dt.flush {float:left;width:8ex}
|
17
|
+
.mp dd {margin:0 0 0 9ex}
|
18
|
+
.mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
|
19
|
+
.mp pre {margin-bottom:20px}
|
20
|
+
.mp pre+h2,.mp pre+h3 {margin-top:22px}
|
21
|
+
.mp h2+pre,.mp h3+pre {margin-top:5px}
|
22
|
+
.mp img {display:block;margin:auto}
|
23
|
+
.mp h1.man-title {display:none}
|
24
|
+
.mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
|
25
|
+
.mp h2 {font-size:16px;line-height:1.25}
|
26
|
+
.mp h1 {font-size:20px;line-height:2}
|
27
|
+
.mp {text-align:justify;background:#fff}
|
28
|
+
.mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
|
29
|
+
.mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
|
30
|
+
.mp u {text-decoration:underline}
|
31
|
+
.mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
|
32
|
+
.mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
|
33
|
+
.mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
|
34
|
+
.mp b.man-ref {font-weight:normal;color:#434241}
|
35
|
+
.mp pre {padding:0 4ex}
|
36
|
+
.mp pre code {font-weight:normal;color:#434241}
|
37
|
+
.mp h2+pre,h3+pre {padding-left:0}
|
38
|
+
ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
|
39
|
+
ol.man-decor {width:100%}
|
40
|
+
ol.man-decor li.tl {text-align:left}
|
41
|
+
ol.man-decor li.tc {text-align:center;letter-spacing:4px}
|
42
|
+
ol.man-decor li.tr {text-align:right;float:right}
|
43
|
+
</style>
|
44
|
+
</head>
|
45
|
+
<!--
|
46
|
+
The following styles are deprecated and will be removed at some point:
|
47
|
+
div#man, div#man ol.man, div#man ol.head, div#man ol.man.
|
48
|
+
|
49
|
+
The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
|
50
|
+
.man-navigation should be used instead.
|
51
|
+
-->
|
52
|
+
<body id='manpage'>
|
53
|
+
<div class='mp' id='man'>
|
54
|
+
|
55
|
+
<div class='man-navigation' style='display:none'>
|
56
|
+
<a href="#NAME">NAME</a>
|
57
|
+
<a href="#SYNOPSIS">SYNOPSIS</a>
|
58
|
+
<a href="#DESCRIPTION">DESCRIPTION</a>
|
59
|
+
<a href="#OPTIONS">OPTIONS</a>
|
60
|
+
<a href="#EXAMPLES">EXAMPLES</a>
|
61
|
+
<a href="#AUTHOR">AUTHOR</a>
|
62
|
+
<a href="#REPORTING-BUGS">REPORTING BUGS</a>
|
63
|
+
<a href="#SEE-ALSO">SEE ALSO</a>
|
64
|
+
</div>
|
65
|
+
|
66
|
+
<ol class='man-decor man-head man head'>
|
67
|
+
<li class='tl'>git-generate-changelog(1)</li>
|
68
|
+
<li class='tc'></li>
|
69
|
+
<li class='tr'>git-generate-changelog(1)</li>
|
70
|
+
</ol>
|
71
|
+
|
72
|
+
<h2 id="NAME">NAME</h2>
|
73
|
+
<p class="man-name">
|
74
|
+
<code>git-generate-changelog</code> - <span class="man-whatis">Generate changelog from github</span>
|
75
|
+
</p>
|
76
|
+
|
77
|
+
<h2 id="SYNOPSIS">SYNOPSIS</h2>
|
78
|
+
|
79
|
+
<p><code>git generate-changelog</code> [-h|--help] [-u|--user] [-p|--project]</p>
|
80
|
+
|
81
|
+
<h2 id="DESCRIPTION">DESCRIPTION</h2>
|
82
|
+
|
83
|
+
<p>Automatically generate change log from your tags, issues, labels and pull requests on GitHub.</p>
|
84
|
+
|
85
|
+
<h2 id="OPTIONS">OPTIONS</h2>
|
86
|
+
|
87
|
+
<p> -u, --user [USER]</p>
|
88
|
+
|
89
|
+
<p> Username of the owner of target GitHub repo</p>
|
90
|
+
|
91
|
+
<p> -p, --project [PROJECT]</p>
|
92
|
+
|
93
|
+
<p> Name of project on GitHub</p>
|
94
|
+
|
95
|
+
<p> -t, --token [TOKEN]</p>
|
96
|
+
|
97
|
+
<p> To make more than 50 requests per hour your GitHub token is required. You can generate it at: https://github.com/settings/tokens/new</p>
|
98
|
+
|
99
|
+
<p> -f, --date-format [FORMAT]</p>
|
100
|
+
|
101
|
+
<p> Date format. Default is %Y-%m-%d</p>
|
102
|
+
|
103
|
+
<p> -o, --output [NAME]</p>
|
104
|
+
|
105
|
+
<p> Output file. Default is CHANGELOG.md</p>
|
106
|
+
|
107
|
+
<p> -b, --base [NAME]</p>
|
108
|
+
|
109
|
+
<p> Optional base file to append generated changes to.</p>
|
110
|
+
|
111
|
+
<p> --bugs-label [LABEL]</p>
|
112
|
+
|
113
|
+
<p> Setup custom label for bug-fixes section. Default is "<strong>Fixed bugs:</strong></p>
|
114
|
+
|
115
|
+
<p> --enhancement-label [LABEL]</p>
|
116
|
+
|
117
|
+
<p> Setup custom label for enhancements section. Default is "<strong>Implemented enhancements:</strong>"</p>
|
118
|
+
|
119
|
+
<p> --issues-label [LABEL]</p>
|
120
|
+
|
121
|
+
<p> Setup custom label for closed-issues section. Default is "<strong>Closed issues:</strong>"</p>
|
122
|
+
|
123
|
+
<p> --header-label [LABEL]</p>
|
124
|
+
|
125
|
+
<p> Setup custom header label. Default is "# Change Log"</p>
|
126
|
+
|
127
|
+
<p> --front-matter [JSON]</p>
|
128
|
+
|
129
|
+
<p> Add YAML front matter. Formatted as JSON because it's easier to add on the command line</p>
|
130
|
+
|
131
|
+
<p> --pr-label [LABEL]</p>
|
132
|
+
|
133
|
+
<p> Setup custom label for pull requests section. Default is "<strong>Merged pull requests:</strong>"</p>
|
134
|
+
|
135
|
+
<p> --[no-]issues</p>
|
136
|
+
|
137
|
+
<p> Include closed issues in changelog. Default is true</p>
|
138
|
+
|
139
|
+
<p> --[no-]issues-wo-labels</p>
|
140
|
+
|
141
|
+
<p> Include closed issues without labels in changelog. Default is true</p>
|
142
|
+
|
143
|
+
<p> --[no-]pr-wo-labels</p>
|
144
|
+
|
145
|
+
<p> Include pull requests without labels in changelog. Default is true</p>
|
146
|
+
|
147
|
+
<p> --[no-]pull-requests</p>
|
148
|
+
|
149
|
+
<p> Include pull-requests in changelog. Default is true</p>
|
150
|
+
|
151
|
+
<p> --[no-]filter-by-milestone</p>
|
152
|
+
|
153
|
+
<p> Use milestone to detect when issue was resolved. Default is true</p>
|
154
|
+
|
155
|
+
<p> --[no-]author</p>
|
156
|
+
|
157
|
+
<p> Add author of pull-request in the end. Default is true</p>
|
158
|
+
|
159
|
+
<p> --usernames-as-github-logins</p>
|
160
|
+
|
161
|
+
<p> Use GitHub tags instead of Markdown links for the author of an issue or pull-request.</p>
|
162
|
+
|
163
|
+
<p> --unreleased-only</p>
|
164
|
+
|
165
|
+
<p> Generate log from unreleased closed issues only.</p>
|
166
|
+
|
167
|
+
<p> --[no-]unreleased</p>
|
168
|
+
|
169
|
+
<p> Add to log unreleased closed issues. Default is true</p>
|
170
|
+
|
171
|
+
<p> --unreleased-label [label]</p>
|
172
|
+
|
173
|
+
<p> Setup custom label for unreleased closed issues section. Default is "<strong>Unreleased:</strong>"</p>
|
174
|
+
|
175
|
+
<p> --[no-]compare-link</p>
|
176
|
+
|
177
|
+
<p> Include compare link (Full Changelog) between older version and newer version. Default is true</p>
|
178
|
+
|
179
|
+
<p> --include-labels x,y,z</p>
|
180
|
+
|
181
|
+
<p> Only issues with the specified labels will be included in the changelog.</p>
|
182
|
+
|
183
|
+
<p> --exclude-labels x,y,z</p>
|
184
|
+
|
185
|
+
<p> Issues with the specified labels will be always excluded from changelog. Default is 'duplicate,question,invalid,wontfix'</p>
|
186
|
+
|
187
|
+
<p> --bug-labels x,y,z</p>
|
188
|
+
|
189
|
+
<p> Issues with the specified labels will be always added to "Fixed bugs" section. Default is 'bug,Bug'</p>
|
190
|
+
|
191
|
+
<p> --enhancement-labels x,y,z</p>
|
192
|
+
|
193
|
+
<p> Issues with the specified labels will be always added to "Implemented enhancements" section. Default is 'enhancement,Enhancement'</p>
|
194
|
+
|
195
|
+
<p> --between-tags x,y,z</p>
|
196
|
+
|
197
|
+
<p> Change log will be filled only between specified tags</p>
|
198
|
+
|
199
|
+
<p> --exclude-tags x,y,z</p>
|
200
|
+
|
201
|
+
<p> Change log will exclude specified tags</p>
|
202
|
+
|
203
|
+
<p> --exclude-tags-regex [REGEX]</p>
|
204
|
+
|
205
|
+
<p> Apply a regular expression on tag names so that they can be excluded, for example: --exclude-tags-regex ".*+\d{1,}"</p>
|
206
|
+
|
207
|
+
<p> --since-tag x</p>
|
208
|
+
|
209
|
+
<p> Change log will start after specified tag</p>
|
210
|
+
|
211
|
+
<p> --due-tag x</p>
|
212
|
+
|
213
|
+
<p> Change log will end before specified tag</p>
|
214
|
+
|
215
|
+
<p> --max-issues [NUMBER]</p>
|
216
|
+
|
217
|
+
<p> Max number of issues to fetch from GitHub. Default is unlimited</p>
|
218
|
+
|
219
|
+
<p> --release-url [URL]</p>
|
220
|
+
|
221
|
+
<p> The URL to point to for release links, in printf format (with the tag as variable).</p>
|
222
|
+
|
223
|
+
<p> --github-site [URL]</p>
|
224
|
+
|
225
|
+
<p> The Enterprise Github site on which your project is hosted.</p>
|
226
|
+
|
227
|
+
<p> --github-api [URL]</p>
|
228
|
+
|
229
|
+
<p> The enterprise endpoint to use for your Github API.</p>
|
230
|
+
|
231
|
+
<p> --simple-list</p>
|
232
|
+
|
233
|
+
<p> Create simple list from issues and pull requests. Default is false.</p>
|
234
|
+
|
235
|
+
<p> --future-release [RELEASE-VERSION]</p>
|
236
|
+
|
237
|
+
<p> Put the unreleased changes in the specified release number.</p>
|
238
|
+
|
239
|
+
<p> --release-branch [RELEASE-BRANCH]</p>
|
240
|
+
|
241
|
+
<p> Limit pull requests to the release branch, such as master or release</p>
|
242
|
+
|
243
|
+
<p> --http-cache</p>
|
244
|
+
|
245
|
+
<p> Use HTTP Cache to cache Github API requests (useful for large repos) Default is true.</p>
|
246
|
+
|
247
|
+
<p> --[no-]cache-file [CACHE-FILE]</p>
|
248
|
+
|
249
|
+
<p> Filename to use for cache. Default is /tmp/github-changelog-http-cache</p>
|
250
|
+
|
251
|
+
<p> --cache-log [CACHE-LOG]</p>
|
252
|
+
|
253
|
+
<p> Filename to use for cache log. Default is /tmp/github-changelog-logger.log</p>
|
254
|
+
|
255
|
+
<p> --[no-]verbose</p>
|
256
|
+
|
257
|
+
<p> Run verbosely. Default is true</p>
|
258
|
+
|
259
|
+
<p> -v, --version</p>
|
260
|
+
|
261
|
+
<p> Print version number</p>
|
262
|
+
|
263
|
+
<p> -h, --help</p>
|
264
|
+
|
265
|
+
<p> Displays Help</p>
|
266
|
+
|
267
|
+
<h2 id="EXAMPLES">EXAMPLES</h2>
|
268
|
+
|
269
|
+
<h2 id="AUTHOR">AUTHOR</h2>
|
270
|
+
|
271
|
+
<p>Written by Petr Korolev sky4winder@gmail.com</p>
|
272
|
+
|
273
|
+
<h2 id="REPORTING-BUGS">REPORTING BUGS</h2>
|
274
|
+
|
275
|
+
<p><<a href="https://github.com/skywinder/github-changelog-generator/issues" data-bare-link="true">https://github.com/skywinder/github-changelog-generator/issues</a>></p>
|
276
|
+
|
277
|
+
<h2 id="SEE-ALSO">SEE ALSO</h2>
|
278
|
+
|
279
|
+
<p><<a href="https://github.com/skywinder/github-changelog-generator/" data-bare-link="true">https://github.com/skywinder/github-changelog-generator/</a>></p>
|
280
|
+
|
281
|
+
|
282
|
+
<ol class='man-decor man-foot man foot'>
|
283
|
+
<li class='tl'></li>
|
284
|
+
<li class='tc'>November 2016</li>
|
285
|
+
<li class='tr'>git-generate-changelog(1)</li>
|
286
|
+
</ol>
|
287
|
+
|
288
|
+
</div>
|
289
|
+
</body>
|
290
|
+
</html>
|