how_is 23.0.0 → 24.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c7aa606b0958adefd623b3eb2e0fce083ec1b1950d67e84c4f359cb3a9407696
4
- data.tar.gz: d98bf782f58102d3dfe440610a587e4be85a59e7710d5244992db29115592724
3
+ metadata.gz: 929a77a2520bd87d7067b5b9e0af99199d8d45f16056f105e3cdefc9da7475b5
4
+ data.tar.gz: d49f3e59bc73ea1b2edd90ca0524e1c38c0e619b29795e57005973652adf8b37
5
5
  SHA512:
6
- metadata.gz: ca20afb8eeb3d12aa9e2569fde59c3a01986b482b5c25b94c77cc29da19a335d16326b0f151109c123a5b68ddea9dc13928f310bb1d24af5e136585508c14ad7
7
- data.tar.gz: 2d4deb12aa5ff8fc583da3ea4cdd7d925b25f03c1cdce8faefb722b813d63e0b068218fe06ba30750840e3345ec0859ed49300045f9220b36c3986fd46b215a7
6
+ metadata.gz: 0c731eb03f270014a8b48bbeb5fa24b5cb1e5602ae700f58ba9ab72b47afee5a3fa645b9fb191717ceea5457610752510e9909c4c0feafc8383e6cedb52c56fe
7
+ data.tar.gz: b026dcd32d434658c9b4acfd7679d2971adbb0a72c1523198f98f8940afd9f47626f9d1b854f2670d2f7ebb458c03188494aacffce4d30676a5fead0088f975b
data/.travis.yml CHANGED
@@ -2,3 +2,20 @@ language: ruby
2
2
  rvm:
3
3
  - 2.3.3
4
4
  - 2.4.1
5
+ - 2.5.0
6
+ - ruby-head
7
+
8
+ matrix:
9
+ allow_failures:
10
+ - rvm:
11
+ - ruby-head
12
+
13
+ # See https://bors.tech/documentation/getting-started/
14
+ branches:
15
+ only:
16
+ # This is where pull requests from "bors r+" are built.
17
+ - staging
18
+ # This is where pull requests from "bors try" are built.
19
+ - trying
20
+ # Build pull requests.
21
+ - master
data/CHANGELOG.md CHANGED
@@ -1,10 +1,26 @@
1
1
  # Change Log
2
2
 
