googleauth 0.8.1 → 0.16.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.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/CODEOWNERS +7 -0
  3. data/.github/workflows/release.yml +39 -0
  4. data/.kokoro/build.bat +9 -1
  5. data/.kokoro/continuous/linux.cfg +12 -2
  6. data/.kokoro/continuous/osx.cfg +5 -0
  7. data/.kokoro/continuous/post.cfg +30 -0
  8. data/.kokoro/continuous/windows.cfg +27 -1
  9. data/.kokoro/presubmit/linux.cfg +11 -1
  10. data/.kokoro/presubmit/osx.cfg +5 -0
  11. data/.kokoro/presubmit/windows.cfg +27 -1
  12. data/.kokoro/release.cfg +42 -1
  13. data/.kokoro/trampoline.bat +10 -0
  14. data/.repo-metadata.json +5 -0
  15. data/.rubocop.yml +8 -2
  16. data/CHANGELOG.md +94 -20
  17. data/Gemfile +7 -7
  18. data/{COPYING → LICENSE} +0 -0
  19. data/README.md +12 -15
  20. data/Rakefile +48 -5
  21. data/googleauth.gemspec +7 -3
  22. data/integration/helper.rb +31 -0
  23. data/integration/id_tokens/key_source_test.rb +74 -0
  24. data/lib/googleauth.rb +1 -0
  25. data/lib/googleauth/application_default.rb +2 -2
  26. data/lib/googleauth/compute_engine.rb +45 -20
  27. data/lib/googleauth/credentials.rb +445 -71
  28. data/lib/googleauth/credentials_loader.rb +11 -9
  29. data/lib/googleauth/iam.rb +1 -1
  30. data/lib/googleauth/id_tokens.rb +233 -0
  31. data/lib/googleauth/id_tokens/errors.rb +71 -0
  32. data/lib/googleauth/id_tokens/key_sources.rb +396 -0
  33. data/lib/googleauth/id_tokens/verifier.rb +142 -0
  34. data/lib/googleauth/json_key_reader.rb +6 -2
  35. data/lib/googleauth/scope_util.rb +1 -1
  36. data/lib/googleauth/service_account.rb +42 -23
  37. data/lib/googleauth/signet.rb +9 -6
  38. data/lib/googleauth/stores/file_token_store.rb +1 -0
  39. data/lib/googleauth/stores/redis_token_store.rb +1 -0
  40. data/lib/googleauth/user_authorizer.rb +6 -1
  41. data/lib/googleauth/user_refresh.rb +2 -2
  42. data/lib/googleauth/version.rb +1 -1
  43. data/lib/googleauth/web_user_authorizer.rb +16 -14
  44. data/rakelib/devsite_builder.rb +45 -0
  45. data/rakelib/link_checker.rb +64 -0
  46. data/rakelib/repo_metadata.rb +59 -0
  47. data/spec/googleauth/apply_auth_examples.rb +28 -5
  48. data/spec/googleauth/compute_engine_spec.rb +69 -13
  49. data/spec/googleauth/credentials_spec.rb +492 -165
  50. data/spec/googleauth/service_account_spec.rb +31 -16
  51. data/spec/googleauth/signet_spec.rb +46 -7
  52. data/spec/googleauth/user_authorizer_spec.rb +21 -1
  53. data/spec/googleauth/user_refresh_spec.rb +1 -1
  54. data/spec/googleauth/web_user_authorizer_spec.rb +6 -0
  55. data/test/helper.rb +33 -0
  56. data/test/id_tokens/key_sources_test.rb +240 -0
  57. data/test/id_tokens/verifier_test.rb +269 -0
  58. metadata +49 -13
  59. data/.kokoro/windows.sh +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 25babf8085ee83a898e246364f5f177b31cdaebd1a7721650a4601ca9a568335
