how_is 18.0.4 → 18.0.5

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,212 +1,338 @@
1
1
  # Change Log
2
2
 
3
- All notable changes to this project will be documented in this file.
3
+ ## [v18.0.5](https://github.com/how-is/how_is/tree/v18.0.5) (2017-08-06)
4
+ [Full Changelog](https://github.com/how-is/how_is/compare/v18.0.4...v18.0.5)
4
5
 
5
- The format is based on [Keep a Changelog](http://keepachangelog.com) and
6
- this project adheres to [Semantic Versioning](http://semver.org).
6
+ **Closed issues:**
7
7
 
8
- ## [Unreleased]
8
+ - Track new contributors [\#172](https://github.com/how-is/how_is/issues/172)
9
+ - Stop using hashie's master branch [\#168](https://github.com/how-is/how_is/issues/168)
10
+ - Include JSON reports in HTML reports [\#110](https://github.com/how-is/how_is/issues/110)
9
11
 
10
- (Nothing so far.)
12
+ **Merged pull requests:**
11
13
 
12
- ## [v18.0.4]
14
+ - re-add Gemfile.lock to .gitignore [\#186](https://github.com/how-is/how_is/pull/186) ([duckinator](https://github.com/duckinator))
15
+ - List new contributors during period [\#184](https://github.com/how-is/how_is/pull/184) ([olleolleolle](https://github.com/olleolleolle))
16
+ - Remove Gemfile.lock. [\#183](https://github.com/how-is/how_is/pull/183) ([duckinator](https://github.com/duckinator))
17
+ - Gemfile: add pry as Git dep [\#182](https://github.com/how-is/how_is/pull/182) ([olleolleolle](https://github.com/olleolleolle))
18
+ - Add config file for github\_changelog\_generator [\#179](https://github.com/how-is/how_is/pull/179) ([olleolleolle](https://github.com/olleolleolle))
19
+ - RuboCop linting [\#178](https://github.com/how-is/how_is/pull/178) ([olleolleolle](https://github.com/olleolleolle))
20
+ - Use github\_changelog\_generator for generating the changelog. [\#177](https://github.com/how-is/how_is/pull/177) ([duckinator](https://github.com/duckinator))
21
+ - Include name of rules in RuboCop output [\#175](https://github.com/how-is/how_is/pull/175) ([olleolleolle](https://github.com/olleolleolle))
22
+ - Rubocop 0.49.1 [\#174](https://github.com/how-is/how_is/pull/174) ([olleolleolle](https://github.com/olleolleolle))
23
+ - Rubocop warning removal [\#173](https://github.com/how-is/how_is/pull/173) ([olleolleolle](https://github.com/olleolleolle))
13
24
 
14
- This release ([snapshot](https://github.com/how-is/how_is/tree/v18.0.4))
15
- is exclusively cleaning up RuboCop violations and updating dependencies.
16
- There should be no noticeable changes in functionality.
25
+ ## [v18.0.4](https://github.com/how-is/how_is/tree/v18.0.4) (2017-07-14)
26
+ [Full Changelog](https://github.com/how-is/how_is/compare/v18.0.3...v18.0.4)
17
27
 
18
- ### Miscellaneous
28
+ **Closed issues:**
19
29
 
20
- * Use Hashie stable; update Gemfile/add Gemfile.lock. ([#170](https://github.com/how-is/how_is/pull/170))
21
- * Pass -w to Ruby when running 'rake spec'. ([#169](https://github.com/how-is/how_is/pull/169))
22
- * Rubocop cleanup. ([#167](https://github.com/how-is/how_is/pull/167))
23
- * Gemfile: use Hashie from master branch. ([#166](https://github.com/how-is/how_is/pull/166))
24
- * Update github_api, contracst to latest. ([#165](https://github.com/how-is/how_is/pull/165))
25
- * Fix (a significant number of) RuboCop violations. ([#162](https://github.com/how-is/how_is/pull/162))
26
- * README: Drop from_config_file reference. ([#161](https://github.com/how-is/how_is/pull/161))
27
- * Move rubocop dependency to gemspec. ([#160](https://github.com/how-is/how_is/pull/160))
30
+ - HowIs::CLI refactor [\#156](https://github.com/how-is/how_is/issues/156)
31
+ - "Invalid file" error doesn't include filename. [\#155](https://github.com/how-is/how_is/issues/155)
32
+ - No report and Hashie::Mash\#default warnings [\#154](https://github.com/how-is/how_is/issues/154)
33
+ - Remove from\_config\_file from docs [\#153](https://github.com/how-is/how_is/issues/153)
34
+ - Fix warnings when running `rake spec` [\#124](https://github.com/how-is/how_is/issues/124)
35
+ - Number of issues closed in the past month [\#106](https://github.com/how-is/how_is/issues/106)
36
+ - Number of PRs merged in the past month. [\#105](https://github.com/how-is/how_is/issues/105)
37
+ - Number of PRs/issues opened in past month [\#99](https://github.com/how-is/how_is/issues/99)
38
+ - Number of PRs/issues not updated in the past month [\#87](https://github.com/how-is/how_is/issues/87)
28
39
 
29
- ## [v18.0.3]
40
+ **Merged pull requests:**
30
41
 
31
- This release ([snapshot](https://github.com/how-is/how_is/tree/v18.0.3))
32
- fixes the things the last few releases broke. I think. Hopefully.
42
+ - Release v18 0 4 [\#171](https://github.com/how-is/how_is/pull/171) ([duckinator](https://github.com/duckinator))
43
+ - Use Hashie stable; update Gemfile/add Gemfile.lock [\#170](https://github.com/how-is/how_is/pull/170) ([duckinator](https://github.com/duckinator))
44
+ - Pass -w to Ruby when running 'rake spec'. [\#169](https://github.com/how-is/how_is/pull/169) ([duckinator](https://github.com/duckinator))
45
+ - Rubocop cleanup [\#167](https://github.com/how-is/how_is/pull/167) ([duckinator](https://github.com/duckinator))
46
+ - Gemfile: use Hashie from master branch [\#166](https://github.com/how-is/how_is/pull/166) ([olleolleolle](https://github.com/olleolleolle))
47
+ - Update github\_api, contracts to latest [\#165](https://github.com/how-is/how_is/pull/165) ([olleolleolle](https://github.com/olleolleolle))
48
+ - Fix \(a significant number of\) RuboCop violations. [\#162](https://github.com/how-is/how_is/pull/162) ([duckinator](https://github.com/duckinator))
49
+ - README: Drop from\_config\_file reference [\#161](https://github.com/how-is/how_is/pull/161) ([olleolleolle](https://github.com/olleolleolle))
50
+ - move rubocop dep to gemspec [\#160](https://github.com/how-is/how_is/pull/160) ([duckinator](https://github.com/duckinator))
33
51
 
34
- It also includes some refactoring work, and the addition of a RuboCop
35
- configuration.
52
+ ## [v18.0.3](https://github.com/how-is/how_is/tree/v18.0.3) (2017-05-25)
53
+ [Full Changelog](https://github.com/how-is/how_is/compare/v18.0.2...v18.0.3)
36
54
 
37
- @duckinator enabled [Hound CI](https://houndci.com) for the repository, which
38
- should find any RuboCop violations that are added in PRs. The preexisting
39
- RuboCop violations (of which there are many) need to be addressed separately,
40
- and there will likely be an entire release dedicated to that.
55
+ **Closed issues:**
41
56
 
42
- ### Changes
57
+ - Issue: report.html renders only \#\<HowIs:0x007fae56966700\> [\#149](https://github.com/how-is/how_is/issues/149)
58
+ - Make CONFIG\_FILE optional when using --config. [\#41](https://github.com/how-is/how_is/issues/41)
43
59
 
44
- * Add RuboCop config ([#158](https://github.com/how-is/how_is/pull/158))
45
- * CLI parser refactor ([#157](https://github.com/how-is/how_is/pull/157))
46
- * exe/how_is: Reinstate to_json, to_html ([#150](https://github.com/how-is/how_is/pull/150), by @olleolleolle)
60
+ **Merged pull requests:**
47
61
 
48
- ## [v18.0.2]
62
+ - v18.0.3 -- CHANGELOG and version bump. [\#159](https://github.com/how-is/how_is/pull/159) ([duckinator](https://github.com/duckinator))
63
+ - Add RuboCop config [\#158](https://github.com/how-is/how_is/pull/158) ([duckinator](https://github.com/duckinator))
64
+ - CLI parser refactor [\#157](https://github.com/how-is/how_is/pull/157) ([duckinator](https://github.com/duckinator))
65
+ - exe/how\_is: Reinstate to\_json, to\_html [\#150](https://github.com/how-is/how_is/pull/150) ([olleolleolle](https://github.com/olleolleolle))
49
66
 
50
- This release ([snapshot](https://github.com/how-is/how_is/tree/v18.0.2))
51
- _actually_ fixes the `--config` flag, which made an unecessary method
52
- call.
67
+ ## [v18.0.2](https://github.com/how-is/how_is/tree/v18.0.2) (2017-03-05)
68
+ [Full Changelog](https://github.com/how-is/how_is/compare/v18.0.1...v18.0.2)
53
69
 
54
- ### Changes
70
+ **Merged pull requests:**
55
71
 
56
- * v18.0.2 - Remove unnecessary `.send()` call in exe/how_is.
57
- ([#148](https://github.com/how-is/how_is/pull/148))
72
+ - v18.0.2 - Remove unnecessary .send\(\) call in exe/how\_is. [\#148](https://github.com/how-is/how_is/pull/148) ([duckinator](https://github.com/duckinator))
58
73
 
59
- ## [v18.0.1]
74
+ ## [v18.0.1](https://github.com/how-is/how_is/tree/v18.0.1) (2017-03-05)
75
+ [Full Changelog](https://github.com/how-is/how_is/compare/v18.0.0...v18.0.1)
60
76
 
61
- This release ([snapshot](https://github.com/how-is/how_is/tree/v18.0.1))
62
- fixes the `--config` flag, which was previously using the wrong method.
77
+ **Merged pull requests:**
63
78
 
64
- ### Changes
79
+ - v18.0.1 - fix --config flag [\#147](https://github.com/how-is/how_is/pull/147) ([duckinator](https://github.com/duckinator))
65
80
 
66
- * v18.0.1 - fix `--config` flag.
67
- ([#147](https://github.com/how-is/how_is/pull/147))
81
+ ## [v18.0.0](https://github.com/how-is/how_is/tree/v18.0.0) (2017-03-05)
82
+ [Full Changelog](https://github.com/how-is/how_is/compare/v17.0.0...v18.0.0)
68
83
 
69
- ## [v18.0.0]
84
+ **Closed issues:**
70
85
 
71
- This release ([snapshot](https://github.com/how-is/how_is/tree/v18.0.0))
72
- vastly improves documentation, fixes the `--from` flag, and adds the
73
- `HowIs.from_hash` method (used by the
74
- [dashboard](https://github.com/how-is/dashboard)).
86
+ - Determine what is using open-uri [\#140](https://github.com/how-is/how_is/issues/140)
87
+ - :from != :from\_file [\#137](https://github.com/how-is/how_is/issues/137)
88
+ - Move --from documentation to README [\#136](https://github.com/how-is/how_is/issues/136)
89
+ - Why is rack required? [\#135](https://github.com/how-is/how_is/issues/135)
90
+ - Is :from\_file still an option? [\#134](https://github.com/how-is/how_is/issues/134)
91
+ - Move from\_config/from\_config\_file out of HowIs::CLI [\#52](https://github.com/how-is/how_is/issues/52)
75
92
 
76
- Pull Requests for this release can be [viewed on
77
- GitHub](https://github.com/how-is/how_is/pulls?utf8=&q=is%3Apr%20created%3A2017-02-10..2017-03-03).
93
+ **Merged pull requests:**
78
94
 
79
- ### Additions
95
+ - v18.0.0 release [\#146](https://github.com/how-is/how_is/pull/146) ([duckinator](https://github.com/duckinator))
96
+ - Add HowIs.from\_hash method [\#144](https://github.com/how-is/how_is/pull/144) ([indirect](https://github.com/indirect))
97
+ - Move documentation from design/ to README. [\#143](https://github.com/how-is/how_is/pull/143) ([duckinator](https://github.com/duckinator))
98
+ - Fix --from. [\#141](https://github.com/how-is/how_is/pull/141) ([duckinator](https://github.com/duckinator))
99
+ - Unpin Rack version. [\#139](https://github.com/how-is/how_is/pull/139) ([duckinator](https://github.com/duckinator))
100
+ - Documentation! [\#132](https://github.com/how-is/how_is/pull/132) ([duckinator](https://github.com/duckinator))
101
+ - Remove shebang line from lib/ file. [\#131](https://github.com/how-is/how_is/pull/131) ([duckinator](https://github.com/duckinator))
102
+ - Fix URL in gemspec. [\#130](https://github.com/how-is/how_is/pull/130) ([duckinator](https://github.com/duckinator))
103
+ - Gemspec: Description grammar [\#129](https://github.com/how-is/how_is/pull/129) ([olleolleolle](https://github.com/olleolleolle))
80
104
 
81
- * Add/improve inline code documentation.
82
- ([#132](https://github.com/how-is/how_is/pull/132))
83
- * Move documentation from design/ to README.
84
- ([#143](https://github.com/how-is/how_is/pull/143))
85
- * Add `HowIs.from_hash` method.
86
- ([#144](https://github.com/how-is/how_is/pull/144))
105
+ ## [v17.0.0](https://github.com/how-is/how_is/tree/v17.0.0) (2017-02-09)
106
+ [Full Changelog](https://github.com/how-is/how_is/compare/v16.0.0...v17.0.0)
87
107
 
88
- ### Changes
108
+ **Merged pull requests:**
89
109
 
90
- * Unpin Rack version. ([#139](https://github.com/how-is/how_is/pull/139))
91
- * Fix --from. ([#141](https://github.com/how-is/how_is/pull/141))
110
+ - Make from\_json parse ALL dates, not just some of them. [\#128](https://github.com/how-is/how_is/pull/128) ([duckinator](https://github.com/duckinator))
92
111
 
93
- ### Miscellaneous
112
+ ## [v16.0.0](https://github.com/how-is/how_is/tree/v16.0.0) (2017-02-09)
113
+ [Full Changelog](https://github.com/how-is/how_is/compare/v15.0.0...v16.0.0)
94
114
 
95
- Things that don't affect users of how\_is.
115
+ **Merged pull requests:**
96
116
 
97
- * Fix grammar in gemspec.
98
- ([#129](https://github.com/how-is/how_is/pull/129))
99
- * Fix URL in gemspec. ([#130](https://github.com/how-is/how_is/pull/130))
100
- * Remove shebang line from lib/ file.
101
- ([#131](https://github.com/how-is/how_is/pull/131))
117
+ - Make from\_json\(\) parse dates. [\#127](https://github.com/how-is/how_is/pull/127) ([duckinator](https://github.com/duckinator))
102
118
 
119
+ ## [v15.0.0](https://github.com/how-is/how_is/tree/v15.0.0) (2017-02-09)
120
+ [Full Changelog](https://github.com/how-is/how_is/compare/v14.0.0...v15.0.0)
103
121
 
104
- ## [v17.0.0]
122
+ **Closed issues:**
105
123
 
106
- This release ([snapshot](https://github.com/how-is/how_is/tree/v17.0.0))
107
- makes `HowIs.from_json` parse _all_ dates, not just _some_ dates.
108
- (Whoops.)
124
+ - include data from GitHub Pulse in Analysis [\#116](https://github.com/how-is/how_is/issues/116)
109
125
 
110
- ### Changes
126
+ **Merged pull requests:**
111
127
 
112
- * Make `HowIs.from_json` parse _all_ dates, not just some of them.
113
- ([#128](https://github.com/how-is/how_is/pull/128))
128
+ - Implement HowIs.from\_json\(\). [\#126](https://github.com/how-is/how_is/pull/126) ([duckinator](https://github.com/duckinator))
114
129
 
115
- ## [v16.0.0]
130
+ ## [v14.0.0](https://github.com/how-is/how_is/tree/v14.0.0) (2017-02-09)
131
+ [Full Changelog](https://github.com/how-is/how_is/compare/v13.0.0...v14.0.0)
132
+
133
+ **Closed issues:**
134
+
135
+ - Remove dead code [\#121](https://github.com/how-is/how_is/issues/121)
136
+ - Update documentation with API changes [\#118](https://github.com/how-is/how_is/issues/118)
137
+ - design an API [\#115](https://github.com/how-is/how_is/issues/115)
138
+ - correct readme [\#114](https://github.com/how-is/how_is/issues/114)
116
139
 
117
- This release ([snapshot](https://github.com/how-is/how_is/tree/v16.0.0))
118
- makes `HowIs.from_json` actually parse dates.
140
+ **Merged pull requests:**
119
141
 
120
- ### Changes
142
+ - Include Pulse data in JSON reports. [\#125](https://github.com/how-is/how_is/pull/125) ([duckinator](https://github.com/duckinator))
143
+ - Remove dead code. [\#123](https://github.com/how-is/how_is/pull/123) ([duckinator](https://github.com/duckinator))
144
+ - Update README.md about API redesign. [\#120](https://github.com/how-is/how_is/pull/120) ([duckinator](https://github.com/duckinator))
145
+ - CHANGELOG typo [\#119](https://github.com/how-is/how_is/pull/119) ([olleolleolle](https://github.com/olleolleolle))
121
146
 
122
- * Make `HowIs.from_json` parse dates.
123
- ([#127](https://github.com/how-is/how_is/pull/127))
147
+ ## [v13.0.0](https://github.com/how-is/how_is/tree/v13.0.0) (2017-02-09)
148
+ [Full Changelog](https://github.com/how-is/how_is/compare/v12.0.0...v13.0.0)
124
149
 
125
- ## [v15.0.0]
150
+ **Closed issues:**
126
151
 
127
- This release ([snapshot](https://github.com/how-is/how_is/tree/v15.0.0))
128
- implements `HowIs.from_json`.
152
+ - Add ISSUES.md [\#102](https://github.com/how-is/how_is/issues/102)
153
+ - Have change log link to tags [\#100](https://github.com/how-is/how_is/issues/100)
129
154
 
130
- ### Changes
155
+ **Merged pull requests:**
131
156
 
132
- * Implemented `How_is.from_json`.
133
- ([#126](https://github.com/how-is/how_is/pull/126))
157
+ - API redesign [\#117](https://github.com/how-is/how_is/pull/117) ([duckinator](https://github.com/duckinator))
158
+ - Update README.md [\#113](https://github.com/how-is/how_is/pull/113) ([duckinator](https://github.com/duckinator))
159
+ - remove pdfs and relax rack version [\#112](https://github.com/how-is/how_is/pull/112) ([indirect](https://github.com/indirect))
160
+ - \[design.md\] add 'information about how\_is' section. [\#109](https://github.com/how-is/how_is/pull/109) ([duckinator](https://github.com/duckinator))
161
+ - Specifications [\#108](https://github.com/how-is/how_is/pull/108) ([duckinator](https://github.com/duckinator))
162
+ - Have CHANGELOG link to code snapshots. [\#107](https://github.com/how-is/how_is/pull/107) ([duckinator](https://github.com/duckinator))
163
+ - Add link for ungrouped issues. [\#104](https://github.com/how-is/how_is/pull/104) ([duckinator](https://github.com/duckinator))
164
+ - Add ISSUES.md. [\#103](https://github.com/how-is/how_is/pull/103) ([duckinator](https://github.com/duckinator))
165
+ - CLI warning on single-word repository argument [\#98](https://github.com/how-is/how_is/pull/98) ([olleolleolle](https://github.com/olleolleolle))
134
166
 
135
- ## [v14.0.0]
167
+ ## [v12.0.0](https://github.com/how-is/how_is/tree/v12.0.0) (2016-12-11)
168
+ [Full Changelog](https://github.com/how-is/how_is/compare/v11.0.0...v12.0.0)
136
169
 
137
- This release ([snapshot](https://github.com/how-is/how_is/tree/v14.0.0))
138
- made JSON reports include Pulse data, thus making `HowIs.from_json()`
139
- not make any network requests at all.
170
+ **Closed issues:**
140
171
 
141
- ### Changes
172
+ - ZeroDivisionError [\#91](https://github.com/how-is/how_is/issues/91)
173
+ - Rake task\(s\) for regenerating example reports. [\#84](https://github.com/how-is/how_is/issues/84)
174
+ - make issue\_or\_pr\_summary use kwargs [\#78](https://github.com/how-is/how_is/issues/78)
175
+ - Define unimplemented BaseReport methods [\#77](https://github.com/how-is/how_is/issues/77)
176
+ - Extract BaseReport [\#76](https://github.com/how-is/how_is/issues/76)
177
+ - Release v11.0 [\#75](https://github.com/how-is/how_is/issues/75)
178
+ - convert average age/oldest/newest to lists [\#70](https://github.com/how-is/how_is/issues/70)
179
+ - newest PR/issue [\#69](https://github.com/how-is/how_is/issues/69)
142
180
 
143
- * Remove dead code. ([#123](https://github.com/how-is/how_is/pull/123))
144
- * Include Pulse data in JSON reports.
145
- ([#125](https://github.com/how-is/how_is/pull/125))
181
+ **Merged pull requests:**
146
182
 
147
- ## [v13.0.0]
183
+ - version bump to 12.0.0 [\#97](https://github.com/how-is/how_is/pull/97) ([duckinator](https://github.com/duckinator))
184
+ - rake generate =\> rake generate\_reports. [\#96](https://github.com/how-is/how_is/pull/96) ([duckinator](https://github.com/duckinator))
185
+ - Rake tasks [\#94](https://github.com/how-is/how_is/pull/94) ([duckinator](https://github.com/duckinator))
186
+ - Fix divide by zero when no issues [\#92](https://github.com/how-is/how_is/pull/92) ([duckinator](https://github.com/duckinator))
187
+ - Changelog v12.0 [\#89](https://github.com/how-is/how_is/pull/89) ([duckinator](https://github.com/duckinator))
188
+ - Refactoring Report + \*Report. [\#88](https://github.com/how-is/how_is/pull/88) ([duckinator](https://github.com/duckinator))
189
+ - Rake tasks [\#86](https://github.com/how-is/how_is/pull/86) ([duckinator](https://github.com/duckinator))
190
+ - Newest pr issue attempt 2 [\#85](https://github.com/how-is/how_is/pull/85) ([duckinator](https://github.com/duckinator))
191
+ - Convert issue/PR info to a list. [\#83](https://github.com/how-is/how_is/pull/83) ([duckinator](https://github.com/duckinator))
192
+ - Improve generated HTML, for easier debugging. [\#82](https://github.com/how-is/how_is/pull/82) ([duckinator](https://github.com/duckinator))
193
+ - Update readme [\#81](https://github.com/how-is/how_is/pull/81) ([duckinator](https://github.com/duckinator))
194
+ - Define unimplemented methods; make github\_pulse\_summary private. [\#80](https://github.com/how-is/how_is/pull/80) ([duckinator](https://github.com/duckinator))
195
+ - Extract BaseReport into its own file. [\#79](https://github.com/how-is/how_is/pull/79) ([duckinator](https://github.com/duckinator))
148
196
 
149
- This release ([snapshot](https://github.com/how-is/how_is/tree/v13.0.0))
150
- largely focused on an API redesign.
197
+ ## [v11.0.0](https://github.com/how-is/how_is/tree/v11.0.0) (2016-11-13)
198
+ [Full Changelog](https://github.com/how-is/how_is/compare/v10.0.0...v11.0.0)
151
199
 
152
- Pull requests for this release can be [viewed on
153
- GitHub](https://github.com/how-is/how_is/pulls?utf8=&q=is%3Apr%20created%3A2016-12-12..2017-02-09).
200
+ **Closed issues:**
154
201
 
155
- ### Changed
202
+ - Failing tests. [\#68](https://github.com/how-is/how_is/issues/68)
203
+ - `how\_is how-is/how\_is` is broken [\#61](https://github.com/how-is/how_is/issues/61)
204
+ - Rename export! to export\_file [\#57](https://github.com/how-is/how_is/issues/57)
205
+ - Remove how\_is/chart.rb [\#56](https://github.com/how-is/how_is/issues/56)
206
+ - Unknown option --report-file referenced in the README [\#51](https://github.com/how-is/how_is/issues/51)
207
+ - Specify period for reports [\#50](https://github.com/how-is/how_is/issues/50)
208
+ - Handle singular/plural PRs and issues properly [\#49](https://github.com/how-is/how_is/issues/49)
209
+ - HTML graph messes up "\(No label\)" graph label [\#48](https://github.com/how-is/how_is/issues/48)
210
+ - Document library usage. [\#45](https://github.com/how-is/how_is/issues/45)
211
+ - Use VCR instead of files containing API responses [\#37](https://github.com/how-is/how_is/issues/37)
212
+ - Make integration tests not rely on GitHub API [\#36](https://github.com/how-is/how_is/issues/36)
213
+ - Integration tests [\#26](https://github.com/how-is/how_is/issues/26)
214
+ - Links [\#18](https://github.com/how-is/how_is/issues/18)
215
+ - \[PDF\] Show labels outside of graph [\#8](https://github.com/how-is/how_is/issues/8)
156
216
 
157
- * API overhaul. ([#115](https://github.com/how-is/how_is/issues/115), [#117](https://github.com/how-is/how_is/pull/117))
158
- * Raise an exception/show a CLI warning if the provided repository name
159
- isn't in the "user/repo" format.
160
- ([#98](https://github.com/how-is/how_is/pull/98))
217
+ **Merged pull requests:**
161
218
 
162
- ## [v12.0.0]
219
+ - Add changelog. [\#73](https://github.com/how-is/how_is/pull/73) ([duckinator](https://github.com/duckinator))
220
+ - Fix failing tests. [\#72](https://github.com/how-is/how_is/pull/72) ([duckinator](https://github.com/duckinator))
221
+ - Add tests for --help, -h, --version, and -v. [\#67](https://github.com/how-is/how_is/pull/67) ([duckinator](https://github.com/duckinator))
222
+ - Test refactoring [\#66](https://github.com/how-is/how_is/pull/66) ([duckinator](https://github.com/duckinator))
223
+ - Handle singular/plural PRs and issues correctly. [\#65](https://github.com/how-is/how_is/pull/65) ([duckinator](https://github.com/duckinator))
224
+ - Remove duplicate period. [\#64](https://github.com/how-is/how_is/pull/64) ([duckinator](https://github.com/duckinator))
225
+ - Handle cases where there are no issues or PRs. [\#63](https://github.com/how-is/how_is/pull/63) ([duckinator](https://github.com/duckinator))
226
+ - Fix "No label" graph label. [\#62](https://github.com/how-is/how_is/pull/62) ([duckinator](https://github.com/duckinator))
227
+ - Rename export! to export\_file. [\#60](https://github.com/how-is/how_is/pull/60) ([duckinator](https://github.com/duckinator))
228
+ - Remove remnants of PDF-related stuff. [\#59](https://github.com/how-is/how_is/pull/59) ([duckinator](https://github.com/duckinator))
229
+ - FUCK YEAH DOCUMENTATION [\#58](https://github.com/how-is/how_is/pull/58) ([duckinator](https://github.com/duckinator))
230
+ - Specify time period for reports. [\#55](https://github.com/how-is/how_is/pull/55) ([duckinator](https://github.com/duckinator))
231
+ - SO LONG, PDF REPORTS. YOU WILL NOT BE MISSED. [\#54](https://github.com/how-is/how_is/pull/54) ([duckinator](https://github.com/duckinator))
232
+ - Document Ruby API. [\#53](https://github.com/how-is/how_is/pull/53) ([duckinator](https://github.com/duckinator))
233
+ - Update roadmap.markdown [\#47](https://github.com/how-is/how_is/pull/47) ([duckinator](https://github.com/duckinator))
234
+ - New roadmap. [\#46](https://github.com/how-is/how_is/pull/46) ([duckinator](https://github.com/duckinator))
163
235
 
164
- This release ([snapshot](https://github.com/how-is/how_is/tree/v12.0.0))
165
- largely focused on refactoring and developer experience improvements
166
- (e.g. adding Rake tasks and improving the generated JSON and HTML).
236
+ ## [v10.0.0](https://github.com/how-is/how_is/tree/v10.0.0) (2016-09-01)
237
+ [Full Changelog](https://github.com/how-is/how_is/compare/v9.0.0...v10.0.0)
167
238
 
168
- Pull Requests for this release can be [viewed on
169
- GitHub](https://github.com/how-is/how_is/pulls?utf8=&q=is%3Apr%20created%3A2016-11-11..2016-12-11).
239
+ **Closed issues:**
170
240
 
171
- ### Added
241
+ - --version is broken [\#42](https://github.com/how-is/how_is/issues/42)
242
+ - report generation fails [\#25](https://github.com/how-is/how_is/issues/25)
172
243
 
173
- - Include newest PR/issue in reports.
174
- ([#85](https://github.com/how-is/how_is/pull/85))
244
+ **Merged pull requests:**
175
245
 
176
- ### Changed
246
+ - Parser specs [\#43](https://github.com/how-is/how_is/pull/43) ([duckinator](https://github.com/duckinator))
177
247
 
178
- - Refactoring. ([#79](https://github.com/how-is/how_is/pull/79), [#80](https://github.com/how-is/how_is/pull/80), [#82](https://github.com/how-is/how_is/pull/82), [#88](https://github.com/how-is/how_is/pull/88))
179
- - JSON and HTML reports have nicer source.
180
- ([#82](https://github.com/how-is/how_is/pulls/82),
181
- [#84](https://github.com/how-is/how_is/pulls/84))
182
- - Handle generating a report on a repository with no open issues.
183
- ([#92](https://github.com/how-is/how_is/pull/92))
184
- - Add Rake tasks to make development easier. ([#86](https://github.com/how-is/how_is/pull/86), [#94](https://github.com/how-is/how_is/pull/94), [#96](https://github.com/how-is/how_is/pull/96))
185
- - PR/issue info is now displayed as lists instead of paragraphs. ([#83](https://github.com/how-is/how_is/pull/83))
248
+ ## [v9.0.0](https://github.com/how-is/how_is/tree/v9.0.0) (2016-08-20)
249
+ [Full Changelog](https://github.com/how-is/how_is/compare/v8.0.0...v9.0.0)
186
250
 
187
- ## [11.0.0]
251
+ **Closed issues:**
188
252
 
189
- This release ([snapshot](https://github.com/how-is/how_is/tree/v11.0.0))
190
- removed PDF reports, handles more edge cases, and improves tests.
253
+ - Help text is outdated. [\#33](https://github.com/how-is/how_is/issues/33)
254
+ - `how\_is rubygems/rubygems` raises contract violation [\#32](https://github.com/how-is/how_is/issues/32)
255
+ - Warning when executing how\_is [\#29](https://github.com/how-is/how_is/issues/29)
256
+ - Intermittent off-by-one date error in Analyzer\#average\_date\_for test [\#21](https://github.com/how-is/how_is/issues/21)
191
257
 
192
- ### Added
258
+ **Merged pull requests:**
193
259
 
194
- - Document Ruby API
260
+ - We're not using Cucumber + Aruba. [\#40](https://github.com/how-is/how_is/pull/40) ([duckinator](https://github.com/duckinator))
261
+ - Option parser refactor [\#39](https://github.com/how-is/how_is/pull/39) ([duckinator](https://github.com/duckinator))
262
+ - Fix first integration test [\#38](https://github.com/how-is/how_is/pull/38) ([duckinator](https://github.com/duckinator))
263
+ - Update documentation. [\#35](https://github.com/how-is/how_is/pull/35) ([duckinator](https://github.com/duckinator))
264
+ - Fix contract error [\#34](https://github.com/how-is/how_is/pull/34) ([duckinator](https://github.com/duckinator))
265
+ - Use the correct config file in integration tests. [\#31](https://github.com/how-is/how_is/pull/31) ([duckinator](https://github.com/duckinator))
266
+ - Remove redundant definiton of C. [\#30](https://github.com/how-is/how_is/pull/30) ([duckinator](https://github.com/duckinator))
267
+ - Fix Analyzer\#average\_age\_for test. [\#28](https://github.com/how-is/how_is/pull/28) ([duckinator](https://github.com/duckinator))
268
+ - Integration tests [\#27](https://github.com/how-is/how_is/pull/27) ([duckinator](https://github.com/duckinator))
195
269
 
196
- ### Changed
270
+ ## [v8.0.0](https://github.com/how-is/how_is/tree/v8.0.0) (2016-07-28)
271
+ [Full Changelog](https://github.com/how-is/how_is/compare/v7.0.0...v8.0.0)
197
272
 
198
- - Fixed command-line help text (it was incorrect in v10.0.0 and some earlier versions)
199
- - Handles generating reports for repositories with no issues and/or no PRs
200
- - Handles generating reports for repositories with no activity in the
201
- past month
202
- - Tests are improved
203
- - Tests no longer make actual network requests
273
+ ## [v7.0.0](https://github.com/how-is/how_is/tree/v7.0.0) (2016-07-28)
274
+ [Full Changelog](https://github.com/how-is/how_is/compare/v6.0.0...v7.0.0)
204
275
 
205
- ### Removed
276
+ ## [v6.0.0](https://github.com/how-is/how_is/tree/v6.0.0) (2016-07-28)
277
+ [Full Changelog](https://github.com/how-is/how_is/compare/v5.0.0...v6.0.0)
206
278
 
207
- - PDF reports
279
+ **Merged pull requests:**
208
280
 
209
- ## [10.0.0 and earlier]
281
+ - CLI specs [\#24](https://github.com/how-is/how_is/pull/24) ([duckinator](https://github.com/duckinator))
282
+ - Spelling in OptParser help for --config [\#23](https://github.com/how-is/how_is/pull/23) ([olleolleolle](https://github.com/olleolleolle))
210
283
 
211
- This changelog was started while working on v11.0.0.
212
- Prior to that, I have no idea what was added or when.
284
+ ## [v5.0.0](https://github.com/how-is/how_is/tree/v5.0.0) (2016-07-21)
285
+ [Full Changelog](https://github.com/how-is/how_is/compare/v4.0.0...v5.0.0)
286
+
287
+ ## [v4.0.0](https://github.com/how-is/how_is/tree/v4.0.0) (2016-07-19)
288
+ [Full Changelog](https://github.com/how-is/how_is/compare/v3.0.0...v4.0.0)
289
+
290
+ **Closed issues:**
291
+
292
+ - Monthly summary [\#19](https://github.com/how-is/how_is/issues/19)
293
+
294
+ **Merged pull requests:**
295
+
296
+ - Add text summary. [\#22](https://github.com/how-is/how_is/pull/22) ([duckinator](https://github.com/duckinator))
297
+
298
+ ## [v3.0.0](https://github.com/how-is/how_is/tree/v3.0.0) (2016-07-13)
299
+ [Full Changelog](https://github.com/how-is/how_is/compare/v2.0.0...v3.0.0)
300
+
301
+ **Closed issues:**
302
+
303
+ - Exception when running `how\_is duckinator/how\_is` from master [\#16](https://github.com/how-is/how_is/issues/16)
304
+
305
+ **Merged pull requests:**
306
+
307
+ - HTML links [\#20](https://github.com/how-is/how_is/pull/20) ([duckinator](https://github.com/duckinator))
308
+
309
+ ## [v2.0.0](https://github.com/how-is/how_is/tree/v2.0.0) (2016-06-27)
310
+ [Full Changelog](https://github.com/how-is/how_is/compare/v1.0.0...v2.0.0)
311
+
312
+ **Closed issues:**
313
+
314
+ - HTML exports [\#13](https://github.com/how-is/how_is/issues/13)
315
+ - When importing from JSON, don't require repository name as argument. [\#10](https://github.com/how-is/how_is/issues/10)
316
+ - Allow export to Ruby objects as well as files [\#7](https://github.com/how-is/how_is/issues/7)
317
+
318
+ **Merged pull requests:**
319
+
320
+ - HTML graphs [\#17](https://github.com/how-is/how_is/pull/17) ([duckinator](https://github.com/duckinator))
321
+
322
+ ## [v1.0.0](https://github.com/how-is/how_is/tree/v1.0.0) (2016-06-22)
323
+ **Closed issues:**
324
+
325
+ - Fix failing tests [\#15](https://github.com/how-is/how_is/issues/15)
326
+ - Update README [\#11](https://github.com/how-is/how_is/issues/11)
327
+ - Find a better name [\#2](https://github.com/how-is/how_is/issues/2)
328
+ - Metrics to track [\#1](https://github.com/how-is/how_is/issues/1)
329
+
330
+ **Merged pull requests:**
331
+
332
+ - waffle.io Badge [\#14](https://github.com/how-is/how_is/pull/14) ([waffle-iron](https://github.com/waffle-iron))
333
+ - Executable: Fail faster, use abort [\#9](https://github.com/how-is/how_is/pull/9) ([olleolleolle](https://github.com/olleolleolle))
334
+ - Rotate images with MiniMagick [\#5](https://github.com/how-is/how_is/pull/5) ([olleolleolle](https://github.com/olleolleolle))
335
+
336
+
337
+
338
+ \* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
data/Gemfile CHANGED
@@ -1,6 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- source 'https://rubygems.org'
3
+ source "https://rubygems.org"
4
+
5
+ # how_is only supports Ruby versions receiving general bug fixes ("normal
6
+ # maintenance"). This should be updated when a Ruby version goes into security
7
+ # maintenance. Ruby maintenance: https://www.ruby-lang.org/en/downloads/branches/
8
+ ruby "~> 2.3"
4
9
 
5
10
  # Specify your gem's dependencies in how_is.gemspec
6
11
  gemspec
12
+
13
+ # TODO: move Pry back to gemspec, once a version is released that does not rely
14
+ # on an ancient version of Slop. Reason: gemspecs can not handle git deps.
15
+ group :development do
16
+ gem "pry", git: "https://github.com/pry/pry.git"
17
+ end
data/Rakefile CHANGED
@@ -1,22 +1,26 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'bundler/gem_tasks'
4
- require 'rspec/core/rake_task'
5
- require 'timecop'
6
- require './spec/vcr_helper.rb'
7
- require 'how_is'
3
+ require "bundler/gem_tasks"
4
+ require "rspec/core/rake_task"
5
+ require "timecop"
6
+ require "./spec/vcr_helper.rb"
7
+ require "how_is"
8
8
 
9
9
  RSpec::Core::RakeTask.new(:spec) do |t|
10
10
  # Warning.warn() was added in Ruby 2.4.0, so don't use -w on older versions.
11
- t.ruby_opts = '-w -r./spec/capture_warnings.rb' if RUBY_VERSION >= '2.4.0'
11
+ t.ruby_opts = "-w -r./spec/capture_warnings.rb" if RUBY_VERSION >= "2.4.0"
12
12
  end
13
13
 
14
14
  task :default => :spec
15
15
 
16
+ task :generate_changelog do
17
+ sh "github_changelog_generator"
18
+ end
19
+
16
20
  # Helper functions used later in the Rakefile.
17
21
  class HelperFunctions
18
22
  def self.freeze_time(&_block)
19
- date = DateTime.parse('2016-11-01').new_offset(0)
23
+ date = DateTime.parse("2016-11-01").new_offset(0)
20
24
  Timecop.freeze(date) do
21
25
  yield
22
26
  end
@@ -31,37 +35,52 @@ class HelperFunctions
31
35
  format: format,
32
36
  }
33
37
 
34
- cassette = repository.tr('/', '-')
38
+ cassette = repository.tr("/", "-")
35
39
  VCR.use_cassette(cassette) do
36
40
  report = HowIs.generate_report(**options)
37
41
  end
38
42
 
39
43
  filename = "#{cassette}-report.#{format}"
40
44
  path = File.expand_path("spec/data/#{filename}", __dir__)
41
- File.open(path, 'w') do |f|
45
+ File.open(path, "w") do |f|
42
46
  f.puts report
43
47
  # HACK: Trailing newline is missing, otherwise.
44
- f.puts if format == 'html'
48
+ f.puts if format == "html"
45
49
  end
46
50
  end
47
51
  end
48
52
  end
49
53
 
50
54
  namespace :generate_reports do
51
- desc 'Generate example HTML reports.'
55
+ desc "Generate example HTML reports."
52
56
  task :html do
53
57
  %w[
54
58
  how-is/example-repository
55
59
  how-is/example-empty-repository
56
60
  ].each do |repo|
57
- HelperFunctions.generate_report(repo, 'html')
61
+ HelperFunctions.generate_report(repo, "html")
58
62
  end
59
63
  end
60
64
 
61
- desc 'Generate example JSON reports.'
65
+ desc "Generate example JSON reports."
62
66
  task :json do
63
- HelperFunctions.generate_report('how-is/example-repository', 'json')
67
+ HelperFunctions.generate_report("how-is/example-repository", "json")
64
68
  end
65
69
 
66
70
  task :all => [:html, :json]
67
71
  end
72
+
73
+ desc "List new contributors. Lists committers with no earlier commits then "\
74
+ "given since_date (as %Y-%m-%d). Defaults to first of current month."
75
+ task :new_contributors, [:user, :repo, :since_date] => [] do |_t, args|
76
+ require "how_is/contributions"
77
+ user = args[:user] || "how-is"
78
+ repo = args[:repo] || "how_is"
79
+ since_date = args[:since_date] || Time.now.strftime("%Y-%m-01")
80
+
81
+ puts "New committers:"
82
+ puts Contributions.new(github: Github.new(auto_pagination: true),
83
+ since_date: since_date,
84
+ user: user,
85
+ repo: repo).new_contributors
86
+ end