3
+ ## [v24.0.0](https://github.com/how-is/how_is/tree/v24.0.0) (2018-03-17)
4
+ [Full Changelog](https://github.com/how-is/how_is/compare/v23.0.0...v24.0.0)
5
+
6
+ **Merged pull requests:**
7
+
8
+ - Improve error output; update README. [\#224](https://github.com/how-is/how_is/pull/224) ([duckinator](https://github.com/duckinator))
9
+ - update .travis.yml. [\#223](https://github.com/how-is/how_is/pull/223) ([duckinator](https://github.com/duckinator))
10
+
11
+ ## [v23.0.0](https://github.com/how-is/how_is/tree/v23.0.0) (2018-01-19)
12
+ [Full Changelog](https://github.com/how-is/how_is/compare/v22.0.0...v23.0.0)
13
+
14
+ **Merged pull requests:**
15
+
16
+ - Make config-based reports work again. [\#221](https://github.com/how-is/how_is/pull/221) ([duckinator](https://github.com/duckinator))
17
+
3
18
  ## [v22.0.0](https://github.com/how-is/how_is/tree/v22.0.0) (2018-01-19)
4
19
  [Full Changelog](https://github.com/how-is/how_is/compare/v21.0.0...v22.0.0)
5
20
 
6
21
  **Merged pull requests:**
7
22
 
23
+ - Make CLI parser store the date when passed --config. [\#220](https://github.com/how-is/how_is/pull/220) ([duckinator](https://github.com/duckinator))
8
24
  - Update readme [\#219](https://github.com/how-is/how_is/pull/219) ([duckinator](https://github.com/duckinator))
9
25
 
10
26
  ## [v21.0.0](https://github.com/how-is/how_is/tree/v21.0.0) (2018-01-19)
data/README.md CHANGED
@@ -16,6 +16,41 @@ If you want to contribute or discuss how_is, you can [join Bundler's slack](http
16
16
 
17
17
  $ gem install how_is
18
18
 
19
+ ## Configuration
20
+
21
+ HowIs can hit the default API limits for GitHub for even small reports.
22
+
23
+ To avoid errors due to hitting rate limits, HowIs requires a Personal
24
+ Access Token, which GitHub provides with higher rate limits.
25
+
26
+ ### Acquiring A Personal Access Token
27
+
28
+ To acquire a personal access token:
29
+
30
+ 1. Go to: https://github.com/settings/tokens/new
31
+ 2. For `Token description`, enter `how_is CLI client`.
32
+ 3. Scroll to the bottom of the page.
33
+ 4. Click `Generate token`. This will take you to a new page.
34
+ 5. Save the token somewhere. **You can't access it again.**
35
+
36
+ **NOTE:** HowIs _only_ needs read access.
37
+
38
+ #### Using The Token
39
+
40
+ You now need to define the `HOWIS_GITHUB_TOKEN` and `HOWIS_BASIC_AUTH`
41
+ variables.
42
+
43
+ An example of how to do so for the Bash shell is provided below.
44
+
45
+ Make sure to replaceall instances of `<TOKEN>` with the actual token,
46
+ and `<USERNAME>` with your GitHub username.
47
+
48
+ ```bash
49
+ export HOWIS_GITHUB_TOKEN=<TOKEN>
50
+ export HOWIS_BASIC_AUTH="<USERNAME>:<TOKEN>"
51
+ ```
52
+
53
+
19
54
  ## Usage
20
55
 
21
56
  ### Command Line
@@ -27,7 +62,6 @@ or
27
62
 
28
63
  $ how_is REPOSITORY --config CONFIG_FILENAME
29
64
 
30
-
31
65
  #### Example \#1
32
66
 
33
67
  $ how_is rubygems/rubygems 2016-12-01 --output report-2016-12-01.html
data/Rakefile CHANGED
@@ -16,6 +16,10 @@ task :generate_changelog do
16
16
  sh "github_changelog_generator"
17
17
  end
18
18
 
19
+ task :future_changelog do
20
+ sh "github_changelog_generator --future-release v#{HowIs::VERSION}"
21
+ end
22
+
19
23
  # Helper functions used later in the Rakefile.
20
24
  class HelperFunctions
21
25
  def self.freeze_time(&_block)
data/bors.toml ADDED
@@ -0,0 +1,8 @@
1
+ status = [
2
+ "continuous-integration/travis-ci/push",
3
+ #"continuous-integration/appveyor/branch"
4
+ ]
5
+
6
+ # Uncomment this to use a two hour timeout.
7
+ # The default is one hour.
8
+ #timeout_sec = 7200
data/how_is.gemspec CHANGED
@@ -24,6 +24,8 @@ Gem::Specification.new do |spec|
24
24
 
25
25
  spec.add_runtime_dependency "okay", "~> 7.0.0"
26
26
 
27
+ spec.add_runtime_dependency "json"
28
+
27
29
  spec.add_development_dependency "bundler", "~> 1.16"
28
30
  spec.add_development_dependency "rake", "~> 12.3"
29
31
  spec.add_development_dependency "rspec", "~> 3.7"
@@ -7,9 +7,24 @@ require "okay/graphql"
7
7
 
8
8
  module HowIs
9
9
  module Sources
10
+ # Contains configuration information for GitHub-based sources.
10
11
  class Github
11
- BASIC_AUTH = ENV["HOWIS_BASIC_AUTH"]
12
- ACCESS_TOKEN = ENV["HOWIS_GITHUB_TOKEN"]
12
+ # An exception which is only raised if an environment variable
13
+ # is undefined.
14
+ class ConfigurationError < StandardError
15
+ def initialize(env_variable)
16
+ super("environment variable #{env_variable} not defined." \
17
+ " See README.md for details.")
18
+ end
19
+ end
20
+
21
+ # A GitHub Personal Access Token.
22
+ ACCESS_TOKEN = ENV["HOWIS_GITHUB_TOKEN"]
23
+ raise ConfigurationError, "HOWIS_GITHUB_TOKEN" if ACCESS_TOKEN.nil?
24
+
25
+ # "<github username>:<personal access token>"
26
+ BASIC_AUTH = ENV["HOWIS_BASIC_AUTH"]
27
+ raise ConfigurationError, "HOWIS_BASIC_AUTH" if BASIC_AUTH.nil?
13
28
 
14
29
  # Used for the the Authorization header when talking to the
15
30
  # GitHub API.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module HowIs
4
- VERSION = "23.0.0"
4
+ VERSION = "24.0.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: how_is
3
3
  version: !ruby/object:Gem::Version
4
- version: 23.0.0
4
+ version: 24.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ellen Marie Dash
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-01-19 00:00:00.000000000 Z
11
+ date: 2018-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: github_api
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: 7.0.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: json
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -204,6 +218,7 @@ files:
204
218
  - bin/console
205
219
  - bin/prerelease-generate-changelog
206
220
  - bin/setup
221
+ - bors.toml
207
222
  - design/01-functionality.md
208
223
  - design/02-implementation.md
209
224
  - exe/how_is
@@ -260,7 +275,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
260
275
  version: '0'
261
276
  requirements: []
262
277
  rubyforge_project:
263
- rubygems_version: 2.7.3
278
+ rubygems_version: 2.7.6
264
279
  signing_key:
265
280
  specification_version: 4
266
281
  summary: Quantify the health of a GitHub repository.