4
- data.tar.gz: a62751620c543425fc7a8d83b07bb2a77b0d5e94c7dc5a790808115c17173f07
3
+ metadata.gz: 48c5d834a399888143ea83075944e2986844be9c39b0932a5a3ffc4b5d39ddaa
4
+ data.tar.gz: 5967e63455f08bbceae1f4ca0860d043fecea202c34d4792c8e868e9f0a7645a
5
5
  SHA512:
6
- metadata.gz: 6309bd3fe40fecbb4a19e4cb0196400a4a8fe75dabe540c878eada5e454a1b1491cbbdad537523689901be4f51f6a8270440fc7f1535660c730298b764e77aa0
7
- data.tar.gz: 52c8eb2d015b1442ff2c13bd13b86c40931d50f1eeedbc6fcaa2c278bfc2ed3a29199685f57c3540f110d90f693a32cee92e3ee1305da9507c4a307cc2f15555
6
+ metadata.gz: 805fa56609f1574e85ca263be3cb8880f823db525951380ca5c3499d6600304ef81b643ce02879ea2fb4863f2ecefbbe8b37d4be658f64cb86a056fb6b67b48d
7
+ data.tar.gz: 57db9596321060154f8da5438ecaf96744d9102adde97b45b824c63b4c4ea2b246a1d85887de263f06d723f960dc27721509cc408af9f0cf29631ef1554cac56
@@ -0,0 +1,7 @@
1
+ # Code owners file.
2
+ # This file controls who is tagged for review for any given pull request.
3
+ #
4
+ # For syntax help see:
5
+ # https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners#codeowners-syntax
6
+
7
+ * @googleapis/yoshi-ruby
@@ -0,0 +1,39 @@
1
+ on:
2
+ schedule:
3
+ - cron: '29 9 * * *'
4
+ workflow_dispatch:
5
+
6
+ name: release
7
+ jobs:
8
+ release-please:
9
+ env:
10
+ ENABLE_RELEASE_PLEASE: ${{ secrets.ENABLE_RELEASE_PLEASE }}
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - name: ReleasePlease
14
+ id: release-please
15
+ if: ${{ env.ENABLE_RELEASE_PLEASE || github.event_name == 'workflow_dispatch' }}
16
+ uses: GoogleCloudPlatform/release-please-action@v2
17
+ with:
18
+ command: release-pr
19
+ token: ${{ secrets.YOSHI_CODE_BOT_TOKEN }}
20
+ fork: true
21
+ release-type: ruby
22
+ package-name: google-auth-library-ruby
23
+ version-file: lib/googleauth/version.rb
24
+ monorepo-tags: true
25
+ bump-minor-pre-major: true
26
+ - name: ReleaseLabel
27
+ id: release-label
28
+ if: ${{ steps.release-please.outputs.pr }}
29
+ uses: actions/github-script@v2
30
+ with:
31
+ github-token: ${{secrets.YOSHI_APPROVER_TOKEN}}
32
+ script: |
33
+ core.info("Labeling release");
34
+ github.issues.addLabels({
35
+ owner: 'googleapis',
36
+ repo: 'google-auth-library-ruby',
37
+ issue_number: ${{ steps.release-please.outputs.pr }},
38
+ labels: ["autorelease: pending", "kokoro:force-run"]
39
+ });
data/.kokoro/build.bat CHANGED
@@ -5,4 +5,12 @@ REM * Merges run all non-acceptance tests for every library, and acceptance tes
5
5
  REM * Nightlies run all acceptance tests for every library.
6
6
  REM Currently only runs tests on 2.5.1
7
7
 
8
- "C:\Program Files\Git\bin\bash.exe" github/google-auth-library-ruby/.kokoro/windows.sh
8
+ SET url="https://raw.githubusercontent.com/googleapis/google-cloud-ruby/master/.kokoro/build.bat"
9
+
10
+ SET "download=powershell -C Invoke-WebRequest -Uri %url% -OutFile master-build.bat"
11
+
12
+ SET EXIT_STATUS=1
13
+
14
+ %download% && master-build.bat && SET EXIT_STATUS=0
15
+
16
+ EXIT %EXIT_STATUS%
@@ -3,13 +3,23 @@
3
3
  build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
4
4
 
5
5
  # Configure the docker image for kokoro-trampoline.
6
- # Dockerfile is maintained at https://github.com/googleapis/google-cloud-ruby/tree/master/.kokoro/docker/ruby-multi
6
+ # Dockerfile is maintained at https://github.com/googleapis/google-cloud-ruby/tree/master/.kokoro/docker/multi
7
7
  env_vars: {
8
8
  key: "TRAMPOLINE_IMAGE"
9
- value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/ruby-multi"
9
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/multi"
10
10
  }
11
11
 
12
12
  env_vars: {
13
13
  key: "TRAMPOLINE_BUILD_FILE"
14
14
  value: "github/google-auth-library-ruby/.kokoro/build.sh"
15
15
  }
16
+
17
+ env_vars: {
18
+ key: "TRAMPOLINE_SCRIPT"
19
+ value: "trampoline_v1.py"
20
+ }
21
+
22
+ env_vars: {
23
+ key: "OS"
24
+ value: "linux"
25
+ }
@@ -1,3 +1,8 @@
1
1
  # Format: //devtools/kokoro/config/proto/build.proto
2
2
 
3
3
  build_file: "google-auth-library-ruby/.kokoro/osx.sh"
4
+
5
+ env_vars: {
6
+ key: "OS"
7
+ value: "osx"
8
+ }
@@ -0,0 +1,30 @@
1
+ # Format: //devtools/kokoro/config/proto/build.proto
2
+
3
+ build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
4
+
5
+ # Configure the docker image for kokoro-trampoline.
6
+ # Dockerfile is maintained at https://github.com/googleapis/google-cloud-ruby/tree/master/.kokoro/docker/multi-node
7
+ env_vars: {
8
+ key: "TRAMPOLINE_IMAGE"
9
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/multi-node"
10
+ }
11
+
12
+ env_vars: {
13
+ key: "TRAMPOLINE_BUILD_FILE"
14
+ value: "github/google-auth-library-ruby/.kokoro/build.sh"
15
+ }
16
+
17
+ env_vars: {
18
+ key: "TRAMPOLINE_SCRIPT"
19
+ value: "trampoline_v1.py"
20
+ }
21
+
22
+ env_vars: {
23
+ key: "OS"
24
+ value: "linux"
25
+ }
26
+
27
+ env_vars: {
28
+ key: "JOB_TYPE"
29
+ value: "post"
30
+ }
@@ -1,3 +1,29 @@
1
1
  # Format: //devtools/kokoro/config/proto/build.proto
2
2
 
3
- build_file: "google-auth-library-ruby/.kokoro/build.bat"
3
+ build_file: "google-auth-library-ruby/.kokoro/trampoline.bat"
4
+
5
+ # Configure the docker image for kokoro-trampoline.
6
+ env_vars: {
7
+ key: "TRAMPOLINE_IMAGE"
8
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/windows"
9
+ }
10
+
11
+ env_vars: {
12
+ key: "TRAMPOLINE_BUILD_FILE"
13
+ value: "github/google-auth-library-ruby/.kokoro/build.bat"
14
+ }
15
+
16
+ env_vars: {
17
+ key: "TRAMPOLINE_SCRIPT"
18
+ value: "trampoline_windows.py"
19
+ }
20
+
21
+ env_vars: {
22
+ key: "REPO_DIR"
23
+ value: "google-auth-library-ruby"
24
+ }
25
+
26
+ env_vars: {
27
+ key: "OS"
28
+ value: "windows"
29
+ }
@@ -5,10 +5,20 @@ build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
5
5
  # Configure the docker image for kokoro-trampoline.
6
6
  env_vars: {
7
7
  key: "TRAMPOLINE_IMAGE"
8
- value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/ruby-multi"
8
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/multi"
9
9
  }
10
10
 
11
11
  env_vars: {
12
12
  key: "TRAMPOLINE_BUILD_FILE"
13
13
  value: "github/google-auth-library-ruby/.kokoro/build.sh"
14
14
  }
15
+
16
+ env_vars: {
17
+ key: "TRAMPOLINE_SCRIPT"
18
+ value: "trampoline_v1.py"
19
+ }
20
+
21
+ env_vars: {
22
+ key: "OS"
23
+ value: "linux"
24
+ }
@@ -1,3 +1,8 @@
1
1
  # Format: //devtools/kokoro/config/proto/build.proto
2
2
 
3
3
  build_file: "google-auth-library-ruby/.kokoro/osx.sh"
4
+
5
+ env_vars: {
6
+ key: "OS"
7
+ value: "osx"
8
+ }
@@ -1,3 +1,29 @@
1
1
  # Format: //devtools/kokoro/config/proto/build.proto
2
2
 
3
- build_file: "google-auth-library-ruby/.kokoro/build.bat"
3
+ build_file: "google-auth-library-ruby/.kokoro/trampoline.bat"
4
+
5
+ # Configure the docker image for kokoro-trampoline.
6
+ env_vars: {
7
+ key: "TRAMPOLINE_IMAGE"
8
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/windows"
9
+ }
10
+
11
+ env_vars: {
12
+ key: "TRAMPOLINE_BUILD_FILE"
13
+ value: "github/google-auth-library-ruby/.kokoro/build.bat"
14
+ }
15
+
16
+ env_vars: {
17
+ key: "TRAMPOLINE_SCRIPT"
18
+ value: "trampoline_windows.py"
19
+ }
20
+
21
+ env_vars: {
22
+ key: "REPO_DIR"
23
+ value: "google-auth-library-ruby"
24
+ }
25
+
26
+ env_vars: {
27
+ key: "OS"
28
+ value: "windows"
29
+ }
data/.kokoro/release.cfg CHANGED
@@ -17,6 +17,37 @@ before_action {
17
17
  }
18
18
  }
19
19
 
20
+ # Fetch magictoken to use with Magic Github Proxy
21
+ before_action {
22
+ fetch_keystore {
23
+ keystore_resource {
24
+ keystore_config_id: 73713
25
+ keyname: "releasetool-magictoken"
26
+ backend_type: FASTCONFIGPUSH
27
+ }
28
+ }
29
+ }
30
+
31
+ # Fetch api key to use with Magic Github Proxy
32
+ before_action {
33
+ fetch_keystore {
34
+ keystore_resource {
35
+ keystore_config_id: 73713
36
+ keyname: "magic-github-proxy-api-key"
37
+ backend_type: FASTCONFIGPUSH
38
+ }
39
+ }
40
+ }
41
+
42
+ before_action {
43
+ fetch_keystore {
44
+ keystore_resource {
45
+ keystore_config_id: 73713
46
+ keyname: "docuploader_service_account"
47
+ }
48
+ }
49
+ }
50
+
20
51
  # Download resources for system tests (service account key, etc.)
21
52
  gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/google-cloud-ruby"
22
53
 
@@ -29,7 +60,7 @@ build_file: "google-auth-library-ruby/.kokoro/trampoline.sh"
29
60
  # Configure the docker image for kokoro-trampoline.
30
61
  env_vars: {
31
62
  key: "TRAMPOLINE_IMAGE"
32
- value: "gcr.io/cloud-devrel-kokoro-resources/google-cloud-ruby/ruby-release"
63
+ value: "gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/release"
33
64
  }
34
65
 
35
66
  env_vars: {
@@ -37,6 +68,11 @@ env_vars: {
37
68
  value: "github/google-auth-library-ruby/.kokoro/build.sh"
38
69
  }
39
70
 
71
+ env_vars: {
72
+ key: "TRAMPOLINE_SCRIPT"
73
+ value: "trampoline_v1.py"
74
+ }
75
+
40
76
  env_vars: {
41
77
  key: "JOB_TYPE"
42
78
  value: "release"
@@ -51,3 +87,8 @@ env_vars: {
51
87
  key: "REPO_DIR"
52
88
  value: "github/google-auth-library-ruby"
53
89
  }
90
+
91
+ env_vars: {
92
+ key: "PACKAGE"
93
+ value: "googleauth"
94
+ }
@@ -0,0 +1,10 @@
1
+
2
+ SET url="https://raw.githubusercontent.com/googleapis/google-cloud-ruby/master/.kokoro/trampoline.bat"
3
+
4
+ SET "download=powershell -C Invoke-WebRequest -Uri %url% -OutFile master-trampoline.bat"
5
+
6
+ SET EXIT_STATUS=1
7
+
8
+ %download% && master-trampoline.bat && SET EXIT_STATUS=0
9
+
10
+ EXIT %EXIT_STATUS%
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "googleauth",
3
+ "language": "ruby",
4
+ "distribution-name": "googleauth"
5
+ }
data/.rubocop.yml CHANGED
@@ -3,9 +3,15 @@ inherit_gem:
3
3
 
4
4
  AllCops:
5
5
  Exclude:
6
- - "spec/**/*"
7
6
  - "Rakefile"
7
+ - "integration/**/*"
8
+ - "rakelib/**/*"
9
+ - "spec/**/*"
10
+ - "test/**/*"
8
11
  Metrics/ClassLength:
9
- Max: 110
12
+ Max: 200
10
13
  Metrics/ModuleLength:
11
14
  Max: 110
15
+ Metrics/BlockLength:
16
+ Exclude:
17
+ - "googleauth.gemspec"
data/CHANGELOG.md CHANGED
@@ -1,76 +1,149 @@
1
- ### 0.8.1 / 2019-03-27
1
+ # Release History
2
+
3
+ ## [0.16.0](https://www.github.com/googleapis/google-auth-library-ruby/compare/v0.15.1...v0.16.0) (2021-03-04)
4
+
5
+
6
+ ### Features
7
+
8
+ * Drop support for Ruby 2.4 and add support for Ruby 3.0 ([6644806](https://www.github.com/googleapis/google-auth-library-ruby/commit/6644806ab47cea6d08e1901c2ed808e53a579bc3))
9
+
10
+ ## [0.15.1](https://www.github.com/googleapis/google-auth-library-ruby/compare/v0.15.0...v0.15.1) (2021-02-08)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * Fix crash when using a client credential without any paths or env_vars set ([#296](https://www.github.com/googleapis/google-auth-library-ruby/issues/296)) ([c971c1a](https://www.github.com/googleapis/google-auth-library-ruby/commit/c971c1ad2d7730c0f5b389d533a972be32fbaf49))
16
+
17
+ ## [0.15.0](https://www.github.com/googleapis/google-auth-library-ruby/compare/v0.14.0...v0.15.0) (2021-01-26)
18
+
19
+
20
+ ### Features
21
+
22
+ * Credential parameters inherit from superclasses ([4fa4720](https://www.github.com/googleapis/google-auth-library-ruby/commit/4fa47206dbd62f8bbdd1b9d3721f6baee9fd1d62))
23
+ * Service accounts apply a self-signed JWT if scopes are marked as default ([d22acb8](https://www.github.com/googleapis/google-auth-library-ruby/commit/d22acb8a510e6711b5674545c31a4816e5a9168f))
24
+
25
+
26
+ ### Bug Fixes
27
+
28
+ * Retry fetch_access_token when GCE metadata server returns unexpected errors ([cd9b012](https://www.github.com/googleapis/google-auth-library-ruby/commit/cd9b0126d3419b9953982f71edc9e6ba3f640e3c))
29
+ * Support correct service account and user refresh behavior for custom credential env variables ([d2dffe5](https://www.github.com/googleapis/google-auth-library-ruby/commit/d2dffe592112b45006291ad9a57f56e00fb208c3))
30
+
31
+ ## 0.14.0 / 2020-10-09
32
+
33
+ * Honor GCE_METADATA_HOST environment variable
34
+ * Fix errors in some environments when requesting an access token for multiple scopes
35
+
36
+ ## 0.13.1 / 2020-07-30
37
+
38
+ * Support scopes when using GCE Metadata Server authentication ([@ball-hayden][])
39
+
40
+ ## 0.13.0 / 2020-06-17
41
+
42
+ * Support for validating ID tokens.
43
+ * Fixed header application of ID tokens from service accounts.
44
+
45
+ ## 0.12.0 / 2020-04-08
46
+
47
+ * Support for ID token credentials.
48
+ * Support reading quota_id_project from service account credentials.
49
+
50
+ ## 0.11.0 / 2020-02-24
51
+
52
+ * Support Faraday 1.x.
53
+ * Allow special "postmessage" value for redirect_uri.
54
+
55
+ ## 0.10.0 / 2019-10-09
56
+
57
+ Note: This release now requires Ruby 2.4 or later
58
+
59
+ * Increase metadata timeout to improve reliability in some hosting environments
60
+ * Support an environment variable to suppress Cloud SDK credentials warnings
61
+ * Make the header check case insensitive
62
+ * Set instance variables at initialization to avoid spamming warnings
63
+ * Pass "Metadata-Flavor" header to metadata server when checking for GCE
64
+
65
+ ## 0.9.0 / 2019-08-05
66
+
67
+ * Restore compatibility with Ruby 2.0. This is the last release that will work on end-of-lifed versions of Ruby. The 0.10 release will require Ruby 2.4 or later.
68
+ * Update Credentials to use methods for values that are intended to be changed by users, replacing constants.
69
+ * Add retry on error for fetch_access_token
70
+ * Allow specifying custom state key-values
71
+ * Add verbosity none to gcloud command
72
+ * Make arity of WebUserAuthorizer#get_credentials compatible with the base class
73
+
74
+ ## 0.8.1 / 2019-03-27
2
75
 
3
76
  * Silence unnecessary gcloud warning
4
77
  * Treat empty credentials environment variables as unset
5
78
 
6
- ### 0.8.0 / 2019-01-02
79
+ ## 0.8.0 / 2019-01-02
7
80
 
8
81
  * Support connection options :default_connection and :connection_builder when creating credentials that need to refresh OAuth tokens. This lets clients provide connection objects with custom settings, such as proxies, needed for the client environment.
9
82
  * Removed an unnecessary warning about project IDs.
10
83
 
11
- ### 0.7.1 / 2018-10-25
84
+ ## 0.7.1 / 2018-10-25
12
85
 
13
86
  * Make load_gcloud_project_id module function.
14
87
 
15
- ### 0.7.0 / 2018-10-24
88
+ ## 0.7.0 / 2018-10-24
16
89
 
17
90
  * Add project_id instance variable to UserRefreshCredentials, ServiceAccountCredentials, and Credentials.
18
91
 
19
- ### 0.6.7 / 2018-10-16
92
+ ## 0.6.7 / 2018-10-16
20
93
 
21
94
  * Update memoist dependency to ~> 0.16.
22
95
 
23
- ### 0.6.6 / 2018-08-22
96
+ ## 0.6.6 / 2018-08-22
24
97
 
25
98
  * Remove ruby version warnings.
26
99
 
27
- ### 0.6.5 / 2018-08-16
100
+ ## 0.6.5 / 2018-08-16
28
101
 
29
102
  * Fix incorrect http verb when revoking credentials.
30
103
  * Warn on EOL ruby versions.
31
104
 
32
- ### 0.6.4 / 2018-08-03
105
+ ## 0.6.4 / 2018-08-03
33
106
 
34
107
  * Resolve issue where DefaultCredentials constant was undefined.
35
108
 
36
- ### 0.6.3 / 2018-08-02
109
+ ## 0.6.3 / 2018-08-02
37
110
 
38
111
  * Resolve issue where token_store was being written to twice
39
112
 
40
- ### 0.6.2 / 2018-08-01
113
+ ## 0.6.2 / 2018-08-01
41
114
 
42
115
  * Add warning when using cloud sdk credentials
43
116
 
44
- ### 0.6.1 / 2017-10-18
117
+ ## 0.6.1 / 2017-10-18
45
118
 
46
119
  * Fix file permissions
47
120
 
48
- ### 0.6.0 / 2017-10-17
121
+ ## 0.6.0 / 2017-10-17
49
122
 
50
123
  * Support ruby-jwt 2.0
51
124
  * Add simple credentials class
52
125
 
53
- ### 0.5.3 / 2017-07-21
126
+ ## 0.5.3 / 2017-07-21
54
127
 
55
128
  * Fix file permissions on the gem's `.rb` files.
56
129
 
57
- ### 0.5.2 / 2017-07-19
130
+ ## 0.5.2 / 2017-07-19
58
131
 
59
132
  * Add retry mechanism when fetching access tokens in `GCECredentials` and `UserRefreshCredentials` classes.
60
133
  * Update Google API OAuth2 token credential URI to v4.
61
134
 
62
- ### 0.5.1 / 2016-01-06
135
+ ## 0.5.1 / 2016-01-06
63
136
 
64
137
  * Change header name emitted by `Client#apply` from "Authorization" to "authorization" ([@murgatroid99][])
65
138
  * Fix ADC not working on some windows machines ([@vsubramani][])
66
139
  [#55](https://github.com/google/google-auth-library-ruby/issues/55)
67
140
 
68
- ### 0.5.0 / 2015-10-12
141
+ ## 0.5.0 / 2015-10-12
69
142
 
70
143
  * Initial support for user credentials ([@sqrrrl][])
71
144
  * Update Signet to 0.7
72
145
 
73
- ### 0.4.2 / 2015-08-05
146
+ ## 0.4.2 / 2015-08-05
74
147
 
75
148
  * Updated UserRefreshCredentials hash to use string keys ([@haabaato][])
76
149
  [#36](https://github.com/google/google-auth-library-ruby/issues/36)
@@ -87,16 +160,16 @@
87
160
  * Enables passing credentials via environment variables. ([@haabaato][])
88
161
  [#27](https://github.com/google/google-auth-library-ruby/issues/27)
89
162
 
90
- ### 0.4.1 / 2015-04-25
163
+ ## 0.4.1 / 2015-04-25
91
164
 
92
165
  * Improves handling of --no-scopes GCE authorization ([@tbetbetbe][])
93
166
  * Refactoring and cleanup ([@joneslee85][])
94
167
 
95
- ### 0.4.0 / 2015-03-25
168
+ ## 0.4.0 / 2015-03-25
96
169
 
97
170
  * Adds an implementation of JWT header auth ([@tbetbetbe][])
98
171
 
99
- ### 0.3.0 / 2015-03-23
172
+ ## 0.3.0 / 2015-03-23
100
173
 
101
174
  * makes the scope parameter's optional in all APIs. ([@tbetbetbe][])
102
175
  * changes the scope parameter's position in various constructors. ([@tbetbetbe][])
@@ -109,3 +182,4 @@
109
182
  [@tbetbetbe]: https://github.com/tbetbetbe
110
183
  [@murgatroid99]: https://github.com/murgatroid99
111
184
  [@vsubramani]: https://github.com/vsubramani
185
+ [@ball-hayden]: https://github.com/ball-hayden